* Re: [Xen-staging] [xen-unstable] linux: User-space grant table device. [not found] <200703311252.l2VCqLaT019711@latara.uk.xensource.com> @ 2007-03-31 15:33 ` Alex Williamson 2007-03-31 15:36 ` Keir Fraser 2007-03-31 15:46 ` Alex Williamson 1 sibling, 1 reply; 6+ messages in thread From: Alex Williamson @ 2007-03-31 15:33 UTC (permalink / raw) To: xen-devel On Sat, 2007-03-31 at 13:52 +0100, Xen staging patchbot-unstable wrote: > # HG changeset patch > # User Keir Fraser <keir@xensource.com> > # Date 1175345604 -3600 > # Node ID 5e65a86c8982b9159223b542cc7b7e3af61a06e4 > # Parent 7180d2e61f926023e24750c53fd4203a71f2a3ae > linux: User-space grant table device. > > A character device for accessing (in user-space) pages that have been > granted by other domains. ... > + /* This flag ensures that the page tables are not unpinned before the > + * VM area is unmapped. Therefore Xen still recognises the PTE as > + * belonging to an L1 pagetable, and the grant unmap operation will > + * succeed, even if the process does not exit cleanly. > + */ > + vma->vm_mm->context.has_foreign_mappings = 1; mm_context_t is arch specific, common code shouldn't be poking at it like this. Alex -- Alex Williamson HP Open Source & Linux Org. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Re: [Xen-staging] [xen-unstable] linux: User-space grant table device. 2007-03-31 15:33 ` [Xen-staging] [xen-unstable] linux: User-space grant table device Alex Williamson @ 2007-03-31 15:36 ` Keir Fraser 0 siblings, 0 replies; 6+ messages in thread From: Keir Fraser @ 2007-03-31 15:36 UTC (permalink / raw) To: Alex Williamson, xen-devel On 31/3/07 16:33, "Alex Williamson" <alex.williamson@hp.com> wrote: >> + /* This flag ensures that the page tables are not unpinned before the >> + * VM area is unmapped. Therefore Xen still recognises the PTE as >> + * belonging to an L1 pagetable, and the grant unmap operation will >> + * succeed, even if the process does not exit cleanly. >> + */ >> + vma->vm_mm->context.has_foreign_mappings = 1; > > mm_context_t is arch specific, common code shouldn't be poking at it > like this. Good point. That part is entirely x86-specific. I'll add an ifdef. -- Keir ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Xen-staging] [xen-unstable] linux: User-space grant table device. [not found] <200703311252.l2VCqLaT019711@latara.uk.xensource.com> 2007-03-31 15:33 ` [Xen-staging] [xen-unstable] linux: User-space grant table device Alex Williamson @ 2007-03-31 15:46 ` Alex Williamson 2007-03-31 15:56 ` Keir Fraser 1 sibling, 1 reply; 6+ messages in thread From: Alex Williamson @ 2007-03-31 15:46 UTC (permalink / raw) To: xen-devel On Sat, 2007-03-31 at 13:52 +0100, Xen staging patchbot-unstable wrote: > --- a/linux-2.6-xen-sparse/drivers/xen/util.c Sat Mar 31 12:42:02 2007 +0100 > +++ b/linux-2.6-xen-sparse/drivers/xen/util.c Sat Mar 31 13:53:24 2007 +0100 > @@ -4,6 +4,23 @@ > #include <linux/vmalloc.h> > #include <asm/uaccess.h> > #include <xen/driver_util.h> > + > +struct class *get_xen_class(void) > +{ > + static struct class *xen_class; > + > + if (xen_class) > + return xen_class; > + > + xen_class = class_create(THIS_MODULE, "xen"); > + if (IS_ERR(xen_class)) { > + printk("Failed to create xen sysfs class.\n"); > + xen_class = NULL; > + } > + > + return xen_class; > +} > +EXPORT_SYMBOL_GPL(get_xen_class); Maybe this could be moved to a more common spot since only x86 builds with CONFIG_XEN_UTIL? Thanks, Alex -- Alex Williamson HP Open Source & Linux Org. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Re: [Xen-staging] [xen-unstable] linux: User-space grant table device. 2007-03-31 15:46 ` Alex Williamson @ 2007-03-31 15:56 ` Keir Fraser 2007-03-31 16:34 ` Alex Williamson 0 siblings, 1 reply; 6+ messages in thread From: Keir Fraser @ 2007-03-31 15:56 UTC (permalink / raw) To: Alex Williamson, xen-devel On 31/3/07 16:46, "Alex Williamson" <alex.williamson@hp.com> wrote: > Maybe this could be moved to a more common spot since only x86 builds > with CONFIG_XEN_UTIL? Thanks, You can't get much more generic than a file named 'util.c' at the root of drivers/xen. Everyone should build it and the x86-specific portions (if there really are any -- it all looks pretty generic to me even if no other architectures currently use the functions defined in there) should be ifdef'ed or perhaps relocated to a new file. -- Keir ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Re: [Xen-staging] [xen-unstable] linux: User-space grant table device. 2007-03-31 15:56 ` Keir Fraser @ 2007-03-31 16:34 ` Alex Williamson 2007-03-31 17:28 ` Keir Fraser 0 siblings, 1 reply; 6+ messages in thread From: Alex Williamson @ 2007-03-31 16:34 UTC (permalink / raw) To: Keir Fraser; +Cc: xen-devel On Sat, 2007-03-31 at 16:56 +0100, Keir Fraser wrote: > On 31/3/07 16:46, "Alex Williamson" <alex.williamson@hp.com> wrote: > > > Maybe this could be moved to a more common spot since only x86 builds > > with CONFIG_XEN_UTIL? Thanks, > > You can't get much more generic than a file named 'util.c' at the root of > drivers/xen. > > Everyone should build it and the x86-specific portions (if there really are > any -- it all looks pretty generic to me even if no other architectures > currently use the functions defined in there) should be ifdef'ed or perhaps > relocated to a new file. True, util.c ought to be a good place to dump stuff like this. Unfortunately we define our own alloc/free_vm_area(), so the existing functions in there are the problems. Maybe those should be moved to arch/i386/mach-xen/util.c, or ifdef out as below. Thanks, Alex Signed-off-by: Alex Williamson <alex.williamson@hp.com> --- diff -r fbe52b559161 linux-2.6-xen-sparse/arch/ia64/Kconfig --- a/linux-2.6-xen-sparse/arch/ia64/Kconfig Sat Mar 31 14:05:57 2007 +0100 +++ b/linux-2.6-xen-sparse/arch/ia64/Kconfig Sat Mar 31 10:24:30 2007 -0600 @@ -577,7 +577,7 @@ source "crypto/Kconfig" # if XEN config XEN_UTIL - default n + default y config XEN_BALLOON default y diff -r fbe52b559161 linux-2.6-xen-sparse/drivers/xen/util.c --- a/linux-2.6-xen-sparse/drivers/xen/util.c Sat Mar 31 14:05:57 2007 +0100 +++ b/linux-2.6-xen-sparse/drivers/xen/util.c Sat Mar 31 10:24:01 2007 -0600 @@ -21,6 +21,8 @@ struct class *get_xen_class(void) return xen_class; } EXPORT_SYMBOL_GPL(get_xen_class); + +#ifndef CONFIG_IA64 static int f(pte_t *pte, struct page *pmd_page, unsigned long addr, void *data) { @@ -63,3 +65,5 @@ void free_vm_area(struct vm_struct *area kfree(area); } EXPORT_SYMBOL_GPL(free_vm_area); + +#endif /* !CONFIG_IA64 */ ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Re: [Xen-staging] [xen-unstable] linux: User-space grant table device. 2007-03-31 16:34 ` Alex Williamson @ 2007-03-31 17:28 ` Keir Fraser 0 siblings, 0 replies; 6+ messages in thread From: Keir Fraser @ 2007-03-31 17:28 UTC (permalink / raw) To: Alex Williamson; +Cc: xen-devel On 31/3/07 17:34, "Alex Williamson" <alex.williamson@hp.com> wrote: >> Everyone should build it and the x86-specific portions (if there really are >> any -- it all looks pretty generic to me even if no other architectures >> currently use the functions defined in there) should be ifdef'ed or perhaps >> relocated to a new file. > > True, util.c ought to be a good place to dump stuff like this. > Unfortunately we define our own alloc/free_vm_area(), so the existing > functions in there are the problems. Maybe those should be moved to > arch/i386/mach-xen/util.c, or ifdef out as below. Thanks, Oh I see. Actually I think the difference is not strictly architecture-related, but due to the fact that ia64 uses auto-translate, so you need actual pseudophysical addresses relating to the virtual address that is returned. The right answer here is to have a combined function that tests for auto_translated_physmap. Possibly the interface function should even be modified to do allocate-area-and-map, rather than leaving the mapping to a separate function. Anyhow, for now I'll make the 'generic' versions __attribute__((weak)). -- Keir ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2007-03-31 17:28 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <200703311252.l2VCqLaT019711@latara.uk.xensource.com>
2007-03-31 15:33 ` [Xen-staging] [xen-unstable] linux: User-space grant table device Alex Williamson
2007-03-31 15:36 ` Keir Fraser
2007-03-31 15:46 ` Alex Williamson
2007-03-31 15:56 ` Keir Fraser
2007-03-31 16:34 ` Alex Williamson
2007-03-31 17:28 ` Keir Fraser
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.