Re: Linux 2.6.25-rc4

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Linus Torvalds
Date: Tuesday, March 18, 2008 - 8:28 pm

On Wed, 19 Mar 2008, Bartlomiej Zolnierkiewicz wrote:

Oh, trust me, I understand your fix.

But the point is that your fix

 - doesn't fix any other commands (and there are tons of other commands 
   people may be using)

 - and is totally pointless and isn't *needed* if we just fix this 
   properly (ie we've never cared before, so why should we start caring 
   now?).

See?

Fixing this properly is exactly what my patch did - it made the whole core 
engine not really even care. Just like it used to.


You're totally not listening or understanding.

I'm not calling taskfile crap as a concept.

I'm calling fragile code that fails unnecessarily crap.

See the difference?

The old "drive_cmd_intr()" code (that you deleted) was fundamentally more 
robust than the taskfile code you replaced it with. 

And that's not just an opinion. It's a *fact*. It's why this bug showed up 
in the first place. Code that used to work because it didn't even care all 
that deeply about every single detail being set up just the way it wanted 
got replaced by code that was fragile.

Do you see the difference?

If we have a choice between robust code that just "does the right thing" 
even in the face of problems, and code that "stops working when you look 
at it wrong", which one should we choose? Which one is the better code? 
Which one is crap, and which one isn't?

The fact is, the old "drive_cmd_intr()" code was simply more robust.

So this is why I feel so strongly about this. Robust code is just about 
the most important thing we can have in the kernel. Bugs will always 
happen, but when they happen, we shouldn't just fall over dead. And that's 
exactly what code robustness is all about.

So we should make the DRQ/ERR status bit handling robust in the face of 
hardware and software that does odd things. Because we definitely have 
seen cases of both. Sometimes it is hw that doesn't work the way the spec 
requires, sometimes it's software that doesn't follow the spec 100%. It 
doesn't matter.

And once the status bit handling is robust (like it _used_ to be!), only 
*then* should we even ask ourself if we even care about having some random 
tfargs.data_phase value for specific SMART command sub-cases.

My personal opinion is obviously that we simply shouldn't even care (since 
we should now know that the driver doesn't care one way or the other), but 
if you want to apply your patch despite it having absolutely no meaning, 
that's your choice.

But the absolute first thing we should do is to make the code at least as 
robust as it used to be, and preferably aim _higher_ in robustness rather 
than lower!

		Linus
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

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