Re: Disk scheduling policy (Re: NEW_BUFQ_STRATEGY)
Thor Lancelot Simon <[email protected]>
| Newsgroups | gmane.os.netbsd.devel.performance,gmane.os.netbsd.devel.kernel |
|---|---|
| Message-ID | <[email protected]> |
On Mon, Dec 01, 2003 at 04:29:38PM -0800, Jason Thorpe wrote: > > This is why I suggested creating an uber-buf that contained a list of > sub-bufs. The uber-buf would contain the starting block # and the > overall length, and the sub-bufs would describe the individual > transfers that were gathered into the uber-buf. You could even use the > normal bufq linkage (or a TAILQ union over it) to hook the sub-bufs > into the uber-buf. Unfortunately, this requires modifying every disk driver to handle uber-bufs instead of bufs, no? It's highly similar to the change that BSDI made long ago to chain buffers together through a pointer in struct buf -- we could have whacked pagemove() much earlier if we picked up that change, but we didn't because of the changes it would have required in all of the disk drivers. -- Thor Lancelot Simon [email protected] But as he knew no bad language, he had called him all the names of common objects that he could think of, and had screamed: "You lamp! You towel! You plate!" and so on. --Sigmund Freud