2004-01-10 01:57:06

by Peng Yong

[permalink] [raw]
Subject: system resource limit in kernel 2.6


We upgrade one of our production http server, runing apache 1.3.29, to
kernel 2.6. some time the main process of apache exit and here is the
error log:

[Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
[Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
[Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
[Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
[Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
[Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534


how can i tuning the kernel and remove the system resource limit?

Regards,

Peng Yong


2004-01-10 02:24:14

by Andrew Morton

[permalink] [raw]
Subject: Re: system resource limit in kernel 2.6

Peng Yong <[email protected]> wrote:
>
>
> We upgrade one of our production http server, runing apache 1.3.29, to
> kernel 2.6. some time the main process of apache exit and here is the
> error log:
>
> [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
>
>
> how can i tuning the kernel and remove the system resource limit?
>

Well the question is: why did behaviour change relative to 2.4? The kernel
is saying that uid 65534 has exceeded its RLIMIT_NPROC threshold.

How may processes is user 65534 actually running, and how much memory does
the machine have?

2004-01-10 02:43:04

by Peng Yong

[permalink] [raw]
Subject: Re: system resource limit in kernel 2.6

> Peng Yong <[email protected]> wrote:
> >
> >
> > We upgrade one of our production http server, runing apache 1.3.29, to
> > kernel 2.6. some time the main process of apache exit and here is the
> > error log:
> >
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> >
> >
> > how can i tuning the kernel and remove the system resource limit?
> >
>
> Well the question is: why did behaviour change relative to 2.4? The kernel
> is saying that uid 65534 has exceeded its RLIMIT_NPROC threshold.
>
> How may processes is user 65534 actually running, and how much memory does
> the machine have?

httpd.conf:

MinSpareServers 16
MaxSpareServers 32
StartServers 16
MaxClients 512

the server is a Dell 1750 with 2GB RAM and 2 CPU.


uname:
Linux http://www.xxxx.org 2.6.1 #1 SMP Sat Jan 10 00:46:18 CST 2004 i686
unknown

# cat /proc/sys/kernel/threads-max
32767

# cat /proc/meminfo
MemTotal: 2072760 kB
MemFree: 1134272 kB
Buffers: 41928 kB
Cached: 573540 kB
SwapCached: 0 kB
Active: 498772 kB
Inactive: 268924 kB
HighTotal: 1179584 kB
HighFree: 450432 kB
LowTotal: 893176 kB
LowFree: 683840 kB
SwapTotal: 4000136 kB
SwapFree: 4000136 kB
Dirty: 44 kB
Writeback: 0 kB
Mapped: 246344 kB
Slab: 156568 kB
Committed_AS: 1390140 kB
PageTables: 2848 kB
VmallocTotal: 114680 kB
VmallocUsed: 2604 kB
VmallocChunk: 112040 kB

www:/home/apache/logs# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 15
model : 2
model name : Intel(R) Xeon(TM) CPU 2.80GHz
stepping : 9
cpu MHz : 2787.225
cache size : 512 KB
physical id : 0
siblings : 1
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid
bogomips : 5488.64

processor : 1
vendor_id : GenuineIntel
cpu family : 15
model : 2
model name : Intel(R) Xeon(TM) CPU 2.80GHz
stepping : 9
cpu MHz : 2787.225
cache size : 512 KB
physical id : 6
siblings : 1
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid
bogomips : 5554.17


2004-01-10 11:07:15

by Wichert Akkerman

[permalink] [raw]
Subject: Re: system resource limit in kernel 2.6

Previously Peng Yong wrote:
> httpd.conf:

Apache does not commonly run a process as the nobody user (uid 65534) so
it is most likely another process on your server.

Wichert.

--
Wichert Akkerman <[email protected]> It is simple to make things.
http://www.wiggy.net/ It is hard to make things simple.

2004-01-10 13:13:13

by Peng Yong

[permalink] [raw]
Subject: Re: system resource limit in kernel 2.6

> Previously Peng Yong wrote:
> > httpd.conf:
>
> Apache does not commonly run a process as the nobody user (uid 65534) so
> it is most likely another process on your server.

we compiled the apache from source instead of using binary package from
debian. the apache process was runned as nobody user.

--
Peng Yong Email: [email protected]
Bentium Ltd. URL: http://www.cn99.com

2004-01-20 02:54:09

by Peng Yong

[permalink] [raw]
Subject: Re: system resource limit in kernel 2.6

> Peng Yong <[email protected]> wrote:
> >
> >
> > We upgrade one of our production http server, runing apache 1.3.29, to
> > kernel 2.6. some time the main process of apache exit and here is the
> > error log:
> >
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> > [Sat Jan 10 08:48:44 2004] [alert] (11)Resource temporarily unavailable: setuid: unable to change to uid: 65534
> >
> >
> > how can i tuning the kernel and remove the system resource limit?
> >
>
> Well the question is: why did behaviour change relative to 2.4? The kernel
> is saying that uid 65534 has exceeded its RLIMIT_NPROC threshold.
>
> How may processes is user 65534 actually running, and how much memory does
> the machine have?


we also find a report in the apache user list for the same problem:

http://marc.theaimsgroup.com/?l=apache-httpd-users&m=107330742328001&w=2

now we downgrade the kernel to 2.4.22 with security patch, all works
fine now.