Re: [PATCH 1/7] Introduce the pagetable_operations and associatedhelper macros.

From: Nick Piggin
Date: Wed Mar 21 2007 - 01:08:12 EST


William Lee Irwin III wrote:
Adam Litke wrote:

struct vm_operations_struct * vm_ops;
+ const struct pagetable_operations_struct * pagetable_ops;


On Wed, Mar 21, 2007 at 03:18:30PM +1100, Nick Piggin wrote:

Can you remind me why this isn't in vm_ops?
Also, it is going to be hugepage-only, isn't it? So should the naming be
changed to reflect that? And #ifdef it...


ISTR potential ppc64 users coming out of the woodwork for something I
didn't recognize the name of, but I may be confusing that with your
patch. I can implement additional users (and useful ones at that)
needing this in particular if desired.

Yes I would be interested in seeing useful additional users of this
that cannot use our regular virtual memory, before making it a general
thing.

I just don't want to see proliferation of these things, if possible.

Adam Litke wrote:

+struct pagetable_operations_struct {
+ int (*fault)(struct mm_struct *mm,


On Wed, Mar 21, 2007 at 03:18:30PM +1100, Nick Piggin wrote:

I got dibs on fault ;)
My callback is a sanitised one that basically abstracts the details of the
virtual memory mapping away, so it is usable by drivers and filesystems.
You actually want to bypass the normal fault handling because it doesn't
know how to deal with your virtual memory mapping. Hmm, the best suggestion
I can come up with is handle_mm_fault... unless you can think of a better
name for me to use.


Two fault handling methods callbacks raise an eyebrow over here at least.
I was vaguely hoping for unification of the fault handling callbacks.

I don't know if it would be so clean to do that as they are at different levels.
Adam's fault is before the VM translation (and bypasses it), and mine is after.

--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/