WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

RE: [Xen-devel] upstream xen-ified kernel building challenge

To: "Marc - A. Dahlhaus [ Administration | Westermann GmbH ]" <mad@xxxxxx>
Subject: RE: [Xen-devel] upstream xen-ified kernel building challenge
From: Dan Magenheimer <dan.magenheimer@xxxxxxxxxx>
Date: Wed, 24 Jun 2009 09:49:49 -0700 (PDT)
Cc: Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Wed, 24 Jun 2009 09:50:28 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1245837842.16606.32.camel@marc>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thanks Marc!  It looks like the magic key I was missing is
CONFIG_HIGHMEM64G.  The following works for a 32-bit 2.6.30
kernel.  It misses the frame buffer drivers and paravirtualized
spinlocks but results in a kernel runnable on Xen.

cat > .config << "EOF"
CONFIG_PARAVIRT_GUEST=y
CONFIG_XEN=y
CONFIG_HIGHMEM64G=y
EOF
yes '' | make oldconfig

> -----Original Message-----
> From: Marc - A. Dahlhaus [ Administration | Westermann GmbH ]
> [mailto:mad@xxxxxx]
> Sent: Wednesday, June 24, 2009 4:04 AM
> To: Dan Magenheimer
> Cc: Xen-devel
> Subject: Re: [Xen-devel] upstream xen-ified kernel building challenge
> 
> 
> Hello Dan,
> 
> it could look like this:
> 
> cat > .config << "EOF"
> CONFIG_PARAVIRT_GUEST=y
> CONFIG_XEN=y
> CONFIG_PARAVIRT=y
> CONFIG_PARAVIRT_SPINLOCKS=y
> CONFIG_PARAVIRT_CLOCK=y
> CONFIG_X86_CMPXCHG64=y
> CONFIG_HIGHMEM64G=y
> CONFIG_X86_PAE=y
> CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
> CONFIG_PHYS_ADDR_T_64BIT=y
> CONFIG_XEN_NETDEV_FRONTEND=y
> CONFIG_XEN_KBDDEV_FRONTEND=y
> CONFIG_FB_SYS_FILLRECT=y
> CONFIG_FB_SYS_COPYAREA=y
> CONFIG_FB_SYS_IMAGEBLIT=y
> CONFIG_FB_SYS_FOPS=y
> CONFIG_FB_DEFERRED_IO=y
> CONFIG_XEN_FBDEV_FRONTEND=y
> EOF
> yes '' | make oldconfig
> 
> (the options could be shortened with a for loop but it would make it
> unreadable...)
> 
> I think the oldconfig run will get and set your arch and shift options
> if needed for x86_64 but i haven't testet that but it should work on
> 32bit PAE systems...
> 
> have fun,
> 
> Marc
> 
> Am Dienstag, den 23.06.2009, 16:06 -0700 schrieb Dan Magenheimer:
> > A fun challenge for those of you who eat raw upstream kernels
> > for lunch:
> > 
> > 1) Untar an upstream (say 2.6.30) kernel.org kernel
> > 2) From the bash command line ONLY, execute one or more
> >    commands to configure the kernel so "make" will build
> >    a fully xen-ified kernel.  (Everything else can
> >    use the defconfig default.)
> > 
> > For extra credit:
> > 3) Determine the shortest sequence of commands to do
> >    the above.
> > 
> > After many tries, I have not been able to do (2) at all.
> > I always have to fall back to an existing .config file
> > that was created using menuconfig.  (I *suspect* this is
> > because PARAVIRT_GUEST is defined in Kconfig using a
> > menuconfig line rather than a config line, but am unsure.)
> > 
> > Dan
> > 
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@xxxxxxxxxxxxxxxxxxx
> > http://lists.xensource.com/xen-devel
> 
>

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>