On Thu, Mar 16, 2006 at 05:04:14PM -0800, Linus Torvalds wrote: > > > On Thu, 16 Mar 2006, Andrew Morton wrote: > > > > hm. Is that a superset of ->nopage? Should we be looking at > > migrating over to ->nopfn, retire ->nopage? > > > > <looks at the ghastly stuff in do_no_page> > > > > Maybe not... > > Yeah, absolutely _not_. > > If we wouldn't pass the "struct page" around, we wouldn't have anything to > synchronize with, and each nopage() function would have to do rmap stuff. > > That's actually how nopage() worked a long time ago (not rmap, but it was > up the the low-level function to do all the page table logic etc). > Switching to returning a structured return value and letting the generic > VM code handle all the locking and the races was a _huge_ improvement. > > So yes, the modern "->nopage()" interface is less flexible, but it's less > flexible for a very good reason. > > Quite frankly, I don't think nopfn() is a good interface. It's only usable > for one single thing, so trying to claim that it's a generic VM op is > really not valid. If (and that's a big if) we need this interface, we > should just do it inside mm/memory.c instead of playing games as if it was > generic. My understanding was Carsten Otte was also interested in a do_no_pfn() for execute-in-place. Casten, is that still your intention? Thanks, Robin - : send the line "unsubscribe linux-ia64" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
![]() |