On Thu, Dec 8, 2011 at 1:41 AM, Greg KH <greg@kroah.com> wrote:
On Thu, Dec 08, 2011 at 01:26:42AM +0530, mindentropy wrote:
On Wednesday 07 Dec 2011 11:35:36 AM Greg KH wrote:
On Thu, Dec 08, 2011 at 12:36:43AM +0530, mindentropy wrote:
On Thursday 08 Dec 2011 1:38:19 AM Mulyadi Santosa wrote:
On Wed, Dec 7, 2011 at 01:47, mindentropy <mindentropy@gmail.com> wrote:
Hi,
I am trying to allocate 512MB of RAM in my driver loaded as a module,> > > but the OOM killer starts killing all my processes. This machine has around 24GB RAM and is a 8 core Xeon. The RAM is allocated in page size chunks (i.e. 131072 chunks each of size PAGE_SIZE).
mind to tell us, how do you allocate memory? kmalloc?
Via kmalloc.
Please use the functions written to give you large memory chunks. As you are using a video-for-linux device, why not use the apis that this framework provides you for this type of thing?
Yes V4L would be done next. There are some things being tried out, this being a custom FPGA hence some controls being experimented.
As for the allocating in PAGE_SIZE chunks why am I running out of memory?
The kernel doesn't like allocating such large sizes all at once.
Can't it steal smaller chunks from the larger chunks? Just curious about the reason.
Use vmalloc if you need/want larger chunks, kmalloc is not for that at all.
greg k-h
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Probably if it is some custom hardware, and you can afford to allocate memory at boot time, then reserve it exclusively for your use only. -Rajat