Re: any way to find out kernel memory usage?

Richard B. Johnson
2005-04-27T18:32:32Z

On Wed, 27 Apr 2005, Coywolf Qi Hunt wrote:

> On 4/28/05, Chris Friesen <cfriesen@nortel.com> wrote:
>>
>> We recently had an issue with a kernel module leaking memory on unload,
>> and a userspace app that unloaded it way too many times.
>>
>> This ended up using up a bunch of memory, which triggered the oom-killer
>> to run, which went wild killing everything in sight since userspace
>> wasn't actually the culprt.
>>
>> One idea we had to prevent this in the future is to configure the OOM
>> killer to reset the system if the kernel uses more than a certain amount
>> of memory. (Reset is better than hang for our purposes.) Is there any
>
> Curiously, how to reset? Reboot? (Teach oom killer to kill) or restart
> the related
> kernel thread?
>

In user-mode code... `man 2 reboot` tells all.
Quickest way in kernel mode on ix86 is a processor reset.

>
>> way to find out how much memory the kernel is using? I don't see
>> anything in /proc, but maybe something internal that isn't currently
>> exported?
>>
>> Chris
>

In the kernel nr_free_pages() <swap.h> gives you a hint of what's left,
num_physpages() tells you what RAM you started with.

Cheers,
Dick Johnson
Penguin : Linux version 2.6.11 on an i686 machine (5537.79 BogoMips).
Notice : All mail here is now cached for review by Dictator Bush.
98.36% of all statistics are fiction.