On Thursday 06 December 2007 12:27, Andrew Morton wrote: > On Thu, 6 Dec 2007 12:04:14 -0800 > > Daniel Phillips <[EMAIL PROTECTED]> wrote: > > Any idea > > how to extend the accounting idea to all tasks involved in a > > particular block device stack? > > SMOP, I'd have thought.
Agreed, which I realized as soon as the post was one minute old. Sure, each helper for the device registers as a helper which puts a pointer in the task struct, which points to the accounting info so only one new field in task struct. The more I ponder, the more doable it seems. > As long as each piece of code which handles > data for this stack knows that it's handling data for that stack it > should be able to account its memory allocations. Don't forget that we do not actually have a usable notion of "block device stack" yet. Perhaps you are just assuming that is easy/imminent? > The tricky part will be networking allocations because a NIC can of > course handle data for all sorts of consumers. But I expect this can > be greatly simplified with a few heuristics - work out how much > memory your typical networking stack will allocate for a frame and > tack that onto the total. Couple of pages worst case.. Actually, the same pattern that Peter and I developed for handling network deadlock extends to this accounting concept. As you say, it's a SMOP. Daniel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/