xfs
[Top] [All Lists]

[PATCH 1/2] Add GFP_NOWAIT

To: akpm@xxxxxxxx
Subject: [PATCH 1/2] Add GFP_NOWAIT
From: Jeff Dike <jdike@xxxxxxxxxxx>
Date: Thu, 06 Apr 2006 12:55:22 -0400
Cc: linux-xfs@xxxxxxxxxxx, Daniel Phillips <phillips@xxxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx, user-mode-linux-devel@xxxxxxxxxxxxxxxxxxxxx
Sender: linux-xfs-bounce@xxxxxxxxxxx
Introduce GFP_NOWAIT, as an alias for GFP_ATOMIC & ~__GFP_HIGH.

This also changes XFS, which is the only in-tree user of this idiom that I 
could find.  The XFS piece is compile-tested only.

Signed-off-by: Jeff Dike <jdike@xxxxxxxxxxx>

Index: linux-2.6.16/fs/xfs/linux-2.6/xfs_buf.c
===================================================================
--- linux-2.6.16.orig/fs/xfs/linux-2.6/xfs_buf.c        2006-04-06 
12:16:14.000000000 -0400
+++ linux-2.6.16/fs/xfs/linux-2.6/xfs_buf.c     2006-04-06 12:16:54.000000000 
-0400
@@ -182,7 +182,7 @@ free_address(
 {
        a_list_t        *aentry;
 
-       aentry = kmalloc(sizeof(a_list_t), GFP_ATOMIC & ~__GFP_HIGH);
+       aentry = kmalloc(sizeof(a_list_t), GFP_NOWAIT);
        if (likely(aentry)) {
                spin_lock(&as_lock);
                aentry->next = as_free_head;
Index: linux-2.6.16/include/linux/gfp.h
===================================================================
--- linux-2.6.16.orig/include/linux/gfp.h       2006-03-21 11:50:12.000000000 
-0500
+++ linux-2.6.16/include/linux/gfp.h    2006-04-06 12:15:18.000000000 -0400
@@ -57,6 +57,8 @@ struct vm_area_struct;
                        __GFP_NOFAIL|__GFP_NORETRY|__GFP_NO_GROW|__GFP_COMP| \
                        __GFP_NOMEMALLOC|__GFP_HARDWALL)
 
+/* This equals 0, but use constants in case they ever change */
+#define GFP_NOWAIT     (GFP_ATOMIC & ~__GFP_HIGH)
 /* GFP_ATOMIC means both !wait (__GFP_WAIT not set) and use emergency pool */
 #define GFP_ATOMIC     (__GFP_HIGH)
 #define GFP_NOIO       (__GFP_WAIT)


<Prev in Thread] Current Thread [Next in Thread>