On 01/19/2017 01:56 AM, Michal Hocko wrote:
On Thu 19-01-17 01:09:35, John Hubbard wrote:
[...]
So that leaves us with maybe this for documentation?

 * Reclaim modifiers - __GFP_NORETRY and __GFP_NOFAIL should not be passed in.
 * Passing in __GFP_REPEAT is supported, and will cause the following behavior:
 * for larger (>64KB) allocations, the first part (kmalloc) will do some
 * retrying, before falling back to vmalloc.

I am worried this is just too vague. It doesn't really help user to
decide whether "do some retrying" is what he really want's or needs.

So I would rather see the following.
"
 * Reclaim modifiers - __GFP_NORETRY and __GFP_NOFAIL are not supported. 
__GFP_REPEAT
 * is supported only for large (>32kB) allocations and it should be used when 
using
 * kmalloc is preferable because vmalloc fallback has visible performance 
drawbacks.
"

I would also add
"
Any use of gfp flags outside of GFP_KERNEL should be consulted with mm people.
"

Does it sound any better?

Yes, that is good. I like that it helps guide the user. Here's some proposed optional grammar tweaks, but even without these, the above is understandable, so either way, I'm happy now:

 * Reclaim modifiers - __GFP_NORETRY and __GFP_NOFAIL are not supported. 
__GFP_REPEAT
 * is supported only for large (>32kB) allocations, and it should be used only 
if
 * kmalloc is preferable to the vmalloc fallback, due to visible performance 
drawbacks.
 *
 * Please consult with mm people before using any gfp flags other than 
GFP_KERNEL.

thanks
john h

--
Michal Hocko
SUSE Labs

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majord...@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"d...@kvack.org";> em...@kvack.org </a>

Reply via email to