Re: Linux 2.6.25-rc4

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Anders Eriksson <aeriksson@...>
Cc: Bartlomiej Zolnierkiewicz <bzolnier@...>, Rafael J. Wysocki <rjw@...>, Jens Axboe <jens.axboe@...>, Ingo Molnar <mingo@...>, Linux Kernel Mailing List <linux-kernel@...>
Date: Sunday, March 16, 2008 - 12:56 pm

On Sun, 16 Mar 2008, Anders Eriksson wrote:

Ok, this is interesting. It's clearly a regression, so we need to undo it. 
However, it's not trivial to revert, since lots of things have changed 
around that area since.

In particular, commit 7267c3377443322588cddaf457cf106839a60463 ("ide: 
remove REQ_TYPE_ATA_CMD") ended up removing the whole drive_cmd_intr() 
function, because now all the commands are handled with the
REQ_TYPE_ATA_TASKFILE model instead, which uses a whole another path.

And quite frankly, I think the commit you bisected to really is very 
broken. It starts doing error handling *before* it has handled the DRQ 
bit, and that's bogus, since iirc a lot of controllers need to have their 
DRQ issues satisfied before anything else.

So what probably happens is that yes, you get an error, but the IDE drive 
still wants the code to flush the data it generated, and if we don't do 
that, it will never do anything else ever again. Resulting in a hang.

So Anders, can you try these two silly things:

 - there's a totally untested patch at the end here that tries to make the 
   error handling do that DRQ flush unconditionally. Does it make a 
   difference for you?

 - did you already try if ata_piix fixes it? 

but I do think that the commit you bisected is crap, crap, crap.

Bartlomiej?

		Linus
---
 drivers/ide/ide-io.c |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c
index 7153796..9105c09 100644
--- a/drivers/ide/ide-io.c
+++ b/drivers/ide/ide-io.c
@@ -462,8 +462,7 @@ static ide_startstop_t ide_ata_error(ide_drive_t *drive, struct request *rq, u8
 		}
 	}
 
