Pull s390 updates from Alexander Gordeev: - Remove unnecessary assignment of the performance event last_tag. - Create missing /sys/firmware/ipl/* attributes when kernel is booted in dump mode using List-directed ECKD IPL. - Remove odd comment. - Fix s390-specific part of scripts/checkstack.pl script that only matches three-digit numbers starting with 3 or any higher number and skips any stack sizes smaller than 304 bytes. * tag 's390-6.7-3' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: scripts/checkstack.pl: match all stack sizes for s390 s390: remove odd comment s390/ipl: add missing IPL_TYPE_ECKD_DUMP case to ipl_init() s390/pai: cleanup event initialization
Unified · Split
| @@ -228,7 +228,6 @@ typedef struct thread_struct thread_struct; · 227 unmodified lines | ||
| 228 | 228 | execve_tail(); \ |
| 229 | 229 | } while (0) |
| 230 | 230 | |
| 231 | −/* Forward declaration, a strange C thing */ | |
| 232 | 231 | struct task_struct; |
| 233 | 232 | struct mm_struct; |
| 234 | 233 | struct seq_file; |
| @@ -666,6 +666,7 @@ static int __init ipl_init(void) · 665 unmodified lines | ||
| 666 | 666 | &ipl_ccw_attr_group_lpar); |
| 667 | 667 | break; |
| 668 | 668 | case IPL_TYPE_ECKD: |
| 669 | + case IPL_TYPE_ECKD_DUMP: | |
| 669 | 670 | rc = sysfs_create_group(&ipl_kset->kobj, &ipl_eckd_attr_group); |
| 670 | 671 | break; |
| 671 | 672 | case IPL_TYPE_FCP: |
| @@ -279,12 +279,6 @@ static int paicrypt_event_init(struct perf_event *event) · 278 unmodified lines | ||
| 279 | 279 | if (IS_ERR(cpump)) |
| 280 | 280 | return PTR_ERR(cpump); |
| 281 | 281 | |
| 282 | − /* Event initialization sets last_tag to 0. When later on the events | |
| 283 | − * are deleted and re-added, do not reset the event count value to zero. | |
| 284 | − * Events are added, deleted and re-added when 2 or more events | |
| 285 | − * are active at the same time. | |
| 286 | − */ | |
| 287 | − event->hw.last_tag = 0; | |
| 288 | 282 | event->destroy = paicrypt_event_destroy; |
| 289 | 283 | |
| 290 | 284 | if (a->sample_period) { |
| @@ -318,6 +312,11 @@ static void paicrypt_start(struct perf_event *event, int flags) · 27 unmodified lines | ||
| 318 | 312 | { |
| 319 | 313 | u64 sum; |
| 320 | 314 | |
| 315 | + /* Event initialization sets last_tag to 0. When later on the events | |
| 316 | + * are deleted and re-added, do not reset the event count value to zero. | |
| 317 | + * Events are added, deleted and re-added when 2 or more events | |
| 318 | + * are active at the same time. | |
| 319 | + */ | |
| 321 | 320 | if (!event->hw.last_tag) { |
| 322 | 321 | event->hw.last_tag = 1; |
| 323 | 322 | sum = paicrypt_getall(event); /* Get current value */ |
| @@ -260,7 +260,6 @@ static int paiext_event_init(struct perf_event *event) · 259 unmodified lines | ||
| 260 | 260 | rc = paiext_alloc(a, event); |
| 261 | 261 | if (rc) |
| 262 | 262 | return rc; |
| 263 | − event->hw.last_tag = 0; | |
| 264 | 263 | event->destroy = paiext_event_destroy; |
| 265 | 264 | |
| 266 | 265 | if (a->sample_period) { |
| @@ -97,8 +97,7 @@ my (@stack, $re, $dre, $sub, $x, $xs, $funcre, $min_stack); · 96 unmodified lines | ||
| 97 | 97 | # 11160: a7 fb ff 60 aghi %r15,-160 |
| 98 | 98 | # or |
| 99 | 99 | # 100092: e3 f0 ff c8 ff 71 lay %r15,-56(%r15) |
| 100 | − $re = qr/.*(?:lay|ag?hi).*\%r15,-(([0-9]{2}|[3-9])[0-9]{2}) | |
| 101 | − (?:\(\%r15\))?$/ox; | |
| 100 | + $re = qr/.*(?:lay|ag?hi).*\%r15,-([0-9]+)(?:\(\%r15\))?$/o; | |
| 102 | 101 | } elsif ($arch eq 'sparc' || $arch eq 'sparc64') { |
| 103 | 102 | # f0019d10: 9d e3 bf 90 save %sp, -112, %sp |
| 104 | 103 | $re = qr/.*save.*%sp, -(([0-9]{2}|[3-9])[0-9]{2}), %sp/o; |