On Wed, 25 Jul 2007 23:33:24 -0700 "Ray Lee" <[EMAIL PROTECTED]> wrote:
> > So. We can > > > > a) provide a way for userspace to reload pagecache and > > > > b) merge maps2 (once it's finished) (pokes mpm) > > > > and we're done? > > Eh, dunno. Maybe? > > We're assuming we come up with an API for userspace to get > notifications of evictions (without polling, though poll() would be > fine -- you know what I mean), and an API for re-victing those things > on demand. I was assuming that polling would work OK. I expect it would. > If you think that adding that API and maintaining it is > simpler/better than including a variation on the above hueristic I > offered, then yeah, I guess we are. It'll all have that vague > userspace s2ram odor about it, but I'm sure it could be made to work. Actually, I overdesigned the API, I suspect. What we _could_ do is to provide a way of allowing userspace to say "pretend process A touched page B": adopt its mm and go touch the page. We in fact already have that: PTRACE_PEEKTEXT. So I suspect this could all be done by polling maps2 and using PEEKTEXT. The tricky part would be working out when to poll, and when to reestablish. A neater implementation than PEEKTEXT would be to make the maps2 files writeable(!) so as a party trick you could tar 'em up and then, when you want to reestablish firefox's previous working set, do a untar in /proc/$(pidof firefox)/ - 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/