memory allocation in a module serial network driver

memory allocation in a module serial network driver

Post by sebastien perso » Thu, 14 Jun 2001 18:40:07


when I try my module with a ping -f , it immediately freez, so I'd like to
what is the best flag for kmalloc when I send a packet and I have to copy
in a new buffer (gfp_kernel | gfp_atomic ?)

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in

More majordomo info at
Please read the FAQ at


1. Memory allocation for device driver modules....

According to the documentation I can find, kmalloc will not allocate more
than 8 x 4096 contiguous bytes (minus change) of memory. That is, a total
of 128 kB.

Unfortunately, I am working on a device driver for a very fast (around 100
Mbps) device and I need some pretty large buffers in the kernel to get
around possible latency problems and also to cut down on the total number
of interrupts.

Is there any way of dynamically allocating larger chunks of kernel memory
at run time? I need at least something like 1 MB that I can use for DMA;
i.e., it has to be in a contiguous chunk.

It would be nice if it were possible to configure kernels to allow large
amounts of such buffer memory. I have no problem with kernels that take up
a lot of memory since I am willing to dedicate a machine to a single task.
All it has to do is read data from a device and dump it to disk farm. So it
is pure I/O and the OS is really just a convenient buffering mechanism.

Thanks, Torben

2. Printjob problem (unix/novell)

3. Memory allocation and de-allocation

4. rsh problem

5. Memory allocation in modules

6. Looking for somebody with Network drivers experience for ATMs

7. Help with memory allocation in Apache module

8. linker problem

9. PROBLEM: memory allocation error with token ring tms380/abyss modules

10. x86 driver/kernel question: larger phys.contiguous memory allocation?

11. memory allocation by OS memory manager

12. Infinite memory?!? Memory allocation bug with gcc?

13. modprobe / module problem w/ network drivers (but network works)