Re: 2.5.9 -- OOPS in IDE code (symbolic dump and boot log included)

Linus Torvalds
2002-04-25T21:03:01Z

In article <20020425173439.GM3542@suse.de>, Jens Axboe <axboe@suse.de> wrote:
>On Thu, Apr 25 2002, Jens Axboe wrote:
>> - Make the ata_request the general means of passing down request in the
>> IDE layer -- start by making hwgroup->rq into hwgroup->ar and _never_
>> store ar in ->special (you don't have to, you will always just go from
>> ar -> rq, which is of course ar->ar_rq). This is what I wanted to do.
>
>I'll do this on monday, I'm away friday and through the weekend. Lets
>get this fixed _properly_.

The only _proper_ fix is to not abuse "special" at all. Mid-level layers
simpyl should not use it.

Please don't use "special" for mid-level things that clash like this.
There are real reasons why Linux tries hard to avoid stupidly overloaded
"void *" things, and if IDE is to be cleaned up (which I sure hope), it
should NOT use "special" at all.

And it should _definitely_ not use it for multiple different things,
depending on what kind of disk it is. Checking whether the target is a
disk or a CD is _absolutely_ the wrong thing to do, and will just make
the code continue the current mistake of now being able to integrate the
packet command stuff between them.

Jens, please don't make it worse. Add a new field if you have to, with a
proper type, don't overload crap.

Linus