On Thu, Oct 20, 2011 at 10:48:16AM -0400, Jared McNeill wrote: > Heyas Manuel -- > > You don't need to track state in the kernel, you just need to keep a > generation ID. Have the caller pass a "starting index" and > "requested count" parameter, and have the kernel include "number of > matches", "total matches", and "generation ID" in the response. Let > the kernel limit the maximum number of matches to return per request > if you like. If the generation ID changes while the caller is > fetching records you simply restart the process.
I still don't see how it's going to work in details. Either the kernel have to restart reading all quotas on each call to return requested range, or it has to cache the previous read of all quotas. Once the kernel has read all the quotas, it can as well return all the data to the caller, and let the caller deal with the iteration. -- Manuel Bouyer <[email protected]> NetBSD: 26 ans d'experience feront toujours la difference --
