Skip to contentSkip to conversation

VM - is "reserved memory for root" possible (in case of a leak)?

DISCUSSION Tomasz Chmielewski 2 participants 2 messages Jul 7, 2004

lore
Share & tools
lore
#0 lore raw

Hello,

Short nature of a problem:

Recently I was playing with Apache2 as a proxy + mod_clamav as a virus scanner, put some load to it, and in a short time hanged the machine (actually, it was short of memory, and it stopped to respond - in logs I saw VM was killing some other processes, unfortunately not Apache).

As I could reach the machine only remotely, it was no wonder I run into troubles...

Sounds familiar?

Solution?

I was thinking, if there is something like:

"reserved_min_memory_for_root = 10M" "reserved_min_memory_processes = /usr/sbin/sshd, /usr/sbin/pppd, etc.etc"

Which would just give that memory for those processes "once and for all", and thus, saving trouble in case of a memory leak, uncontrolled process, or similar.

I know it would be tricky to implement it, because the question arises, what happens if we have no memory left, and these "reserved_min_memory_processes" begin to grow?

But I think it would be something like a comparison:

ulimit vs this "reserved_min_memory_for_root", and quota vs -m option from mke2fs.

Is there something like it already in the kernel?

It would be similar to mke2fs for the filesystem:

# man mke2fs

-m reserved-blocks-percentage
Specify the percentage of the filesystem blocks reserved
for the
super-user. This value defaults to 5%

Regards,

Tomasz Chmielewski

#1 lore raw
Quoted 38 lines · Tomasz Chmielewski

Hello,

Short nature of a problem:

Recently I was playing with Apache2 as a proxy + mod_clamav as a virus scanner, put some load to it, and in a short time hanged the machine (actually, it was short of memory, and it stopped to respond - in logs I saw VM was killing some other processes, unfortunately not Apache).

As I could reach the machine only remotely, it was no wonder I run into troubles...

Sounds familiar?

Solution?

I was thinking, if there is something like:

"reserved_min_memory_for_root = 10M" "reserved_min_memory_processes = /usr/sbin/sshd, /usr/sbin/pppd, etc.etc"

Which would just give that memory for those processes "once and for all", and thus, saving trouble in case of a memory leak, uncontrolled process, or similar.

I know it would be tricky to implement it, because the question arises, what happens if we have no memory left, and these "reserved_min_memory_processes" begin to grow?

But I think it would be something like a comparison:

ulimit vs this "reserved_min_memory_for_root", and quota vs -m option from mke2fs.

Is there something like it already in the kernel?

Quoted 8 lines

It would be similar to mke2fs for the filesystem:

# man mke2fs

-m reserved-blocks-percentage
Specify the percentage of the filesystem blocks reserved
for the
super-user. This value defaults to 5%

Hi Tomasz,

Maybe you would want to tune /proc/sys/vm/min_free_kbytes or renice +xx apache.Some vmstat 1 report, uname -a could be interesting as well.There's no per profile VM granularity in 2.6.

Regards,
FabF

Quoted 13 lines

Regards,

Tomasz Chmielewski

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/