-	if ((stat & DRQ_STAT) && rq_data_dir(rq) == READ &&
-	    (hwif->host_flags & IDE_HFLAG_ERROR_STOPS_FIFO) == 0)
+	if ((stat & DRQ_STAT) && rq_data_dir(rq) == READ)
 		try_to_flush_leftover_data(drive);
 
 	if (rq->errors >= ERROR_MAX || blk_noretry_request(rq)) {
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Linux 2.6.25-rc4, Linus Torvalds, (Wed Mar 5, 1:03 am)
Re: [patch] drivers/char/esp.c: fix bootup lockup, Jiri Slaby, (Sun Mar 9, 9:41 am)
Re: [patch] drivers/char/esp.c: fix bootup lockup, Rafael J. Wysocki, (Sun Mar 9, 6:49 pm)
Re: [patch] drivers/char/esp.c: fix bootup lockup, Jiri Slaby, (Sun Mar 9, 7:04 pm)
Re: Linux 2.6.25-rc4, Ingo Molnar, (Thu Mar 6, 5:00 am)
Re: Linux 2.6.25-rc4, Jens Axboe, (Thu Mar 6, 8:59 am)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Thu Mar 6, 9:38 am)
Re: Linux 2.6.25-rc4, Ingo Molnar, (Thu Mar 6, 9:33 am)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Thu Mar 6, 10:06 am)
Re: Linux 2.6.25-rc4, Jens Axboe, (Thu Mar 6, 9:55 am)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Thu Mar 6, 5:17 pm)
Re: Linux 2.6.25-rc4, Jens Axboe, (Fri Mar 7, 4:48 am)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Fri Mar 7, 6:04 pm)
Re: Linux 2.6.25-rc4 , Linus Torvalds, (Sat Mar 8, 4:22 pm)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Sat Mar 8, 5:05 pm)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Mon Mar 10, 4:55 am)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Mon Mar 10, 8:36 am)
Re: Linux 2.6.25-rc4, Rafael J. Wysocki, (Mon Mar 10, 9:10 am)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Mon Mar 10, 10:04 am)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Sun Mar 16, 10:01 am)
Re: Linux 2.6.25-rc4 , Linus Torvalds, (Sun Mar 16, 12:56 pm)
Re: Linux 2.6.25-rc4 , Linus Torvalds, (Sun Mar 16, 1:13 pm)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Sun Mar 16, 2:18 pm)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Sun Mar 16, 2:07 pm)
Re: Linux 2.6.25-rc4, Linus Torvalds, (Sun Mar 16, 2:13 pm)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Sun Mar 16, 3:54 pm)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Sun Mar 16, 6:59 pm)
Re: Linux 2.6.25-rc4 , Linus Torvalds, (Sun Mar 16, 7:27 pm)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Mon Mar 17, 5:09 pm)
Re: Linux 2.6.25-rc4 , Linus Torvalds, (Mon Mar 17, 6:52 pm)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Mon Mar 17, 8:18 pm)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Tue Mar 18, 9:03 am)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Tue Mar 18, 9:32 am)
Re: Linux 2.6.25-rc4 , Linus Torvalds, (Tue Mar 18, 11:41 am)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Tue Mar 18, 9:21 pm)
Re: Linux 2.6.25-rc4, Linus Torvalds, (Tue Mar 18, 9:28 pm)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Tue Mar 18, 11:24 pm)
Re: Linux 2.6.25-rc4, Linus Torvalds, (Tue Mar 18, 11:28 pm)
Re: Linux 2.6.25-rc4, Linus Torvalds, (Tue Mar 18, 11:56 pm)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Wed Mar 19, 12:03 am)
Re: Linux 2.6.25-rc4, Linus Torvalds, (Wed Mar 19, 12:48 am)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Wed Mar 19, 7:14 am)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Tue Mar 18, 12:30 pm)
Re: Linux 2.6.25-rc4 , Linus Torvalds, (Tue Mar 18, 12:47 pm)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Tue Mar 18, 5:02 pm)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Tue Mar 18, 10:48 am)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Tue Mar 18, 11:10 am)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Sun Mar 16, 2:36 pm)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Sun Mar 16, 3:08 pm)
Re: Linux 2.6.25-rc4, Alan Cox, (Sun Mar 16, 2:56 pm)
Re: Linux 2.6.25-rc4, Linus Torvalds, (Sun Mar 16, 3:39 pm)
Re: Linux 2.6.25-rc4, Alan Cox, (Sun Mar 16, 4:31 pm)
Re: Linux 2.6.25-rc4, Mark Lord, (Fri Mar 21, 11:03 am)
Re: Linux 2.6.25-rc4, Alan Cox, (Fri Mar 21, 10:49 am)
Re: Linux 2.6.25-rc4, Linus Torvalds, (Sun Mar 16, 5:06 pm)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Sun Mar 16, 2:26 pm)
Re: Linux 2.6.25-rc4, Jens Axboe, (Mon Mar 17, 3:23 am)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Sun Mar 16, 2:25 pm)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Sun Mar 16, 2:23 pm)
Re: Linux 2.6.25-rc4, Alan Cox, (Sun Mar 16, 2:44 pm)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Sun Mar 16, 10:29 am)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Sun Mar 16, 10:29 am)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Sun Mar 16, 11:14 am)
Re: Linux 2.6.25-rc4 , Anders Eriksson, (Mon Mar 10, 9:19 am)
Re: Linux 2.6.25-rc4, Bartlomiej Zolnierkiewicz..., (Mon Mar 10, 9:56 am)
Re: Linux 2.6.25-rc4, Ingo Molnar, (Thu Mar 6, 9:06 am)
Re: Linux 2.6.25-rc4, Ingo Molnar, (Fri Mar 7, 4:53 am)
Re: Linux 2.6.25-rc4, Pavel Machek, (Sat Mar 8, 7:36 pm)
Re: Linux 2.6.25-rc4, Andi Kleen, (Sun Mar 9, 8:55 am)
Re: Linux 2.6.25-rc4, Pavel Machek, (Mon Mar 10, 6:10 am)
Re: Linux 2.6.25-rc4, Andi Kleen, (Mon Mar 10, 7:52 am)
Re: Linux 2.6.25-rc4, Ingo Molnar, (Sun Mar 9, 7:59 am)
Re: Linux 2.6.25-rc4, Jens Axboe, (Fri Mar 7, 4:57 am)
Re: Linux 2.6.25-rc4, , (Fri Mar 7, 11:20 am)
Re: Linux 2.6.25-rc4, Ingo Molnar, (Fri Mar 7, 5:02 am)
Re: Linux 2.6.25-rc4, Paul Mackerras, (Fri Mar 7, 5:59 am)
Re: Linux 2.6.25-rc4, Jens Axboe, (Thu Mar 6, 9:12 am)
Re: Linux 2.6.25-rc4, FUJITA Tomonori, (Wed Mar 5, 4:09 am)
Re: Linux 2.6.25-rc4, Grant Grundler, (Wed Mar 5, 12:46 pm)