Hi Zbigniew, On Thu, May 10, 2007 at 12:05:44AM +0200, Zbigniew Baniewski wrote: > So, I changed the config (below) and made another compilation - still the > same: > ------------------------ > ...ordinary boot messages, ending with "hda:... sectors... w/Cache..." > hda: attached ide-disk driver > hda:<1>Unable to handle kernel paging request at virtual address ffffff00 > printing eip: > > ...a lot of interesting stuff... > > <0>Kernel panic: Attempted to kill the idle task! > In idle task - not syncing. > ----------------------- > > I'm afraid, kernel 2.4.34.4 is just broken.
Well, in fact it's not just that easy. I've tried your image and could reproduce the same panic here. However, it is not the same problem at all, because it appears unrelated to IDE, and it crashes about 1 second after init has been forked. I noticed this because I had a hard time trying to get access to a shell, then I finally decided to put sash on the FS and rebuild it. I booted with init=sash and got the sash prompt, then the panic one second after it, while no module could be loaded. I decoded the panic dump : VFS: Mounted root (cramfs filesystem) readonly. Freeing unused kernel memory: 116k freed Unable to handle kernel paging request at virtual address ffffff00 printing eip: c0113a80 Oops: 0002 CPU: 0 EIP: 0010:[<c0113a80>] Not tainted Using defaults from ksymoops -t elf32-i386 -a i386 EFLAGS: 00010286 eax: ffffff00 ebx: 00000001 ecx: ffffffff edx: c0300000 esi: 00049800 edi: c0270800 ebp: 0003e000 esp: c0301fc4 ds: 0018 es: 0018 ss: 0018 Process swapper (pid: 0, stackpage=c0301000) Stack: c012016c 00000001 00049800 c0270800 c011e2a0 c0108166 c0270f60 00007dfd 00007dfd 00007dfd 00007dfd c0303340 c011e1ba 00000000 00000000 Call Trace: [<c012016c>] [<c011e2a0>] [<c0108166>] [<c011e1ba>] Code: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >>EIP; c0113a80 <init_idle+0/94> <===== Trace; c012016c <cpu_idle+8/54> Trace; c011e2a0 <rest_init+50/54> Trace; c0108166 <start_kernel+172/178> Trace; c011e1ba <L6+0/2> Code; c0113a80 <init_idle+0/94> 00000000 <_EIP>: <0>Kernel panic: Attempted to kill the idle task! It crashes in init_idle(), itself called by cpu_idle(). I retried with plain 2.4.34, and this one works perfectly. Then I dowloaded grsec as I've noticed your kernel is called -grsec. I applied the patch to plain 2.4.34, and kaboom ! The same panic as above. Unfortunately, grsec does not seem to modify the functions above, so it's trickier than it looks. The fact that it is inside an initrd makes it amazingly difficult to debug. It took me 3 hours this morning to succesfully get a shell with no modules loaded. Then I tried to hard-link the IDEDISK module, and it works even with grsec. So right now, all I can say is : - 2.4.34 + IDEDISK=y works - 2.4.34 + IDEDISK=m works - 2.4.34 + grsec + IDEDISK=y works - 2.4.34 + grsec + IDEDISK=m breaks I do not have enough knowledge of the IDE DISK driver nor of grsec to guess what goes wrong. If other people on the list could enlighten me, I would appreciate it. In the mean time, I suggest that you avoid grsec+IDEDISK=m. So maybe using IDEDISK=y would be acceptable, even if we agree that we're hiding the bug instead of fixing it ? Regards, Willy - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/