[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190904120159.d4026b573f419838d77e991d@linux-foundation.org>
Date: Wed, 4 Sep 2019 12:01:59 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Vlastimil Babka <vbabka@...e.cz>
Cc: zhong jiang <zhongjiang@...wei.com>, mhocko@...nel.org,
anshuman.khandual@....com, linux-mm@...ck.org,
linux-kernel@...r.kernel.org, Ira Weiny <ira.weiny@...el.com>,
"Aneesh Kumar K.V" <aneesh.kumar@...ux.vnet.ibm.com>
Subject: Re: [PATCH] mm: Unsigned 'nr_pages' always larger than zero
On Wed, 4 Sep 2019 13:24:58 +0200 Vlastimil Babka <vbabka@...e.cz> wrote:
> On 9/4/19 12:26 PM, zhong jiang wrote:
> > With the help of unsigned_lesser_than_zero.cocci. Unsigned 'nr_pages"'
> > compare with zero. And __get_user_pages_locked will return an long value.
> > Hence, Convert the long to compare with zero is feasible.
>
> It would be nicer if the parameter nr_pages was long again instead of unsigned
> long (note there are two variants of the function, so both should be changed).
>
> > Signed-off-by: zhong jiang <zhongjiang@...wei.com>
>
> Fixes: 932f4a630a69 ("mm/gup: replace get_user_pages_longterm() with FOLL_LONGTERM")
>
> (which changed long to unsigned long)
>
> AFAICS... stable shouldn't be needed as the only "risk" is that we goto
> check_again even when we fail, which should be harmless.
>
Really? If nr_pages gets a value of -EFAULT from the
__get_user_pages_locked() call, check_and_migrate_cma_pages() will go
berzerk?
And does __get_user_pages_locked() correctly handle a -ve errno
returned by __get_user_pages()? It's hard to see how...
Powered by blists - more mailing lists