All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH,RFC] Add __GFP_ZERO to GFP_LEVEL_MASK
@ 2006-10-13 20:25 Jonathan Corbet
  2006-10-13 20:46 ` Andrew Morton
  0 siblings, 1 reply; 4+ messages in thread
From: Jonathan Corbet @ 2006-10-13 20:25 UTC (permalink / raw)
  To: linux-kernel; +Cc: akpm

There is a very helpful comment in <linux/gfp.h>:

  /* if you forget to add the bitmask here kernel will crash, period */

Well, my kernel has been crashing (period) at the BUG() in cache_grow();
the offending flag is __GFP_ZERO.  I think it needs to be in
GFP_LEVEL_MASK.  Anybody know a good reason why it's not there now?

jon


Add __GFP_ZERO to GFP_LEVEL_MASK and cut down on those unsightly oopses.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>

--- /k/t/2.6.19-rc2/include/linux/gfp.h	2006-10-13 13:04:17.000000000 -0600
+++ 19-rc2.jc/include/linux/gfp.h	2006-10-13 14:17:10.000000000 -0600
@@ -54,7 +54,8 @@ struct vm_area_struct;
 #define GFP_LEVEL_MASK (__GFP_WAIT|__GFP_HIGH|__GFP_IO|__GFP_FS| \
 			__GFP_COLD|__GFP_NOWARN|__GFP_REPEAT| \
 			__GFP_NOFAIL|__GFP_NORETRY|__GFP_NO_GROW|__GFP_COMP| \
-			__GFP_NOMEMALLOC|__GFP_HARDWALL|__GFP_THISNODE)
+			__GFP_ZERO|__GFP_NOMEMALLOC|__GFP_HARDWALL|\
+			__GFP_THISNODE)
 
 /* This equals 0, but use constants in case they ever change */
 #define GFP_NOWAIT	(GFP_ATOMIC & ~__GFP_HIGH)

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2006-10-13 21:31 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-10-13 20:25 [PATCH,RFC] Add __GFP_ZERO to GFP_LEVEL_MASK Jonathan Corbet
2006-10-13 20:46 ` Andrew Morton
2006-10-13 21:00   ` Jonathan Corbet
2006-10-13 21:31     ` Andrew Morton

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.