Re: 2.6.9-mm1

From: Bartlomiej Zolnierkiewicz
Date: Tue Oct 26 2004 - 11:42:26 EST


On Tue, 26 Oct 2004 08:48:17 -0700, Randy.Dunlap <rddunlap@xxxxxxxx> wrote:
>
> >>>>> 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.
>
> Booting 2.6.9-mm1 without using "ide=nodma" works well for me.
> No other kernel changes.

I audited the code and only found the unrelated bug in
/proc/ide/hd?/smart_thresholds, fix below...

--- ide-disk.c.orig 2004-10-26 15:50:51.000000000 +0200
+++ ide-disk.c 2004-10-26 18:34:50.736448416 +0200
@@ -977,6 +977,7 @@
args.tfRegister[IDE_HCYL_OFFSET] = SMART_HCYL_PASS;
args.tfRegister[IDE_COMMAND_OFFSET] = WIN_SMART;
args.command_type = IDE_DRIVE_TASK_IN;
+ args.data_phase = TASKFILE_IN;
args.handler = &task_in_intr;
(void) smart_enable(drive);
return ide_raw_taskfile(drive, &args, buf);

I tried reproducing the OOPS but I couldn't. Little bird tells me that
this bug is SMP and/or highmem specific (I don't have such hardware).

Randy, could you "ide=nodma" with 2.6.10-rc1 (+akpm's fix) and 2.6.9?

Cheers,
Bartlomiej
-
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/