problem in 2.2.* vs (working in 2.0.36)

Christian Robert (Christian.Robert@polymtl.ca)
Tue, 27 Apr 1999 23:03:00 -0400


hi,

I will make it short. I have a program in 2.0.36 who work all
the time. My special config that I think is important is that in my
rc.S I invoke "update -f 30" rather than the default (i think 5sec)

My program create 8 thousands directories and 8 thousands files
in a few seconds, (may be 120).

On 2.0.36 kernel, he create about 1300, then he goes to sleep while the
"/sbin/update" update the write-thru cache to disk, and then resume
working as he supposed to do, and complete the job, a step at a time.

On 2.2.* (*=any), when he goes first to sleep (ps show STAT 'D'), update
does the work, but after that, the cpu goes to 0% and my program never
resume the work.

In that state (ps show STAT 'D') he cannot even be killed -TERM nor kill -9
Only reboot can get rid of that process.

I removed the "-f 30" on /sbin/update, and now the program work ok
but obviously there may be a bug somewhere.

The important thing should be: When "update" is invoked by his
own timeout, everything is fine. When "update" is invoked
because of a starving of write cache process, he forgot to resume
the process who where stopped by the starving and waiting on him.

Christian Robert,
Polytechnique of Montreal.

[root@email:/usr/src/linux] # sh scripts/ver_linux
-- Versions installed: (if some fields are empty or looks
-- unusual then possibly you have very old versions)
Linux email 2.2.6 #2 Tue Apr 27 22:02:55 EDT 1999 i686 unknown
Kernel modules 2.1.121
Gnu C 2.8.1
Binutils 2.8.1.0.23
Linux C Library 5.4.46
Dynamic linker ldd: version 1.9.9
Linux C++ Library 2.8.
Procps 1.2.7
Mount 2.7l
Net-tools 1.50
Kbd 0.94
Sh-utils 1.16
Modules Loaded
[root@email:/usr/src/linux] #

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/