2003-03-15 17:25:24

by Helge Hafting

[permalink] [raw]
Subject: Re: 2.5.64-mm7 - dies on smp with raid

mm7 crashed where mm2 works.
The machine is a dual celeron with two scsi disks with
some raid-1 & raid-0 partitions.

deadline or anicipatory scheduler does not make a difference.
It dies anyway, attempting to kill init.

Here's what I managed to write down before the 30 second reboot
kicked in:

EIP is at md_wakeup_thread

stack:
do_md_run
autorun_array
autorun_devices
autostart_arrays
md_ioctl
dentry_open
kmem_cache_free
blkdev_ioctl
sys_ioctl
init
init

This happened during the boot process. The kernel is compiled
with gcc 2.95.4 from debian testing. The machine uses devfs

Helge Hafting


2003-03-15 20:00:46

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.5.64-mm7 - dies on smp with raid

Helge Hafting <[email protected]> wrote:
>
> mm7 crashed where mm2 works.
> The machine is a dual celeron with two scsi disks with
> some raid-1 & raid-0 partitions.
>
> deadline or anicipatory scheduler does not make a difference.
> It dies anyway, attempting to kill init.
>
> Here's what I managed to write down before the 30 second reboot
> kicked in:
>
> EIP is at md_wakeup_thread
>
> stack:
> do_md_run
> autorun_array
> autorun_devices
> autostart_arrays
> md_ioctl
> dentry_open
> kmem_cache_free
> blkdev_ioctl
> sys_ioctl
> init
> init
>
> This happened during the boot process. The kernel is compiled
> with gcc 2.95.4 from debian testing. The machine uses devfs
>

A lot of md updates went into Linus's tree overnight. Can you get some more
details for Neil?

Here is a wild guess:

diff -puN drivers/md/md.c~a drivers/md/md.c
--- 25/drivers/md/md.c~a 2003-03-15 12:02:04.000000000 -0800
+++ 25-akpm/drivers/md/md.c 2003-03-15 12:02:14.000000000 -0800
@@ -2818,6 +2818,8 @@ int md_thread(void * arg)

void md_wakeup_thread(mdk_thread_t *thread)
{
+ if (!thread)
+ return;
dprintk("md: waking up MD thread %p.\n", thread);
set_bit(THREAD_WAKEUP, &thread->flags);
wake_up(&thread->wqueue);

_