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

Arjan van de Ven
2003-02-03T15:25:45Z

On Mon, Feb 03, 2003 at 03:35:57PM +0000, Grzegorz Jaskiewicz wrote:
> On Mon, 2003-02-03 at 15:19, Arjan van de Ven wrote:
> > > #include <linux/modversions.h>
> > don't do that. ever.
> why ?

because if you ever need it, modules.h will automatically include
it for you already. And if it doesn't you don't need it and it does more
harm than good.

> > > #ifdef CONFIG_KMOD
> > > #include <linux/kmod.h>
> > > #endif
> >
> > bullshit ifdef's (and the surrounding code has a whole bunch too
> this has been taken from first from edge module, just to put it into example ;)

it's wrong, for the same reason as the modversions include is wrong

> > btw you do know you can't do vmalloc (or vfree) from interrupt context ?
> > And that every vmalloc eats at minimum 8Kb of virtual memory space? Of
> > which you can't count on having more than 64Mb on x86 ?
> I didn't knew that. I have at least as i said 300 of those, if user
> space software is doing something else. In practice i have around 30.
> even if 1000 it gives 1000*8kb=8MB so it is not that bad.

the 64Mb vmalloc limit is a system wide one... and
shared between threads allocating their LDT etc etc.

> Whatver, should i consider timer as interrupt too ?

timers are run in interrupt context yes... so you can't do vmalloc
or vfree there.

Greetings,
Arjan van de Ven

--
But when you distribute the same sections as part of a whole which is a work
based on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the entire whole,
and thus to each and every part regardless of who wrote it. [sect.2 GPL]