Re: Some clarifications regarding kernel

Andi Kleen (ak@muc.de)
03 Dec 1999 15:12:57 +0100


vinu@rnd.cts-corp.com (Vinuthananda Bindingnavile (CTS)) writes:

> Hi,
>
> I have a few clarifications regarding the kernel code.
>
> 1) What is OOPS and when exactly does it occur?

It occurs when you reference an unmapped address (e.g. NULL)

> 2) When I call skb_copy(skb,GFP_KERNEL) in the kernel, I get the following error:
> allok_skb called nonatomically from <an address is specified here>
> This error is printed but I think the memory allocation is successful. Why does this error come.
> Should I give the priority as GFP_ATOMIC. What exctly is the difference between the them.

Yes you should. GFP_ATOMIC means don't sleep.
GFP_KERNEL can sleep to swap pages out to free memory and can be only
used in process context. Interrupt handlers and most of the networking
input path run in interrupt context and cannot sleep.

-Andi

-- 
This is like TV. I don't like TV.

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