Thread (46 messages) 46 messages, 6 authors, 2019-06-25

Re: [PATCH 11/16] mm: consolidate the get_user_pages* implementations

flat view

From: Jason Gunthorpe <jgg@ziepe.ca>
Date: 2019-06-25 11:56:18
Also in: linux-mips, linux-mm, linux-sh, lkml, sparclinux

On Tue, Jun 25, 2019 at 09:56:50AM +0200, Christoph Hellwig wrote:
On Fri, Jun 21, 2019 at 11:41:31AM -0300, Jason Gunthorpe wrote:
quoted
quoted
 static bool gup_fast_permitted(unsigned long start, unsigned long end)
 {
-	return true;
+	return IS_ENABLED(CONFIG_HAVE_FAST_GUP) ? true : false;
The ?: is needed with IS_ENABLED?
It shouldn't, I'll fix it up.
quoted
I'd suggest to revise this block a tiny bit:

-#ifndef gup_fast_permitted
+#if !IS_ENABLED(CONFIG_HAVE_FAST_GUP) || !defined(gup_fast_permitted)
 /*
  * Check if it's allowed to use __get_user_pages_fast() for the range, or
  * we need to fall back to the slow version:
  */
-bool gup_fast_permitted(unsigned long start, int nr_pages)
+static bool gup_fast_permitted(unsigned long start, int nr_pages)
 {

Just in case some future arch code mismatches the header and kconfig..
IS_ENABLED outside a function doesn't really make sense.  But I'll
just life the IS_ENABLED(CONFIG_HAVE_FAST_GUP) checks into the two
callers.
I often see '#if IS_ENABLED(CONFIG_X)', IIRC last I looked at that, it
was needed because the usual #ifdef CONFIG_X didn't work if the value
was =m?

Would be interested to know if that is not the right way to use
kconfig

Jason
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help