disksort disappeared from ATA devices in HEAD ?

Søren Schmidt sos at DeepCore.dk
Thu Jul 7 09:30:02 GMT 2005


Luigi Rizzo wrote:
> I notice that the ata drivers in HEAD do not use anymore
> bioq_disksort, but rather they have their own routine,
> (ad_queue_request() in turn calling ata_sort_queue())
> which probably does something similar.
> 
> I wonder:
> 1) how different is ata_sort_queue() from bioq_disksort()
>    in terms of design ?

The difference is that ata_sort_queue() has a way to make certain that 
new requests are inserted after a specific point in the ATA queue 
(freezepoint). It also knows how to deal with non-r/w operations.
This is needed to make "composite" ATA operations work properly. 
Composite ATA operations are several ATA operations chained together 
over different ATA channels, which are *real* handy for RAID operations etc.

> 2) is there any strong reason for this change ?

Since this is special usage for ATA ops alone I didn't want to pollute 
the system disksort with this functionality. If/when we grow a way to 
register specialized sort routines with the system that could perhaps be 
used then.

> 3) any pointers to mail threads where this changes have been
>    discussed ?

Nope. This was my decision during the development of ATA mkIII.

--

-Søren




More information about the freebsd-current mailing list