From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bartlomiej Zolnierkiewicz Subject: Re: 2.6.2-rc3-mm1 Date: Wed, 4 Feb 2004 01:35:56 +0100 References: <20040202235817.5c3feaf3.akpm@osdl.org> <200402040100.40682.bzolnier@elka.pw.edu.pl> <200402040017.43787.s0348365@sms.ed.ac.uk> In-Reply-To: <200402040017.43787.s0348365@sms.ed.ac.uk> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-2" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200402040135.56602.bzolnier@elka.pw.edu.pl> Sender: owner-linux-mm@kvack.org Return-Path: To: s0348365@sms.ed.ac.uk, linux-kernel@vger.kernel.org Cc: Andrew Morton , linux-mm@kvack.org List-ID: On Wednesday 04 of February 2004 01:17, Alistair John Strachan wrote: > On Wednesday 04 February 2004 00:00, Bartlomiej Zolnierkiewicz wrote: > [snip] > > > > > > UDMA(133) /dev/ide/host0/bus0/target0/lun0: p1 p2 p3 > > > > > hde: max request size: 128KiB > > > > > > > > > > 30 seconds later, I get something like: > > > > > > > > > > hde: lost interrupt > > > > > hde: lost interrupt > > > > > > > > It seems kernel hangs in ide-disk.c, > > > > idedisk_setup()->write_cache()->... > > > > > > > > > The kernel does not recover. Presumably it is a problem specific to > > > > > my PDC IDE controller. > > > > > > > > Do you run with Promise BIOS disabled? If so please try booting > > > > kernel with "hde=autotune hdg=autotune" parameters. If still no-go, > > > > try this patch: > > > > > > Neither suggestion changes the behaviour. I've got the BIOS enabled, > > > but in the past it's made no difference. I still see lost interrupts. > > > > Please try this debugging patch to see it hangs on > > idedisk_setup()->write_cache(). > > > > --- linux/drivers/ide/ide-disk.c 2004-02-04 00:57:49.000000000 +0100 > > +++ linux-2.6.2-rc3-bk3/drivers/ide/ide-disk.c 2004-02-04 > > 00:58:58.571025744 +0100 @@ -1668,8 +1668,10 @@ > > #endif /* CONFIG_IDEDISK_MULTI_MODE */ > > } > > drive->no_io_32bit = id->dword_io ? 1 : 0; > > + printk(KERN_INFO "%s: before write_cache()\n", drive->name); > > if (drive->id->cfs_enable_2 & 0x3000) > > write_cache(drive, (id->cfs_enable_2 & 0x3000)); > > + printk(KERN_INFO "%s: after write_cache()\n", drive->name); > > > > #ifdef CONFIG_BLK_DEV_IDE_TCQ_DEFAULT > > if (drive->using_dma) > > Tried the patch. I see both before and after messages for hda, but when hde > is probed I see neither. Briefly looking at the IDE code, I see the max > request size: printk comes before either of those lines, as as nothing else > is printed after that line (see original bug report), I can only assume the > problem is somewhere before the write_cache(). Oh yes, I am stupid^Wtired. Maybe it is init_idedisk_capacity()?. Can you add some more printks to idedisk_setup() to see where it hangs? > I applied the patch on top of your previous changes, as they seemed > innocuous enough. OK. --bart -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: aart@kvack.org