getrusage: add the "signal_struct *sig" local variable
authorOleg Nesterov <oleg@redhat.com>
Sat, 9 Sep 2023 17:25:54 +0000 (19:25 +0200)
committerAndrew Morton <akpm@linux-foundation.org>
Wed, 4 Oct 2023 17:41:57 +0000 (10:41 -0700)
No functional changes, cleanup/preparation.

Link: https://lkml.kernel.org/r/20230909172554.GA20441@redhat.com
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
kernel/sys.c

index 2410e3999ebe5c1f2cc40d0b028f0d78ce00f559..097cbea62a72ef8484aab7e70970c03d8fa4ad4e 100644 (file)
@@ -1786,6 +1786,7 @@ void getrusage(struct task_struct *p, int who, struct rusage *r)
        unsigned long flags;
        u64 tgutime, tgstime, utime, stime;
        unsigned long maxrss = 0;
+       struct signal_struct *sig = p->signal;
 
        memset((char *)r, 0, sizeof (*r));
        utime = stime = 0;
@@ -1793,7 +1794,7 @@ void getrusage(struct task_struct *p, int who, struct rusage *r)
        if (who == RUSAGE_THREAD) {
                task_cputime_adjusted(current, &utime, &stime);
                accumulate_thread_rusage(p, r);
-               maxrss = p->signal->maxrss;
+               maxrss = sig->maxrss;
                goto out;
        }
 
@@ -1803,15 +1804,15 @@ void getrusage(struct task_struct *p, int who, struct rusage *r)
        switch (who) {
        case RUSAGE_BOTH:
        case RUSAGE_CHILDREN:
-               utime = p->signal->cutime;
-               stime = p->signal->cstime;
-               r->ru_nvcsw = p->signal->cnvcsw;
-               r->ru_nivcsw = p->signal->cnivcsw;
-               r->ru_minflt = p->signal->cmin_flt;
-               r->ru_majflt = p->signal->cmaj_flt;
-               r->ru_inblock = p->signal->cinblock;
-               r->ru_oublock = p->signal->coublock;
-               maxrss = p->signal->cmaxrss;
+               utime = sig->cutime;
+               stime = sig->cstime;
+               r->ru_nvcsw = sig->cnvcsw;
+               r->ru_nivcsw = sig->cnivcsw;
+               r->ru_minflt = sig->cmin_flt;
+               r->ru_majflt = sig->cmaj_flt;
+               r->ru_inblock = sig->cinblock;
+               r->ru_oublock = sig->coublock;
+               maxrss = sig->cmaxrss;
 
                if (who == RUSAGE_CHILDREN)
                        break;
@@ -1821,14 +1822,14 @@ void getrusage(struct task_struct *p, int who, struct rusage *r)
                thread_group_cputime_adjusted(p, &tgutime, &tgstime);
                utime += tgutime;
                stime += tgstime;
-               r->ru_nvcsw += p->signal->nvcsw;
-               r->ru_nivcsw += p->signal->nivcsw;
-               r->ru_minflt += p->signal->min_flt;
-               r->ru_majflt += p->signal->maj_flt;
-               r->ru_inblock += p->signal->inblock;
-               r->ru_oublock += p->signal->oublock;
-               if (maxrss < p->signal->maxrss)
-                       maxrss = p->signal->maxrss;
+               r->ru_nvcsw += sig->nvcsw;
+               r->ru_nivcsw += sig->nivcsw;
+               r->ru_minflt += sig->min_flt;
+               r->ru_majflt += sig->maj_flt;
+               r->ru_inblock += sig->inblock;
+               r->ru_oublock += sig->oublock;
+               if (maxrss < sig->maxrss)
+                       maxrss = sig->maxrss;
                t = p;
                do {
                        accumulate_thread_rusage(t, r);