Messages in this thread | | | From | (Eric W. Biederman) | Date | Fri, 08 Feb 2013 06:25:39 -0800 | Subject | Re: [PATCH] fs/proc/vmcore.c: Put if tests in the top of the while loop to reduce duplication |
| |
Andrew Morton <akpm@linux-foundation.org> writes:
> On Sun, 03 Feb 2013 21:13:36 +0800 > Zhang Yanfei <zhangyanfei.yes@gmail.com> wrote: > >> From: Zhang Yanfei <zhangyanfei@cn.fujitsu.com> >> >> In function read_vmcore, two if tests are duplicate. Change the position >> of them could reduce the duplication. This change does not affect >> the behaviour of the function.
> While we're there, let's squish that assignment-in-a-if pestilence and > use max_t().
min_t please. Or do you mean to change the behavior of the code?
> --- a/fs/proc/vmcore.c~fs-proc-vmcorec-put-if-tests-in-the-top-of-the-while-loop-to-reduce-duplication-fix > +++ a/fs/proc/vmcore.c > @@ -178,8 +178,7 @@ static ssize_t read_vmcore(struct file * > return -EINVAL; > > while (buflen) { > - if ((tsz = (PAGE_SIZE - (start & ~PAGE_MASK))) > buflen) > - tsz = buflen; > + tsz = max_t(size_t, buflen, PAGE_SIZE - (start & ~PAGE_MASK)); > > /* Calculate left bytes in current memory segment. */ > nr_bytes = (curr_m->size - (start - curr_m->paddr)); > _
| |