* linux/arch/xen/i386 or linux/arch/i386/xen
@ 2005-05-16 17:36 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-16 18:07 ` Chris Wright
0 siblings, 1 reply; 27+ messages in thread
From: Magenheimer, Dan (HP Labs Fort Collins) @ 2005-05-16 17:36 UTC (permalink / raw)
To: xen-devel
A while ago (I think at the Xummit), I recall someone
saying that the structure of the files in xenlinux may
change soon so that the xen-specific files would move to
a subdirectory or arch/<arch> (e.g. linux/arch/i386/xen
instead of linux/arch/xen/i386).
Is this still planned? If so, what is the timing?
If it's in progress, I'd like to get in the loop...
Thanks,
Dan
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-16 17:36 Magenheimer, Dan (HP Labs Fort Collins)
@ 2005-05-16 18:07 ` Chris Wright
0 siblings, 0 replies; 27+ messages in thread
From: Chris Wright @ 2005-05-16 18:07 UTC (permalink / raw)
To: Magenheimer, Dan (HP Labs Fort Collins); +Cc: xen-devel
* Magenheimer, Dan (HP Labs Fort Collins) (dan.magenheimer@hp.com) wrote:
> A while ago (I think at the Xummit), I recall someone
> saying that the structure of the files in xenlinux may
> change soon so that the xen-specific files would move to
> a subdirectory or arch/<arch> (e.g. linux/arch/i386/xen
> instead of linux/arch/xen/i386).
I said I would do that. I started, and got preempted. I'm actually
just finally clearing my plate to get back to it this week.
thanks,
-chris
^ permalink raw reply [flat|nested] 27+ messages in thread
* RE: linux/arch/xen/i386 or linux/arch/i386/xen
@ 2005-05-16 21:37 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-16 22:21 ` Mark Williamson
0 siblings, 1 reply; 27+ messages in thread
From: Magenheimer, Dan (HP Labs Fort Collins) @ 2005-05-16 21:37 UTC (permalink / raw)
To: Chris Wright; +Cc: xen-devel
There are a number of "architecture independent" files
and headers. Where are you planning on putting those?
Also, what is the expected timing of the change (e.g.
pre-Xen-3.0 release or post-)?
I'm starting some work in this code for ia64 and would
prefer to map to the "future" directory structure if
possible.
Thanks,
Dan
> -----Original Message-----
> From: Chris Wright [mailto:chrisw@osdl.org]
> Sent: Monday, May 16, 2005 12:08 PM
> To: Magenheimer, Dan (HP Labs Fort Collins)
> Cc: xen-devel
> Subject: Re: [Xen-devel] linux/arch/xen/i386 or linux/arch/i386/xen
>
> * Magenheimer, Dan (HP Labs Fort Collins)
> (dan.magenheimer@hp.com) wrote:
> > A while ago (I think at the Xummit), I recall someone
> > saying that the structure of the files in xenlinux may
> > change soon so that the xen-specific files would move to
> > a subdirectory or arch/<arch> (e.g. linux/arch/i386/xen
> > instead of linux/arch/xen/i386).
>
> I said I would do that. I started, and got preempted. I'm actually
> just finally clearing my plate to get back to it this week.
>
> thanks,
> -chris
>
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-16 21:37 Magenheimer, Dan (HP Labs Fort Collins)
@ 2005-05-16 22:21 ` Mark Williamson
0 siblings, 0 replies; 27+ messages in thread
From: Mark Williamson @ 2005-05-16 22:21 UTC (permalink / raw)
To: xen-devel; +Cc: Magenheimer, Dan (HP Labs Fort Collins), Chris Wright
> There are a number of "architecture independent" files
> and headers. Where are you planning on putting those?
The last plan I heard was to put "core" Xen files under drivers/xen. It seems
kinda "backwards" putting arch/xen under there but it seems like the most
reasonable place for code that's Xen-specific but CPU-neutral.
Cheers,
Mark
> Also, what is the expected timing of the change (e.g.
> pre-Xen-3.0 release or post-)?
>
> I'm starting some work in this code for ia64 and would
> prefer to map to the "future" directory structure if
> possible.
>
> Thanks,
> Dan
>
> > -----Original Message-----
> > From: Chris Wright [mailto:chrisw@osdl.org]
> > Sent: Monday, May 16, 2005 12:08 PM
> > To: Magenheimer, Dan (HP Labs Fort Collins)
> > Cc: xen-devel
> > Subject: Re: [Xen-devel] linux/arch/xen/i386 or linux/arch/i386/xen
> >
> > * Magenheimer, Dan (HP Labs Fort Collins)
> >
> > (dan.magenheimer@hp.com) wrote:
> > > A while ago (I think at the Xummit), I recall someone
> > > saying that the structure of the files in xenlinux may
> > > change soon so that the xen-specific files would move to
> > > a subdirectory or arch/<arch> (e.g. linux/arch/i386/xen
> > > instead of linux/arch/xen/i386).
> >
> > I said I would do that. I started, and got preempted. I'm actually
> > just finally clearing my plate to get back to it this week.
> >
> > thanks,
> > -chris
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 27+ messages in thread
* RE: linux/arch/xen/i386 or linux/arch/i386/xen
@ 2005-05-16 22:42 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-16 22:50 ` Mark Williamson
0 siblings, 1 reply; 27+ messages in thread
From: Magenheimer, Dan (HP Labs Fort Collins) @ 2005-05-16 22:42 UTC (permalink / raw)
To: Mark Williamson, xen-devel; +Cc: Chris Wright
Hmmm... kinda ugly. The right place for the (non-driver)
files is probably in a top-level "xen" directory, but I'll
bet it would take a very long lkml discussion to make that
happen.
> -----Original Message-----
> From: maw48@hermes.cam.ac.uk [mailto:maw48@hermes.cam.ac.uk]
> On Behalf Of Mark Williamson
> Sent: Monday, May 16, 2005 4:21 PM
> To: xen-devel@lists.xensource.com
> Cc: Magenheimer, Dan (HP Labs Fort Collins); Chris Wright
> Subject: Re: [Xen-devel] linux/arch/xen/i386 or linux/arch/i386/xen
>
> > There are a number of "architecture independent" files
> > and headers. Where are you planning on putting those?
>
> The last plan I heard was to put "core" Xen files under
> drivers/xen. It seems
> kinda "backwards" putting arch/xen under there but it seems
> like the most
> reasonable place for code that's Xen-specific but CPU-neutral.
>
> Cheers,
> Mark
>
> > Also, what is the expected timing of the change (e.g.
> > pre-Xen-3.0 release or post-)?
> >
> > I'm starting some work in this code for ia64 and would
> > prefer to map to the "future" directory structure if
> > possible.
> >
> > Thanks,
> > Dan
> >
> > > -----Original Message-----
> > > From: Chris Wright [mailto:chrisw@osdl.org]
> > > Sent: Monday, May 16, 2005 12:08 PM
> > > To: Magenheimer, Dan (HP Labs Fort Collins)
> > > Cc: xen-devel
> > > Subject: Re: [Xen-devel] linux/arch/xen/i386 or
> linux/arch/i386/xen
> > >
> > > * Magenheimer, Dan (HP Labs Fort Collins)
> > >
> > > (dan.magenheimer@hp.com) wrote:
> > > > A while ago (I think at the Xummit), I recall someone
> > > > saying that the structure of the files in xenlinux may
> > > > change soon so that the xen-specific files would move to
> > > > a subdirectory or arch/<arch> (e.g. linux/arch/i386/xen
> > > > instead of linux/arch/xen/i386).
> > >
> > > I said I would do that. I started, and got preempted.
> I'm actually
> > > just finally clearing my plate to get back to it this week.
> > >
> > > thanks,
> > > -chris
> >
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@lists.xensource.com
> > http://lists.xensource.com/xen-devel
>
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-16 22:42 Magenheimer, Dan (HP Labs Fort Collins)
@ 2005-05-16 22:50 ` Mark Williamson
2005-05-16 23:22 ` Chris Wright
0 siblings, 1 reply; 27+ messages in thread
From: Mark Williamson @ 2005-05-16 22:50 UTC (permalink / raw)
To: Magenheimer, Dan (HP Labs Fort Collins); +Cc: Chris Wright, xen-devel
> Hmmm... kinda ugly. The right place for the (non-driver)
> files is probably in a top-level "xen" directory, but I'll
Well... Most of the things that would end up under drivers/xen would be a bit
driver like" anyhow... Things like the console, the control interface...
There's nothing stopping grant tables, kexec, some event channel stuff, etc
going in there too. It does seem a bit "backwards" but I guess all those
things are "drivers" in some sense...
> bet it would take a very long lkml discussion to make that
> happen.
Heh, I'd love to see the fight that ensued if someone suggested that at this
point :-) Maybe one day...
Cheers,
Mark
> > -----Original Message-----
> > From: maw48@hermes.cam.ac.uk [mailto:maw48@hermes.cam.ac.uk]
> > On Behalf Of Mark Williamson
> > Sent: Monday, May 16, 2005 4:21 PM
> > To: xen-devel@lists.xensource.com
> > Cc: Magenheimer, Dan (HP Labs Fort Collins); Chris Wright
> > Subject: Re: [Xen-devel] linux/arch/xen/i386 or linux/arch/i386/xen
> >
> > > There are a number of "architecture independent" files
> > > and headers. Where are you planning on putting those?
> >
> > The last plan I heard was to put "core" Xen files under
> > drivers/xen. It seems
> > kinda "backwards" putting arch/xen under there but it seems
> > like the most
> > reasonable place for code that's Xen-specific but CPU-neutral.
> >
> > Cheers,
> > Mark
> >
> > > Also, what is the expected timing of the change (e.g.
> > > pre-Xen-3.0 release or post-)?
> > >
> > > I'm starting some work in this code for ia64 and would
> > > prefer to map to the "future" directory structure if
> > > possible.
> > >
> > > Thanks,
> > > Dan
> > >
> > > > -----Original Message-----
> > > > From: Chris Wright [mailto:chrisw@osdl.org]
> > > > Sent: Monday, May 16, 2005 12:08 PM
> > > > To: Magenheimer, Dan (HP Labs Fort Collins)
> > > > Cc: xen-devel
> > > > Subject: Re: [Xen-devel] linux/arch/xen/i386 or
> >
> > linux/arch/i386/xen
> >
> > > > * Magenheimer, Dan (HP Labs Fort Collins)
> > > >
> > > > (dan.magenheimer@hp.com) wrote:
> > > > > A while ago (I think at the Xummit), I recall someone
> > > > > saying that the structure of the files in xenlinux may
> > > > > change soon so that the xen-specific files would move to
> > > > > a subdirectory or arch/<arch> (e.g. linux/arch/i386/xen
> > > > > instead of linux/arch/xen/i386).
> > > >
> > > > I said I would do that. I started, and got preempted.
> >
> > I'm actually
> >
> > > > just finally clearing my plate to get back to it this week.
> > > >
> > > > thanks,
> > > > -chris
> > >
> > > _______________________________________________
> > > Xen-devel mailing list
> > > Xen-devel@lists.xensource.com
> > > http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-16 22:50 ` Mark Williamson
@ 2005-05-16 23:22 ` Chris Wright
0 siblings, 0 replies; 27+ messages in thread
From: Chris Wright @ 2005-05-16 23:22 UTC (permalink / raw)
To: Mark Williamson
Cc: Magenheimer, Dan (HP Labs Fort Collins), Chris Wright, xen-devel
* Mark Williamson (mark.williamson@cl.cam.ac.uk) wrote:
> > Hmmm... kinda ugly. The right place for the (non-driver)
> > files is probably in a top-level "xen" directory, but I'll
>
> Well... Most of the things that would end up under drivers/xen would be a bit
> driver like" anyhow... Things like the console, the control interface...
> There's nothing stopping grant tables, kexec, some event channel stuff, etc
> going in there too. It does seem a bit "backwards" but I guess all those
> things are "drivers" in some sense...
Yeah, and the primary point is to eliminate as much copied code as
possible (at arch level). So drivers/xen is closest fit (and not
entirely w/out precedence).
> > bet it would take a very long lkml discussion to make that
> > happen.
>
> Heh, I'd love to see the fight that ensued if someone suggested that at this
> point :-) Maybe one day...
Heh ;-)
thanks,
-chris
^ permalink raw reply [flat|nested] 27+ messages in thread
* RE: linux/arch/xen/i386 or linux/arch/i386/xen
@ 2005-05-17 17:25 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-17 17:58 ` Chris Wright
0 siblings, 1 reply; 27+ messages in thread
From: Magenheimer, Dan (HP Labs Fort Collins) @ 2005-05-17 17:25 UTC (permalink / raw)
To: Chris Wright, Mark Williamson; +Cc: xen-devel
Where are xen-generic header files going to go?
Where are arch-specific header files going to go?
Ar you going to try to get the structure right for
multiple arch's rather than just invert the structure?
> -----Original Message-----
> From: Chris Wright [mailto:chrisw@osdl.org]
> Sent: Monday, May 16, 2005 5:23 PM
> To: Mark Williamson
> Cc: Magenheimer, Dan (HP Labs Fort Collins); Chris Wright;
> xen-devel@lists.xensource.com
> Subject: Re: [Xen-devel] linux/arch/xen/i386 or linux/arch/i386/xen
>
> * Mark Williamson (mark.williamson@cl.cam.ac.uk) wrote:
> > > Hmmm... kinda ugly. The right place for the (non-driver)
> > > files is probably in a top-level "xen" directory, but I'll
> >
> > Well... Most of the things that would end up under
> drivers/xen would be a bit
> > driver like" anyhow... Things like the console, the
> control interface...
> > There's nothing stopping grant tables, kexec, some event
> channel stuff, etc
> > going in there too. It does seem a bit "backwards" but I
> guess all those
> > things are "drivers" in some sense...
>
> Yeah, and the primary point is to eliminate as much copied code as
> possible (at arch level). So drivers/xen is closest fit (and not
> entirely w/out precedence).
>
> > > bet it would take a very long lkml discussion to make that
> > > happen.
> >
> > Heh, I'd love to see the fight that ensued if someone
> suggested that at this
> > point :-) Maybe one day...
>
> Heh ;-)
>
> thanks,
> -chris
>
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-17 17:25 Magenheimer, Dan (HP Labs Fort Collins)
@ 2005-05-17 17:58 ` Chris Wright
2005-05-18 18:20 ` Christian Limpach
0 siblings, 1 reply; 27+ messages in thread
From: Chris Wright @ 2005-05-17 17:58 UTC (permalink / raw)
To: Magenheimer, Dan (HP Labs Fort Collins)
Cc: Chris Wright, xen-devel, Mark Williamson
* Magenheimer, Dan (HP Labs Fort Collins) (dan.magenheimer@hp.com) wrote:
> Where are xen-generic header files going to go?
Will include/xen/ work for you?
> Where are arch-specific header files going to go?
That's part of sub-arch (this just needs to get include order right).
> Ar you going to try to get the structure right for
> multiple arch's rather than just invert the structure?
The structure should be similar for multiple arch's, but it won't
fallout from doing one arch. Already I was doing i386 separate from
x86_64.
thanks,
-chris
^ permalink raw reply [flat|nested] 27+ messages in thread
* RE: linux/arch/xen/i386 or linux/arch/i386/xen
@ 2005-05-17 18:09 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-17 18:14 ` Chris Wright
0 siblings, 1 reply; 27+ messages in thread
From: Magenheimer, Dan (HP Labs Fort Collins) @ 2005-05-17 18:09 UTC (permalink / raw)
To: Chris Wright; +Cc: xen-devel, Mark Williamson
> Will include/xen/ work for you?
OK with me, but will that be as hard to get by the Linux community
as linux/xen for the generic C code? If so, maybe
include/asm-generic/xen/file.h?
> That's part of sub-arch (this just needs to get include order right).
So for example include/asm-ia64/xen/file.h?
Also, what about arch-specific C code? Hopefully this
will be minimized in drivers (by handling arch-specific
features with macros) but for most of the other xen-specific
files (e.g. setup.c) there will almost certainly need to
be arch-specific subdirectories...
So drivers/xen/arch/ia64/file.c or
drivers/xen/ia64/file.c or ??
Thanks,
Dan
> -----Original Message-----
> From: Chris Wright [mailto:chrisw@osdl.org]
> Sent: Tuesday, May 17, 2005 11:58 AM
> To: Magenheimer, Dan (HP Labs Fort Collins)
> Cc: Chris Wright; Mark Williamson; xen-devel@lists.xensource.com
> Subject: Re: [Xen-devel] linux/arch/xen/i386 or linux/arch/i386/xen
>
> * Magenheimer, Dan (HP Labs Fort Collins)
> (dan.magenheimer@hp.com) wrote:
> > Where are xen-generic header files going to go?
>
> Will include/xen/ work for you?
>
> > Where are arch-specific header files going to go?
>
> That's part of sub-arch (this just needs to get include order right).
>
> > Ar you going to try to get the structure right for
> > multiple arch's rather than just invert the structure?
>
> The structure should be similar for multiple arch's, but it won't
> fallout from doing one arch. Already I was doing i386 separate from
> x86_64.
>
> thanks,
> -chris
>
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-17 18:09 Magenheimer, Dan (HP Labs Fort Collins)
@ 2005-05-17 18:14 ` Chris Wright
2005-05-18 10:15 ` Vincent Hanquez
0 siblings, 1 reply; 27+ messages in thread
From: Chris Wright @ 2005-05-17 18:14 UTC (permalink / raw)
To: Magenheimer, Dan (HP Labs Fort Collins)
Cc: Chris Wright, xen-devel, Mark Williamson
* Magenheimer, Dan (HP Labs Fort Collins) (dan.magenheimer@hp.com) wrote:
> > Will include/xen/ work for you?
>
> OK with me, but will that be as hard to get by the Linux community
> as linux/xen for the generic C code? If so, maybe
> include/asm-generic/xen/file.h?
Shouldn't be an issue.
> > That's part of sub-arch (this just needs to get include order right).
>
> So for example include/asm-ia64/xen/file.h?
Yup, basically (s/xen/mach-xen/).
> Also, what about arch-specific C code? Hopefully this
> will be minimized in drivers (by handling arch-specific
> features with macros) but for most of the other xen-specific
> files (e.g. setup.c) there will almost certainly need to
> be arch-specific subdirectories...
>
> So drivers/xen/arch/ia64/file.c or
> drivers/xen/ia64/file.c or ??
Arch specific code should be in sub-arch.
thanks,
-chris
^ permalink raw reply [flat|nested] 27+ messages in thread
* RE: linux/arch/xen/i386 or linux/arch/i386/xen
@ 2005-05-17 19:05 Magenheimer, Dan (HP Labs Fort Collins)
0 siblings, 0 replies; 27+ messages in thread
From: Magenheimer, Dan (HP Labs Fort Collins) @ 2005-05-17 19:05 UTC (permalink / raw)
To: Chris Wright; +Cc: xen-devel, Mark Williamson
> > OK with me, but will that be as hard to get by the Linux community
> > as linux/xen for the generic C code? If so, maybe
> > include/asm-generic/xen/file.h?
>
> Shouldn't be an issue.
>
> > > That's part of sub-arch (this just needs to get include
> order right).
> >
> > So for example include/asm-ia64/xen/file.h?
>
> Yup, basically (s/xen/mach-xen/).
>
> > Also, what about arch-specific C code? Hopefully this
> > will be minimized in drivers (by handling arch-specific
> > features with macros) but for most of the other xen-specific
> > files (e.g. setup.c) there will almost certainly need to
> > be arch-specific subdirectories...
> >
> > So drivers/xen/arch/ia64/file.c or
> > drivers/xen/ia64/file.c or ??
>
> Arch specific code should be in sub-arch.
Be aware that some linux arch's don't use subarch's or the
mach-xxx syntax. This latter appears to be limited to i386,
arm, mips and a couple others. I don't understand the difference
well enough to know if this will matter in the long run,
but it might be worth checking/discussing with a maintainer
of one of the "other" arch's (e.g. ia64).
Dan
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-17 18:14 ` Chris Wright
@ 2005-05-18 10:15 ` Vincent Hanquez
2005-05-18 16:53 ` Chris Wright
0 siblings, 1 reply; 27+ messages in thread
From: Vincent Hanquez @ 2005-05-18 10:15 UTC (permalink / raw)
To: Chris Wright
Cc: Magenheimer, Dan (HP Labs Fort Collins), xen-devel,
Mark Williamson
On Tue, May 17, 2005 at 11:14:35AM -0700, Chris Wright wrote:
> [snip]
So let's recap:
xen arch code in arch/$(ARCH)/mach-xen/
xen generic code in drivers/xen/core/
xen arch includes in include/asm-$(ARCH)/mach-xen/
xen generic includes in include/asm-xen/
Now for arch that don't use mach-XX syntax we can probably make a
xen directory instead of a mach-xen directory, but I'ld rather go with
something consistant.
As well we can probably host a public tree in cambridge for anybody
interested in the files reorganisation.
Any others thought, comments ?
--
Vincent Hanquez
^ permalink raw reply [flat|nested] 27+ messages in thread
* RE: linux/arch/xen/i386 or linux/arch/i386/xen
@ 2005-05-18 15:09 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-18 16:47 ` Chris Wright
0 siblings, 1 reply; 27+ messages in thread
From: Magenheimer, Dan (HP Labs Fort Collins) @ 2005-05-18 15:09 UTC (permalink / raw)
To: Vincent Hanquez, Chris Wright; +Cc: xen-devel, Mark Williamson
Um, one other minor semantic issue. The semantics of
using mach-xxx may be inappropriate. If my understanding
is correct, two mach-xxx's cannot both be built, e.g. one
cannot build a kernel which supports (for i386) both
mach-es7000 and mach-voyager.
There have been various discussions on this list about
"transparent paravirtualization", i.e. the ability for
a paravirtualized kernel to run both as a guest of Xen
and on bare metal. This is definitely an objective of
Xen/ia64. Nobody has tried it for Xen/x86, but if it
can be done, I'm sure commercial companies and distros
would be eager to utilize it (one less set of bits to
support).
In many ways, a "xen" subdirectory is much more like
a "pci" or "math-emu" subdirectory, than a subarch.
For example, mach-es7000 and xen may need to co-exist
in the same kernel.
So, mach-xen may be a poor choice. A subtle distinction
perhaps but when dealing with Linux kernel developers,
purity of thinking may avoid future patch submission
arguments.
So I'd vote for:
xen arch code in arch/$(ARCH)/xen/
xen generic code in drivers/xen/core/
xen arch includes in include/asm-$(ARCH)/xen/
xen generic includes in include/asm-xen/
though I realize this is not a democracy :-)
> -----Original Message-----
> From: Vincent Hanquez [mailto:vincent.hanquez@cl.cam.ac.uk]
> Sent: Wednesday, May 18, 2005 4:15 AM
> To: Chris Wright
> Cc: Magenheimer, Dan (HP Labs Fort Collins);
> xen-devel@lists.xensource.com; Mark Williamson
> Subject: Re: [Xen-devel] linux/arch/xen/i386 or linux/arch/i386/xen
>
> On Tue, May 17, 2005 at 11:14:35AM -0700, Chris Wright wrote:
> > [snip]
>
> So let's recap:
>
> xen arch code in arch/$(ARCH)/mach-xen/
> xen generic code in drivers/xen/core/
> xen arch includes in include/asm-$(ARCH)/mach-xen/
> xen generic includes in include/asm-xen/
>
> Now for arch that don't use mach-XX syntax we can probably make a
> xen directory instead of a mach-xen directory, but I'ld rather go with
> something consistant.
>
> As well we can probably host a public tree in cambridge for anybody
> interested in the files reorganisation.
>
> Any others thought, comments ?
>
> --
> Vincent Hanquez
>
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-18 15:09 Magenheimer, Dan (HP Labs Fort Collins)
@ 2005-05-18 16:47 ` Chris Wright
2005-05-18 19:00 ` Vincent Hanquez
0 siblings, 1 reply; 27+ messages in thread
From: Chris Wright @ 2005-05-18 16:47 UTC (permalink / raw)
To: Magenheimer, Dan (HP Labs Fort Collins)
Cc: Chris Wright, xen-devel, Mark Williamson, Vincent Hanquez
* Magenheimer, Dan (HP Labs Fort Collins) (dan.magenheimer@hp.com) wrote:
> Um, one other minor semantic issue. The semantics of
> using mach-xxx may be inappropriate. If my understanding
> is correct, two mach-xxx's cannot both be built, e.g. one
> cannot build a kernel which supports (for i386) both
> mach-es7000 and mach-voyager.
Yes, I had thought about this. It's not clear to me it's problematic yet.
In many cases, it's exactly the bits that would become irrelevant that
are in the sub-arch (irq, smpboot, timers, etc.), whereas the generic
arch code would be sufficient running xenlinux on one of the sub-arches.
> There have been various discussions on this list about
> "transparent paravirtualization", i.e. the ability for
> a paravirtualized kernel to run both as a guest of Xen
> and on bare metal. This is definitely an objective of
> Xen/ia64. Nobody has tried it for Xen/x86, but if it
> can be done, I'm sure commercial companies and distros
> would be eager to utilize it (one less set of bits to
> support).
Hmm, this would be interesting/problematic. Hadn't considered that
part.
> In many ways, a "xen" subdirectory is much more like
> a "pci" or "math-emu" subdirectory, than a subarch.
> For example, mach-es7000 and xen may need to co-exist
> in the same kernel.
>
> So, mach-xen may be a poor choice. A subtle distinction
> perhaps but when dealing with Linux kernel developers,
> purity of thinking may avoid future patch submission
> arguments.
The primary goal is to avoid code duplication to keep maintenance sane.
Clean way to do that is what really matters.
> So I'd vote for:
>
> xen arch code in arch/$(ARCH)/xen/
that's effectively sub-arch
> xen generic code in drivers/xen/core/
yup (although no need for core/ subdir)
> xen arch includes in include/asm-$(ARCH)/xen/
again, effectively sub-arch
> xen generic includes in include/asm-xen/
or just include/xen
> though I realize this is not a democracy :-)
heh ;-)
thanks,
-chris
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-18 10:15 ` Vincent Hanquez
@ 2005-05-18 16:53 ` Chris Wright
2005-05-18 18:56 ` Vincent Hanquez
0 siblings, 1 reply; 27+ messages in thread
From: Chris Wright @ 2005-05-18 16:53 UTC (permalink / raw)
To: Vincent Hanquez
Cc: Magenheimer, Dan (HP Labs Fort Collins), Chris Wright, xen-devel,
Mark Williamson
* Vincent Hanquez (vincent.hanquez@cl.cam.ac.uk) wrote:
> On Tue, May 17, 2005 at 11:14:35AM -0700, Chris Wright wrote:
> > [snip]
>
> So let's recap:
>
> xen arch code in arch/$(ARCH)/mach-xen/
> xen generic code in drivers/xen/core/
> xen arch includes in include/asm-$(ARCH)/mach-xen/
> xen generic includes in include/asm-xen/
>
> Now for arch that don't use mach-XX syntax we can probably make a
> xen directory instead of a mach-xen directory, but I'ld rather go with
> something consistant.
yes, it needs to be consistant, partly just for ease of working with
kbuild (otherwise we rebuild an unnecessary infrastructure). Andi, for
example, was open to the idea of adding sub-arch to x86_64 to support
xen. He just hadn't needed sub-arch support yet.
> As well we can probably host a public tree in cambridge for anybody
> interested in the files reorganisation.
>
> Any others thought, comments ?
Do you have a list of more of the consolidation/cleanups like the
user_mode/user_mode_vm bits that you sent upstream?
^ permalink raw reply [flat|nested] 27+ messages in thread
* RE: linux/arch/xen/i386 or linux/arch/i386/xen
@ 2005-05-18 17:00 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-18 17:17 ` Chris Wright
0 siblings, 1 reply; 27+ messages in thread
From: Magenheimer, Dan (HP Labs Fort Collins) @ 2005-05-18 17:00 UTC (permalink / raw)
To: Chris Wright; +Cc: xen-devel, Mark Williamson, Vincent Hanquez
> > So I'd vote for:
> >
> > xen arch code in arch/$(ARCH)/xen/
>
> that's effectively sub-arch
The difference is admittedly very subtle (though probably
not to some Linux kernel developer purists). The question
is whether xen is subsidiary architecture (which uses
the mach- prefix) or whether it is functionality that can
be turned on or off (no mach- prefix).
And since this will appear hard-coded in include lines
in source files, we do need to decide one way or the
other.
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-18 17:00 linux/arch/xen/i386 or linux/arch/i386/xen Magenheimer, Dan (HP Labs Fort Collins)
@ 2005-05-18 17:17 ` Chris Wright
2005-05-18 18:35 ` Zachary Amsden
0 siblings, 1 reply; 27+ messages in thread
From: Chris Wright @ 2005-05-18 17:17 UTC (permalink / raw)
To: Magenheimer, Dan (HP Labs Fort Collins)
Cc: Chris Wright, xen-devel, Mark Williamson, Vincent Hanquez
* Magenheimer, Dan (HP Labs Fort Collins) (dan.magenheimer@hp.com) wrote:
> > > So I'd vote for:
> > >
> > > xen arch code in arch/$(ARCH)/xen/
> >
> > that's effectively sub-arch
>
> The difference is admittedly very subtle (though probably
> not to some Linux kernel developer purists). The question
> is whether xen is subsidiary architecture (which uses
> the mach- prefix) or whether it is functionality that can
> be turned on or off (no mach- prefix).
OK, how about one step at a time. It's already a huge step to move
things around (between Kconfig, and tangled source, and headers...).
The advantage of move towards a known target (sub-arch) is there's
infrastructure in place to support it already. I don't think it's a
dead-end to go there and then look towards the issues you brought up.
> And since this will appear hard-coded in include lines
> in source files, we do need to decide one way or the
> other.
Things move all the time, it's just a simple matter of patching ;-)
Or did I misunderstand you?
thanks,
-chris
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-17 17:58 ` Chris Wright
@ 2005-05-18 18:20 ` Christian Limpach
0 siblings, 0 replies; 27+ messages in thread
From: Christian Limpach @ 2005-05-18 18:20 UTC (permalink / raw)
To: Chris Wright
Cc: Magenheimer, Dan (HP Labs Fort Collins), xen-devel,
Mark Williamson
On 5/17/05, Chris Wright <chrisw@osdl.org> wrote:
> * Magenheimer, Dan (HP Labs Fort Collins) (dan.magenheimer@hp.com) wrote:
> > Where are xen-generic header files going to go?
>
> Will include/xen/ work for you?
If that's acceptable, then I think that any of arch/xen (without the
arch specific subdirectories), xen (toplevel xen, how does it compare
in significance/ubiquity to crypto, fs, ipc, net, security or sound?)
or {kernel,mm,drivers/pci}/xen would seem just as reasonable and make
more sense than drivers/xen...
christian
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-18 17:17 ` Chris Wright
@ 2005-05-18 18:35 ` Zachary Amsden
0 siblings, 0 replies; 27+ messages in thread
From: Zachary Amsden @ 2005-05-18 18:35 UTC (permalink / raw)
To: Chris Wright
Cc: Magenheimer, Dan (HP Labs Fort Collins), xen-devel,
Mark Williamson, Vincent Hanquez
Chris Wright wrote:
>* Magenheimer, Dan (HP Labs Fort Collins) (dan.magenheimer@hp.com) wrote:
>
>
>>>>So I'd vote for:
>>>>
>>>>xen arch code in arch/$(ARCH)/xen/
>>>>
>>>>
>>>that's effectively sub-arch
>>>
>>>
>>The difference is admittedly very subtle (though probably
>>not to some Linux kernel developer purists). The question
>>is whether xen is subsidiary architecture (which uses
>>the mach- prefix) or whether it is functionality that can
>>be turned on or off (no mach- prefix).
>>
>>
>
>OK, how about one step at a time. It's already a huge step to move
>things around (between Kconfig, and tangled source, and headers...).
>The advantage of move towards a known target (sub-arch) is there's
>infrastructure in place to support it already. I don't think it's a
>dead-end to go there and then look towards the issues you brought up.
>
>
Xen needs it's own mechanisms for implementing TLB flushes and other
hardware type operations. Those operations are hardcoded in header
files in the asm-i386 directory. It is just plain weird to have a
completely separate set of functions and macros, say
xen_local_save_flags(). Many of these macros and functions are used in
common kernel code, and it would be rather taboo to #ifdef the kernel
all over the place; #ifdef'ing the asm-i386 code for Xen support is also
fairly ugly.
The mach-xen approach has the advantage that functions like this,
local_save_flags can be moved into mach-default. Then if you build a
Xen subarchitecture kernel, you can override any definitions you need by
placing an alternative implementation in include/asm-i386/mach-xen -
this system is already in place and works quite nicely.
If you've already got the sub-arch prefix, you also get your own
arch/i386/mach-xen directory for xen specific support code for
bootstrapping, reboot, shutdown, and a bunch of other platform type
operations.
If you think about virtualization as a platform, classical
virtualization is where the platform is a clone of a physical machine.
Para-virtualization is where the platform presented to the operating
system is shifted, but the underlying CPU/MMU hardware is the same.
That is arguably exactly what sub-architecture support is supposed to
provide.
Zach
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-18 16:53 ` Chris Wright
@ 2005-05-18 18:56 ` Vincent Hanquez
0 siblings, 0 replies; 27+ messages in thread
From: Vincent Hanquez @ 2005-05-18 18:56 UTC (permalink / raw)
To: Chris Wright
Cc: Magenheimer, Dan (HP Labs Fort Collins), xen-devel,
Mark Williamson, Vincent Hanquez
On Wed, May 18, 2005 at 09:53:31AM -0700, Chris Wright wrote:
> Do you have a list of more of the consolidation/cleanups like the
> user_mode/user_mode_vm bits that you sent upstream?
For the moment nothing to submit that won't be too xen specific.
If you have any ideas however, feel free to submit it.
--
Vincent Hanquez
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-18 16:47 ` Chris Wright
@ 2005-05-18 19:00 ` Vincent Hanquez
2005-05-18 19:48 ` Zachary Amsden
0 siblings, 1 reply; 27+ messages in thread
From: Vincent Hanquez @ 2005-05-18 19:00 UTC (permalink / raw)
To: Chris Wright
Cc: Magenheimer, Dan (HP Labs Fort Collins), xen-devel,
Mark Williamson, Vincent Hanquez
On Wed, May 18, 2005 at 09:47:48AM -0700, Chris Wright wrote:
> * Magenheimer, Dan (HP Labs Fort Collins) (dan.magenheimer@hp.com) wrote:
> > Um, one other minor semantic issue. The semantics of
> > using mach-xxx may be inappropriate. If my understanding
> > is correct, two mach-xxx's cannot both be built, e.g. one
> > cannot build a kernel which supports (for i386) both
> > mach-es7000 and mach-voyager.
>
> Yes, I had thought about this. It's not clear to me it's problematic yet.
I guess it could be, as if I understood correctly Keir's later post, we
would like to run on other subarch.
> The primary goal is to avoid code duplication to keep maintenance sane.
> Clean way to do that is what really matters.
indeed.
> > xen generic code in drivers/xen/core/
>
> yup (although no need for core/ subdir)
there's already some directories in drivers/xen/ for xen's drivers.
so keeping core/ would probably be clearer.
--
Vincent Hanquez
^ permalink raw reply [flat|nested] 27+ messages in thread
* RE: linux/arch/xen/i386 or linux/arch/i386/xen
@ 2005-05-18 19:21 Magenheimer, Dan (HP Labs Fort Collins)
0 siblings, 0 replies; 27+ messages in thread
From: Magenheimer, Dan (HP Labs Fort Collins) @ 2005-05-18 19:21 UTC (permalink / raw)
To: Chris Wright; +Cc: xen-devel, Mark Williamson, Vincent Hanquez
> OK, how about one step at a time. It's already a huge step to move
> things around (between Kconfig, and tangled source, and headers...).
> The advantage of move towards a known target (sub-arch) is there's
> infrastructure in place to support it already. I don't think it's a
> dead-end to go there and then look towards the issues you brought up.
It's OK with me. Sometimes two-step changes are better than one.
It would be nice to have finished the second step before Xen support
finds its way into the mainstream kernel though (IMHO).
> > And since this will appear hard-coded in include lines
> > in source files, we do need to decide one way or the
> > other.
>
> Things move all the time, it's just a simple matter of patching ;-)
> Or did I misunderstand you?
Yeah, I was just trying to pre-answer the question: "Does this
silly naming issue really matter?" with, yes, a fair number of
files will have to change.
Dan
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-18 19:00 ` Vincent Hanquez
@ 2005-05-18 19:48 ` Zachary Amsden
2005-05-18 20:31 ` Vincent Hanquez
0 siblings, 1 reply; 27+ messages in thread
From: Zachary Amsden @ 2005-05-18 19:48 UTC (permalink / raw)
To: Vincent Hanquez
Cc: Magenheimer, Dan (HP Labs Fort Collins), Chris Wright, xen-devel,
Mark Williamson
Vincent Hanquez wrote:
>On Wed, May 18, 2005 at 09:47:48AM -0700, Chris Wright wrote:
>
>
>>* Magenheimer, Dan (HP Labs Fort Collins) (dan.magenheimer@hp.com) wrote:
>>
>>
>>>Um, one other minor semantic issue. The semantics of
>>>using mach-xxx may be inappropriate. If my understanding
>>>is correct, two mach-xxx's cannot both be built, e.g. one
>>>cannot build a kernel which supports (for i386) both
>>>mach-es7000 and mach-voyager.
>>>
>>>
>>Yes, I had thought about this. It's not clear to me it's problematic yet.
>>
>>
>
>I guess it could be, as if I understood correctly Keir's later post, we
>would like to run on other subarch.
>
>
I see, you would like domain zero to support other subarchs?
I guarantee you it is not going to be voyager! There should be no issue
for user domains, but could domain zero could potentially need to know
things about the hardware subarch, say for some large NUMA systems?
Zach
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-18 19:48 ` Zachary Amsden
@ 2005-05-18 20:31 ` Vincent Hanquez
0 siblings, 0 replies; 27+ messages in thread
From: Vincent Hanquez @ 2005-05-18 20:31 UTC (permalink / raw)
To: Zachary Amsden
Cc: Magenheimer, Dan (HP Labs Fort Collins), Chris Wright, xen-devel,
Mark Williamson
On Wed, May 18, 2005 at 12:48:03PM -0700, Zachary Amsden wrote:
> I see, you would like domain zero to support other subarchs?
>
> I guarantee you it is not going to be voyager! There should be no issue
> for user domains, but could domain zero could potentially need to know
> things about the hardware subarch, say for some large NUMA systems?
I think we don't want to support the voyager subarch, but maybe the
bigsmp and es7000.
--
Vincent Hanquez
^ permalink raw reply [flat|nested] 27+ messages in thread
* RE: linux/arch/xen/i386 or linux/arch/i386/xen
@ 2005-05-19 17:18 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-19 18:55 ` Chris Wright
0 siblings, 1 reply; 27+ messages in thread
From: Magenheimer, Dan (HP Labs Fort Collins) @ 2005-05-19 17:18 UTC (permalink / raw)
To: Christian.Limpach, Chris Wright; +Cc: xen-devel, Mark Williamson
> > Will include/xen/ work for you?
>
> If that's acceptable, then I think that any of arch/xen (without the
> arch specific subdirectories), xen (toplevel xen, how does it compare
> in significance/ubiquity to crypto, fs, ipc, net, security or sound?)
> or {kernel,mm,drivers/pci}/xen would seem just as reasonable and make
> more sense than drivers/xen...
>
> christian
After some thought (and perhaps for the first time :-) I agree
with Christian.
Chris, any chance you can try out the idea of a top-level
xen directory on Linus? It's really where it belongs...
the xen drivers aren't really drivers anyway, more like IPC
to provide virtual drivers. And so much of the functionality
is cross-arch AND even potentially cross-sub-arch
It's probably a political non-starter, but can't hurt to ask.
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: linux/arch/xen/i386 or linux/arch/i386/xen
2005-05-19 17:18 Magenheimer, Dan (HP Labs Fort Collins)
@ 2005-05-19 18:55 ` Chris Wright
0 siblings, 0 replies; 27+ messages in thread
From: Chris Wright @ 2005-05-19 18:55 UTC (permalink / raw)
To: Magenheimer, Dan (HP Labs Fort Collins)
Cc: Chris Wright, xen-devel, Mark Williamson, Christian.Limpach
* Magenheimer, Dan (HP Labs Fort Collins) (dan.magenheimer@hp.com) wrote:
> Chris, any chance you can try out the idea of a top-level
> xen directory on Linus? It's really where it belongs...
> the xen drivers aren't really drivers anyway, more like IPC
> to provide virtual drivers. And so much of the functionality
> is cross-arch AND even potentially cross-sub-arch
>
> It's probably a political non-starter, but can't hurt to ask.
Sure, I'm actually more concerned about getting the arch bit correct.
Where the generic stuff goes shouldn't be a major issue IMHO.
thanks,
-chris
^ permalink raw reply [flat|nested] 27+ messages in thread
end of thread, other threads:[~2005-05-19 18:55 UTC | newest]
Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-05-18 17:00 linux/arch/xen/i386 or linux/arch/i386/xen Magenheimer, Dan (HP Labs Fort Collins)
2005-05-18 17:17 ` Chris Wright
2005-05-18 18:35 ` Zachary Amsden
-- strict thread matches above, loose matches on Subject: below --
2005-05-19 17:18 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-19 18:55 ` Chris Wright
2005-05-18 19:21 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-18 15:09 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-18 16:47 ` Chris Wright
2005-05-18 19:00 ` Vincent Hanquez
2005-05-18 19:48 ` Zachary Amsden
2005-05-18 20:31 ` Vincent Hanquez
2005-05-17 19:05 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-17 18:09 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-17 18:14 ` Chris Wright
2005-05-18 10:15 ` Vincent Hanquez
2005-05-18 16:53 ` Chris Wright
2005-05-18 18:56 ` Vincent Hanquez
2005-05-17 17:25 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-17 17:58 ` Chris Wright
2005-05-18 18:20 ` Christian Limpach
2005-05-16 22:42 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-16 22:50 ` Mark Williamson
2005-05-16 23:22 ` Chris Wright
2005-05-16 21:37 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-16 22:21 ` Mark Williamson
2005-05-16 17:36 Magenheimer, Dan (HP Labs Fort Collins)
2005-05-16 18:07 ` Chris Wright
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.