Re: 2.6.9-mm1

From: Randy.Dunlap
Date: Mon Oct 25 2004 - 22:19:41 EST


Bartlomiej Zolnierkiewicz wrote:
On Mon, 25 Oct 2004, Randy.Dunlap wrote:


Andrew Morton wrote:

"Randy.Dunlap" <rddunlap@xxxxxxxx> wrote:


Andrew Morton wrote:


"Randy.Dunlap" <rddunlap@xxxxxxxx> wrote:



I'm trying to spend time on kexec++ this week, but this little BUG
keeps getting in the way. Has it already been reported/fixed?

kernel BUG at arch/i386/mm/highmem.c:42!


oops, we did it again.


Doh.


--- 25/drivers/ide/ide-taskfile.c~ide_pio_sector-kmap-fix Mon Oct 25 15:54:35 2004
+++ 25-akpm/drivers/ide/ide-taskfile.c Mon Oct 25 15:54:48 2004
@@ -304,7 +304,7 @@ static void ide_pio_sector(ide_drive_t *
else
taskfile_input_data(drive, buf, SECTOR_WORDS);

- kunmap_atomic(page, KM_BIO_SRC_IRQ);
+ kunmap_atomic(buf, KM_BIO_SRC_IRQ);
#ifdef CONFIG_HIGHMEM
local_irq_restore(flags);
#endif
_

Yes, that gets further. :(
Maybe I'll just (try) apply the kexec patch to a vanilla kernel.


IDE PIO changes are the part of a vanilla kernel.

If vanilla kernel (+akpm's fix) works OK then
this bug is not mine fault. :)


I doubt if it'll help much. It looks like IDE PIO got badly broken.


Weird, this code was in -mm for over a month.


That's something we have to fix - could you work with Bart on it please?

Sure. Bart?


I need more data, IDE PIO works fine here.


How come your disks are running in PIO mode anyway?


Maybe disks are runing in DMA mode but some application
triggers PIO access (IDENTIFY command, S.M.A.R.T. etc.)...


No idea.

Andrew made me look. Duh. It's because I'm booting with
ide=nodma.

So Bart, can you check the noautodma=1 code path?
And I'll test it again on Tuesday without using ide=nodma.

4 oopsen boot logs are (back-to-back) in:
http://developer.osdl.org/rddunlap/doc/capture-ide.txt
if you need to see them.


Unable to handle kernel paging request at virtual address fffea000
printing eip:
c02c8e4d
*pde = 0064b067
*pte = 00000000
Oops: 0002 [#1]
SMP DEBUG_PAGEALLOC
Modules linked in:
CPU: 0
EIP: 0060:[<c02c8e4d>] Not tainted VLI
EFLAGS: 00010006 (2.6.9-mm1)
EIP is at ide_insw+0xd/0x20
eax: 000001f0 ebx: c05ee7ec ecx: 00000100 edx: 000001f0
esi: c05ee7ec edi: fffea000 ebp: c056fe80 esp: c056fe7c
ds: 007b es: 007b ss: 0068
Process swapper (pid: 0, threadinfo=c056e000 task=c0486b80)
Stack: c05ee740 c056fea0 c02c93b8 000001f0 fffea000 00000100 c05ee7ec
00000080
fffea000 c056fec0 c02ccf06 c05ee7ec fffea000 00000080 00000000
00000000
c05ee740 c056feec c02cd62b c05ee7ec fffea000 00000080 00000000
fffea000
Call Trace:
[<c0107eff>] show_stack+0xaf/0xc0
[<c010808d>] show_registers+0x15d/0x1e0
[<c01082a6>] die+0x106/0x190
[<c011c707>] do_page_fault+0x517/0x6a6
[<c0107b4d>] error_code+0x2d/0x38
[<c02c93b8>] ata_input_data+0x98/0xa0
[<c02ccf06>] taskfile_input_data+0x26/0x50
[<c02cd62b>] ide_pio_sector+0xcb/0xf0
[<c02cd892>] task_in_intr+0xe2/0x100
[<c02c8c16>] ide_intr+0xb6/0x150
[<c0142cd8>] handle_IRQ_event+0x38/0x70
[<c0142df2>] __do_IRQ+0xe2/0x150
[<c0109606>] do_IRQ+0x36/0x60
[<c0107a30>] common_interrupt+0x18/0x20
[<c01050f1>] cpu_idle+0x31/0x50
[<c05709bf>] start_kernel+0x15f/0x180
[<c0100211>] 0xc0100211
Code: e5 8b 55 08 ec 0f b6 c0 5d c3 8d 74 26 00 55 89 e5 8b 55 08 66
ed 0f b7 c
<0>Kernel panic - not syncing: Fatal exception in interrupt
<0>Dumping messages in 0 seconds : last chance for Alt-SysRq...


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