lkml.org 
[lkml]   [1999]   [Mar]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: disk head scheduling


On Tue, 23 Mar 1999, Stephen C. Tweedie wrote:

> Hi,
>
> On Tue, 23 Mar 1999 13:45:22 +0100 (MET), R.E.Wolff@BitWizard.nl (Rogier
> Wolff) said:
>
> > Indeed, That's why Linus suggests a function that returns queue to put
> > the request into.
>
> > That way a controller can elect to override the default of one queue
> > per device.
>
> That's why we already have such a function!

That has been the error. I mean to only have this function, since:

A) Linux is doing IOs per block or per page from the kernel and we need
to coalesce and sort this small virtual IOs somewhere.

B) The Linux design is, at the moment, to perform this work from
ll_rw_blk.

The get_queue() only function looks like some band-aid for IDE to me.
Since too partial design is bad design I am not going to use this method.

So the solutions might be among the following:
----------------------------------------------

a) Allow IO-sub system to return a complete block_dev structure by kdev_t,
forget the get_queue() hack and fix current IO-subsystems, especially
SCSI.

b) Rewrite the kernel block IO-subsystem and perform coalescing/sort/plug
and tutti-quanti from IO-subsystems.

c) Rewrite all calls for IOs in the kernel so that large IOs are directly
provided to IO-subsystem.

Only (a) or something close to (a) is reasonnable in my opinion at the
moment and may probably work quite well.

(b) is not better than (a) and far longer and harder to achieve, in my
opinion.

For (c), switching to some other O/S may do the trick without any delay.
:-)

So, I am thinking about (a) and nothing else.

Regards,
Gérard.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

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