Re: [BUG] vmalloc, kmalloc - 2.4.x

Oliver Neukum
2003-02-03T15:17:27Z

Am Montag, 3. Februar 2003 16:13 schrieb Grzegorz Jaskiewicz:
> few days ago i started to port driver for our hardware in company from
> windows to linux. It is simple ISA card, which gives me interrupt each
> 8ms. So i can check it state and latch some sort of watchdog on it -
> saying that i am still running (just for security, if system hangs card
> is blocking all inputs/outputs).
>
> But anyway, i was collecting all data from the card in dynamically
> allocated memory. This gives me at least 300 * 20 bytes allocated. i
> have sigle small allocation running on each interrupt.
>
> Driver is working fine under win2k even if i collect as much as 10000
> allocations, afterwards system uses loads of processor.

It seems that you are using vmalloc in an interrupt handler.
That you must not do. To allocate memory in an interrupt handler
you have to use kmalloc() with GFP_ATOMIC as a second argument.

HTH
Oliver