This creates a mythical gfp_t for passing gfp states, and conversion macros __GFP() and __UNGFP(), to give warnings, It's 55k, so compressed and attached. [Jens, bio_alloc() has the args reversed from normal (Grrr!)] It's worse than I'd hoped, better than I feared. I didn't find any bugs (but then I didn't try compiling with "allyesconfig"). Notes: o People use GFP_KERNEL instead of SLAB_KERNEL for kmem_cache_alloc, so I changed the slab types too. o If we really want to do this, maybe introduce gfp_t as a typedef to int, and use it in all the interfaces first, then change the definition later. BTW, I'm leaving in a couple of hours, so I'm leaving this here for someone else to get enthusiastic about 8) Cheers, Rusty. -- Anyone who quotes me in their sig is an idiot. -- Rusty Russell.