3 errors/suggestions (pre-2.0.x)

Bernhard Heidegger (hdg@edvz.tu-graz.ac.at)
Sat, 1 Jun 1996 13:41:19 +0200 (MET DST)


Hi!

1.) I got many (over 5000 in 3 days) of the following messages with 1.99.10
(also with 1.3.97); the messages are sorted and uniq
kernel: swap_duplicate: trying to duplicate unused page
kernel: swap_free: swap-space map bad (entry 00033200)
kernel: swap_free: swap-space map bad (entry 00034200)
kernel: swap_free: swap-space map bad (entry 00052a00)
kernel: swap_free: swap-space map bad (entry 00057500)
kernel: swap_free: swap-space map bad (entry 00057600)
kernel: swap_free: swap-space map bad (entry 00063600)
kernel: swap_free: swap-space map bad (entry 0007fa00)
kernel: swap_free: swap-space map bad (entry 00080900)
kernel: swap_free: swap-space map bad (entry 00086700)
kernel: swap_free: swap-space map bad (entry 0008f700)
kernel: swap_free: swap-space map bad (entry 0009bf00)
kernel: swap_free: swap-space map bad (entry 0009c200)
kernel: swap_free: swap-space map bad (entry 000a5100)
kernel: swap_free: swap-space map bad (entry 000a5900)
kernel: swap_free: swap-space map bad (entry 000a5a00)
kernel: swap_free: swap-space map bad (entry 000a5c00)
kernel: swap_free: swap-space map bad (entry 0015e800)
kernel: swap_free: swap-space map bad (entry 00396200)
kernel: swap_free: swap-space map bad (entry 00529200)
kernel: swap_free: swap-space map bad (entry 00675b00)

The machine is a type of WWW server (with database); sometimes there
are up to anout 600 processes and a cat /proc/sys/kernel/*-nr gives
2432
5840 4962
(Yes, I changed NR_INODE to 8192, NR_FILE to 4096 and NR_TASKS to 2048)
The problem is, that I cannot reproduce the swap errors; I wrote a little
C program, which obtain much memory (200 MB), write to that memory, read
and free it -> no swap errors :-(
It seems, that one of the server processes didn't work when the swapping
errors begin (this processes does fork()'s for each request; the fork
seems to work, but then the child get a segv)

2.) Is it possible to raise the fd limit per process before 2.0? IMHO 256
fd's per process is too less today.

3.) sys_socket calls get_fd; IMHO, if that fail (because of ENFILE or EMFILE)
the return value should be E[NM]FILE not EINVAL.

Thanks in advance,
Bernhard.

---
+----------------------------+-------------------------------+
|   hdg@edvz.tu-graz.ac.at   |   bheide@iicm.tu-graz.ac.at   |
+----------------------------+-------------------------------+
| Bernhard Heidegger, Graz University of Technology, Austria |
+------------------------------------------------------------+
Worst day playing is better than best day working!