Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 07 Jul 2005 11:30:24 +0200
From:      =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@DeepCore.dk>
To:        Luigi Rizzo <rizzo@icir.org>
Cc:        current@FreeBSD.ORG
Subject:   Re: disksort disappeared from ATA devices in HEAD ?
Message-ID:  <42CCF630.5070308@DeepCore.dk>
In-Reply-To: <20050706143050.A96472@xorpc.icir.org>
References:  <20050706143050.A96472@xorpc.icir.org>

next in thread | previous in thread | raw e-mail | index | archive | help
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.
>=20
> 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=20
new requests are inserted after a specific point in the ATA queue=20
(freezepoint). It also knows how to deal with non-r/w operations.
This is needed to make "composite" ATA operations work properly.=20
Composite ATA operations are several ATA operations chained together=20
over different ATA channels, which are *real* handy for RAID operations e=
tc.

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

Since this is special usage for ATA ops alone I didn't want to pollute=20
the system disksort with this functionality. If/when we grow a way to=20
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=F8ren





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?42CCF630.5070308>