radix tree test suite: allow GFP_ATOMIC allocations to fail
In order to test the preload code, it is necessary to fail GFP_ATOMIC allocations, which requires defining GFP_KERNEL and GFP_ATOMIC properly. Remove the obsolete __GFP_WAIT and copy the definitions of the __GFP flags which are used from the kernel include files. We also need the real definition of gfpflags_allow_blocking() to persuade the radix tree to actually use its preallocated nodes. Link: http://lkml.kernel.org/r/1480369871-5271-38-git-send-email-mawilcox@linuxonhyperv.com Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Tested-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> Cc: Konstantin Khlebnikov <koct9i@gmail.com> Cc: Ross Zwisler <ross.zwisler@linux.intel.com> Cc: Matthew Wilcox <mawilcox@microsoft.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:

committed by
Linus Torvalds

parent
ebb9a9aedb
commit
31023cd664
@@ -33,7 +33,12 @@ mempool_t *mempool_create(int min_nr, mempool_alloc_t *alloc_fn,
|
||||
|
||||
void *kmem_cache_alloc(struct kmem_cache *cachep, int flags)
|
||||
{
|
||||
void *ret = malloc(cachep->size);
|
||||
void *ret;
|
||||
|
||||
if (flags & __GFP_NOWARN)
|
||||
return NULL;
|
||||
|
||||
ret = malloc(cachep->size);
|
||||
if (cachep->ctor)
|
||||
cachep->ctor(ret);
|
||||
uatomic_inc(&nr_allocated);
|
||||
|
Reference in New Issue
Block a user