[lkml]   [2002]   [Mar]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [patch] My AMD IDE driver, v2.7

On Mon, 11 Mar 2002, Linus Torvalds wrote:
> - attach to one or more request queue(s). Notice that you should not have
> _one_ module that handles all request queues, because the filter module
> obviously has to be different for an ATA disk than for a SCSI disk, and
> in fact it might be different for an IBM ATA disk than for a Maxtor ATA
> disk, for example.

Btw, to tie this back to the other IDE thread, namely the suspend/resume
thing, I think things like that should also just push commands down the
request list. In particular, instead of waiting until the handler is NULL,
it should do something like

- create a "sync" request
- do the equivalent of

rq->waiting = &wait;
q->elevator.elevator_add_req_fn(q, rq, queue_head);

which automatically synchronizes with any outstanding requests (simply
by virtue of the elevator knowing not to re-order/merge special requests,
so when the sync command in finished, we know all other commands have
finished too).

Note that this should be the same code as for a shutdown as well - we
should finish with a flush buffers request and wait for it to have

I'd like a _lot_ of stuff to stop using "do_xxx_command()", and move toa
higher layer so that more code can be shared between different subsystems
(all of these "sync" issues are really completely generic, and should
_not_ be duplicated across drivers or subsystems).


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:24    [W:0.448 / U:47.128 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site