Date: Thu, 25 Sep 1997 00:17:27 +0000 (GMT) From: Terry Lambert <tlambert@primenet.com> To: nate@mt.sri.com (Nate Williams) Cc: tlambert@primenet.com, nate@mt.sri.com, julian@whistle.com, gibbs@plutotech.com, bde@zeta.org.au, current@freebsd.org Subject: Re: new timeout routines Message-ID: <199709250017.RAA02618@usr03.primenet.com> In-Reply-To: <199709241523.JAA12165@rocky.mt.sri.com> from "Nate Williams" at Sep 24, 97 09:23:14 am
next in thread | previous in thread | raw e-mail | index | archive | help
> > Untimeout this particular timeout without traversing the whole list > > of possible timeouts. > > Build a hash list that uses the (fn, args) parameter at timeout time > (which is what the result of the cookie is), and then get to the timeout > via hashing back on this with untimeout(fn, args). No need for the > drivers to hold onto the cookie, since you have all the necessary > information. Which bucket is an 8 tick timeout in? It's going to be in the current bucket or any one of the 7 following it, depending on how many sofclocks have happenend since the queue. That's still potentially a lot of entries to look at. Besides, O(1) removal has merit independent of the other arguments; I'd want a cookie if I was doing something where I expected it to be removed (like writing a CAM layer 8-)). Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199709250017.RAA02618>