On Fri, Jul 15, 2005 at 08:43:17AM +0200, Poul-Henning Kamp wrote: > In message <20050714181356.A58300_at_xorpc.icir.org>, Luigi Rizzo writes: > > >Anyways there might be a way out... > >requests go from dev_strategy() > > The right place for this is geom_disk.c:g_disk_start() and the start > routines of the drivers which do not use geom_disk. g_disk_start() sonunds good, but i am not sure if other drivers export the start routine. It seems to be called more or less directly at the end of the strategy() routine of the individual driver, and it does not always likes to find the queue empty. But i am still learning on the layering of these things... cheers luigi > The easiest way to handle it would be to set a flag on the g_provider > saying "no more", have g_down spill the requests into a side queue > and when the driver is ready again, it calls some function which > pulls the request out of the side queue again. > > > -- > Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 > phk_at_FreeBSD.ORG | TCP/IP since RFC 956 > FreeBSD committer | BSD since 4.3-tahoe > Never attribute to malice what can adequately be explained by incompetence.Received on Fri Jul 15 2005 - 08:59:24 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:38 UTC