Re: [patch] 2.2.9_andrea-VM1.gz

Peter Steiner (p.steiner@t-online.de)
Tue, 8 Jun 1999 14:38:58 +0200


I've got a really strange problem with the patch.

While the system is stable and responsive under load a really idle
system leads to processes hanging on e.g. (strace output):

open("/var/log/nw.routes", O_WRONLY|O_CREAT|O_TRUNC, 0666

(note: the ") = 10" is missing).

The load goes to 1 and cpu usage is 100%. SysRq-P shows:

...: EIP: 0010:[schedule+421/640] EFLAGS: 00000206
...: EAX: 00000027 EBX: c3ca4000 ECX: c38d0000 EDX: 00000000
...: ESI: c01e2000 EDI: 00000000 EBP: c3ca5f10 DS: 0018 ES: 0018
...: CR0: 8005003b CR2: 4000d000 CR3: 01900000

Note that the address is schedule+421 almost all the time. Sometimes
it's schedule+406 or schedule+412.

This resolves to the following sourcecode:

./kernel/sched.c:

static inline int goodness (struct task_struct * prev,
[...]
if (p->policy != SCHED_OTHER) { <---- schedule+421
weight = 1000 + p->rt_priority;
goto out;

The process stays hung until another process tries to access the disk.
Accessing the cache / buffers isn't sufficient.

Peter

-- 
   _   x    ___
  / \_/_\_ /,--'  p.steiner@t-online.de (Peter Steiner)
  \/>'~~~~//
    \_____/   signature V0.2 alpha

- 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/