Re: can you switch between GFP_ATOMIC and GFP_KERNEL?

From: Michael Hines
Date: Fri Dec 31 2004 - 23:24:16 EST



Oh, that's right.

Stupid me =)

Thanks,
/*********************************/
Michael R. Hines
Grad Student, Florida State
Dept. Computer Science
http://www.cs.fsu.edu/~mhines/
Jusqu'a ce que le futur vienne...
/*********************************/


On Fri, 31 Dec 2004, Roland Dreier wrote:

> Michael> My question is, new sk_buffs are always allocated with
> Michael> GFP_KERNEL and can be swapped out. Is it possible to
> Michael> change the allocation status of already-allocated memory
> Michael> to GFP_ATOMIC on the fly? (i.e. both the slab-cache
> Michael> sk_buff header memory as well as the kmalloc'd data
> Michael> area).
>
> This question is ill-posed -- kernel memory can never be swapped out,
> whether it's allocated with GFP_KERNEL or GFP_ATOMIC. The difference
> between GFP_KERNEL and GFP_ATOMIC is whether the actual allocation can
> sleep, that is:
>
> foo = kmalloc(sizeof foo, GFP_ATOMIC); /* will not sleep */
> foo = kmalloc(sizeof foo, GFP_KERNEL); /* can sleep */
>
> However, whichever gfp flags are used to allocate memory, the memory
> is the same once the allocation is done. Neither kmalloc'ed memory
> nor sk_buffs will ever be swapped.
>
> - Roland
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/