Thank you for the review.
Here is the updated one. I also found one more typo with a spell checker.
>From 922c22bf141059f9ad99686d5682d80fac413341 Mon Sep 17 00:00:00 2001
From: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
Date: Wed, 28 May 2008 17:13:53 +0900
Subject: [PATCH] ia64/xen: a recipe for using xen/ia64 with pv_ops.
Recipe for useing xen/ia64 with pv_ops domU.
Signed-off-by: Akio Takebe <takebe_akio@xxxxxxxxxxxxxx>
Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
Cc: Randy Dunlap <randy.dunlap@xxxxxxxxxx>
---
Documentation/ia64/xen.txt | 183 ++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 183 insertions(+), 0 deletions(-)
create mode 100644 Documentation/ia64/xen.txt
diff --git a/Documentation/ia64/xen.txt b/Documentation/ia64/xen.txt
new file mode 100644
index 0000000..c61a99f
--- /dev/null
+++ b/Documentation/ia64/xen.txt
@@ -0,0 +1,183 @@
+ Recipe for getting/building/running Xen/ia64 with pv_ops
+ --------------------------------------------------------
+
+This recipe describes how to get xen-ia64 source and build it,
+and run domU with pv_ops.
+
+============
+Requirements
+============
+
+ - python
+ - mercurial
+ it (aka "hg") is an open-source source code
+ management software. See the below.
+ http://www.selenic.com/mercurial/wiki/
+ - git
+ - bridge-utils
+
+=================================
+Getting and Building Xen and Dom0
+=================================
+
+ My environment is;
+ Machine : Tiger4
+ Domain0 OS : RHEL5
+ DomainU OS : RHEL5
+
+ 1. Download source
+ # hg clone http://xenbits.xensource.com/ext/ia64/xen-unstable.hg
+ # cd xen-unstable.hg
+ # hg clone http://xenbits.xensource.com/ext/ia64/linux-2.6.18-xen.hg
+
+ 2. # make world
+
+ 3. # make install-tools
+
+ 4. copy kernels and xen
+ # cp xen/xen.gz /boot/efi/efi/redhat/
+ # cp build-linux-2.6.18-xen_ia64/vmlinux.gz \
+ /boot/efi/efi/redhat/vmlinuz-2.6.18.8-xen
+
+ 5. make initrd for Dom0/DomU
+ # make -C linux-2.6.18-xen.hg ARCH=ia64 modules_install \
+ O=$(/bin/pwd)/build-linux-2.6.18-xen_ia64
+ # mkinitrd -f /boot/efi/efi/redhat/initrd-2.6.18.8-xen.img \
+ 2.6.18.8-xen --builtin mptspi --builtin mptbase \
+ --builtin mptscsih --builtin uhci-hcd --builtin ohci-hcd \
+ --builtin ehci-hcd
+
+================================
+Making a disk image for guest OS
+================================
+
+ 1. make file
+ # dd if=/dev/zero of=/root/rhel5.img bs=1M seek=4096 count=0
+ # mke2fs -F -j /root/rhel5.img
+ # mount -o loop /root/rhel5.img /mnt
+ # cp -ax /{dev,var,etc,usr,bin,sbin,lib} /mnt
+ # mkdir /mnt/{root,proc,sys,home,tmp}
+
+ Note: You may miss some device files. If so, please create them
+ with mknod. Or you can use tar instead of cp.
+
+ 2. modify DomU's fstab
+ # vi /mnt/etc/fstab
+ /dev/xvda1 / ext3 defaults 1 1
+ none /dev/pts devpts gid=5,mode=620 0 0
+ none /dev/shm tmpfs defaults 0 0
+ none /proc proc defaults 0 0
+ none /sys sysfs defaults 0 0
+
+ 3. modify inittab
+ set runlevel to 3 to avoid X trying to start
+ # vi /mnt/etc/inittab
+ id:3:initdefault:
+ Start a getty on the hvc0 console
+ X0:2345:respawn:/sbin/mingetty hvc0
+ tty1-6 mingetty can be commented out
+
+ 4. add hvc0 into /etc/securetty
+ # vi /mnt/etc/securetty (add hvc0)
+
+ 5. umount
+ # umount /mnt
+
+FYI, virt-manager can also make a disk image for guest OS.
+It's GUI tools and easy to make it.
+
+==================
+Boot Xen & Domain0
+==================
+
+ 1. replace elilo
+ elilo of RHEL5 can boot Xen and Dom0.
+ If you use old elilo (e.g RHEL4), please download from the below
+ http://elilo.sourceforge.net/cgi-bin/blosxom
+ and copy into /boot/efi/efi/redhat/
+ # cp elilo-3.6-ia64.efi /boot/efi/efi/redhat/elilo.efi
+
+ 2. modify elilo.conf (like the below)
+ # vi /boot/efi/efi/redhat/elilo.conf
+ prompt
+ timeout=20
+ default=xen
+ relocatable
+
+ image=vmlinuz-2.6.18.8-xen
+ label=xen
+ vmm=xen.gz
+ initrd=initrd-2.6.18.8-xen.img
+ read-only
+ append=" -- rhgb root=/dev/sda2"
+
+The append options before "--" are for xen hypervisor,
+the options after "--" are for dom0.
+
+FYI, your machine may need console options like
+"com1=19200,8n1 console=vga,com1". For example,
+append="com1=19200,8n1 console=vga,com1 -- rhgb console=tty0 \
+console=ttyS0 root=/dev/sda2"
+
+=====================================
+Getting and Building domU with pv_ops
+=====================================
+
+ 1. get pv_ops tree
+ # git clone
http://people.valinux.co.jp/~yamahata/xen-ia64/linux-2.6-xen-ia64.git/
+
+ 2. git branch (if necessary)
+ # cd linux-2.6-xen-ia64/
+ # git checkout -b your_branch origin/xen-ia64-domu-minimal-2008may19
+ (Note: The current branch is xen-ia64-domu-minimal-2008may19.
+ But you would find the new branch. You can see with
+ "git branch -r" to get the branch lists.
+
http://people.valinux.co.jp/~yamahata/xen-ia64/for_eagl/linux-2.6-ia64-pv-ops.git/
+ is also available. The tree is based on
+ git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 test)
+
+
+ 3. copy .config for pv_ops of domU
+ # cp arch/ia64/configs/xen_domu_wip_defconfig .config
+
+ 4. make kernel with pv_ops
+ # make oldconfig
+ # make
+
+ 5. install the kernel and initrd
+ # cp vmlinux.gz /boot/efi/efi/redhat/vmlinuz-2.6-pv_ops-xenU
+ # make modules_install
+ # mkinitrd -f /boot/efi/efi/redhat/initrd-2.6-pv_ops-xenU.img \
+ 2.6.26-rc3xen-ia64-08941-g1b12161 --builtin mptspi \
+ --builtin mptbase --builtin mptscsih --builtin uhci-hcd \
+ --builtin ohci-hcd --builtin ehci-hcd
+
+========================
+Boot DomainU with pv_ops
+========================
+
+ 1. make config of DomU
+ # vi /etc/xen/rhel5
+ kernel = "/boot/efi/efi/redhat/vmlinuz-2.6-pv_ops-xenU"
+ ramdisk = "/boot/efi/efi/redhat/initrd-2.6-pv_ops-xenU.img"
+ vcpus = 1
+ memory = 512
+ name = "rhel5"
+ disk = [ 'file:/root/rhel5.img,xvda1,w' ]
+ root = "/dev/xvda1 ro"
+ extra= "rhgb console=hvc0"
+
+ 2. After boot xen and dom0, start xend
+ # /etc/init.d/xend start
+ ( In the debugging case, # XEND_DEBUG=1 xend trace_start )
+
+ 3. start domU
+ # xm create -c rhel5
+
+=========
+Reference
+=========
+- Wiki of Xen/IA64 upstream merge
+ http://wiki.xensource.com/xenwiki/XenIA64/UpstreamMerge
+
+Written by Akio Takebe <takebe_akio@xxxxxxxxxxxxxx> on 28 May 2008
--
1.6.0.2
On Thu, Oct 16, 2008 at 09:45:32PM -0700, Randy Dunlap wrote:
> On Fri, 17 Oct 2008 11:18:12 +0900 Isaku Yamahata wrote:
>
> > diff --git a/Documentation/ia64/xen.txt b/Documentation/ia64/xen.txt
> > new file mode 100644
> > index 0000000..a5c6993
> > --- /dev/null
> > +++ b/Documentation/ia64/xen.txt
> > @@ -0,0 +1,183 @@
> > + Recipe for getting/building/running Xen/ia64 with pv_ops
> > + --------------------------------------------------------
> > +
> > +This recipe discribes how to get xen-ia64 source and build it,
>
> describes
>
> > +and run domU with pv_ops.
> > +
> > +===========
> > +Requirement
>
> Requirements (?)
>
> > +===========
> > +
> > + - python
> > + - mercurial
> > + it (aka "hg") is a open-source source code
>
> an
>
> > + management software. See the below.
> > + http://www.selenic.com/mercurial/wiki/
> > + - git
> > + - bridge-utils
> > +
> > +=================================
> > +Getting and Building Xen and Dom0
> > +=================================
> > +
> > + My enviroment is;
>
> My environment is:
>
> > + Machine : Tiger4
> > + Domain0 OS : RHEL5
> > + DomainU OS : RHEL5
> > +
> > + 1. Download source
> > + # hg clone http://xenbits.xensource.com/ext/ia64/xen-unstable.hg
> > + # cd xen-unstable.hg
> > + # hg clone http://xenbits.xensource.com/ext/ia64/linux-2.6.18-xen.hg
> > +
> > + 2. # make world
> > +
> > + 3. # make install-tools
> > +
> > + 4. copy kernels and xen
> > + # cp xen/xen.gz /boot/efi/efi/redhat/
> > + # cp build-linux-2.6.18-xen_ia64/vmlinux.gz \
> > + /boot/efi/efi/redhat/vmlinuz-2.6.18.8-xen
> > +
> > + 5. make initrd for Dom0/DomU
> > + # make -C linux-2.6.18-xen.hg ARCH=ia64 modules_install \
> > + O=$(/bin/pwd)/build-linux-2.6.18-xen_ia64
> > + # mkinitrd -f /boot/efi/efi/redhat/initrd-2.6.18.8-xen.img \
> > + 2.6.18.8-xen --builtin mptspi --builtin mptbase \
> > + --builtin mptscsih --builtin uhci-hcd --builtin ohci-hcd \
> > + --builtin ehci-hcd
> > +
> > +================================
> > +Making a disk image for guest OS
> > +================================
> > +
> > + 1. make file
> > + # dd if=/dev/zero of=/root/rhel5.img bs=1M seek=4096 count=0
> > + # mke2fs -F -j /root/rhel5.img
> > + # mount -o loop /root/rhel5.img /mnt
> > + # cp -ax /{dev,var,etc,usr,bin,sbin,lib} /mnt
> > + # mkdir /mnt/{root,proc,sys,home,tmp}
> > +
> > + Note: You may miss some device files. If so, please create them
> > + with mknod. Or you can use tar intead of cp.
> > +
> > + 2. modify DomU's fstab
> > + # vi /mnt/etc/fstab
> > + /dev/xvda1 / ext3 defaults 1 1
> > + none /dev/pts devpts gid=5,mode=620 0 0
> > + none /dev/shm tmpfs defaults 0 0
> > + none /proc proc defaults 0 0
> > + none /sys sysfs defaults 0 0
> > +
> > + 3. modify inittab
> > + set runlevel to 3 to avoid X trying to start
> > + # vi /mnt/etc/inittab
> > + id:3:initdefault:
> > + Start a getty on the hvc0 console
> > + X0:2345:respawn:/sbin/mingetty hvc0
> > + tty1-6 mingetty can be commented out
> > +
> > + 4. add hvc0 into /etc/securetty
> > + # vi /mnt/etc/securetty (add hvc0)
> > +
> > + 5. umount
> > + # umount /mnt
> > +
> > +FYI, virt-manager can also make a disk image for guest OS.
> > +It's GUI tools and easy to make it.
> > +
> > +==================
> > +Boot Xen & Domain0
> > +==================
> > +
> > + 1. replace elilo
> > + elilo of RHEL5 can boot Xen and Dom0.
> > + If you use old elilo (e.g RHEL4), please download from the below
> > + http://elilo.sourceforge.net/cgi-bin/blosxom
> > + and copy into /boot/efi/efi/redhat/
> > + # cp elilo-3.6-ia64.efi /boot/efi/efi/redhat/elilo.efi
> > +
> > + 2. modify elilo.conf (like the below)
> > + # vi /boot/efi/efi/redhat/elilo.conf
> > + prompt
> > + timeout=20
> > + default=xen
> > + relocatable
> > +
> > + image=vmlinuz-2.6.18.8-xen
> > + label=xen
> > + vmm=xen.gz
> > + initrd=initrd-2.6.18.8-xen.img
> > + read-only
> > + append=" -- rhgb root=/dev/sda2"
> > +
> > +The append options before "--" are for xen hypervisor,
> > +the options after "--" are for dom0.
> > +
> > +FYI, your machine may need console options like
> > +"com1=19200,8n1 console=vga,com1". For example,
> > +append="com1=19200,8n1 console=vga,com1 -- rhgb console=tty0 \
> > +console=ttyS0 root=/dev/sda2"
> > +
> > +=====================================
> > +Getting and Building domU with pv_ops
> > +=====================================
> > +
> > + 1. get pv_ops tree
> > + # git clone
> > http://people.valinux.co.jp/~yamahata/xen-ia64/linux-2.6-xen-ia64.git/
> > +
> > + 2. git branch (if necessary)
> > + # cd linux-2.6-xen-ia64/
> > + # git checkout -b your_branch origin/xen-ia64-domu-minimal-2008may19
> > + (Note: The current branch is xen-ia64-domu-minimal-2008may19.
> > + But you would find the new branch. You can see with
> > + "git branch -r" to get the branch lists.
> > +
> > http://people.valinux.co.jp/~yamahata/xen-ia64/for_eagl/linux-2.6-ia64-pv-ops.git/
> > + is also available. The tree is based on
> > + git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 test)
> > +
> > +
> > + 3. copy .config for pv_ops of domU
> > + # cp arch/ia64/configs/xen_domu_wip_defconfig .config
> > +
> > + 4. make kernel with pv_ops
> > + # make oldconfig
> > + # make
> > +
> > + 5. install the kernel and initrd
> > + # cp vmlinux.gz /boot/efi/efi/redhat/vmlinuz-2.6-pv_ops-xenU
> > + # make modules_install
> > + # mkinitrd -f /boot/efi/efi/redhat/initrd-2.6-pv_ops-xenU.img \
> > + 2.6.26-rc3xen-ia64-08941-g1b12161 --builtin mptspi \
> > + --builtin mptbase --builtin mptscsih --builtin uhci-hcd \
> > + --builtin ohci-hcd --builtin ehci-hcd
> > +
> > +========================
> > +Boot DomainU with pv_ops
> > +========================
> > +
> > + 1. make config of DomU
> > + # vi /etc/xen/rhel5
> > + kernel = "/boot/efi/efi/redhat/vmlinuz-2.6-pv_ops-xenU"
> > + ramdisk = "/boot/efi/efi/redhat/initrd-2.6-pv_ops-xenU.img"
> > + vcpus = 1
> > + memory = 512
> > + name = "rhel5"
> > + disk = [ 'file:/root/rhel5.img,xvda1,w' ]
> > + root = "/dev/xvda1 ro"
> > + extra= "rhgb console=hvc0"
> > +
> > + 2. After boot xen and dom0, start xend
> > + # /etc/init.d/xend start
> > + ( In the debugging case, # XEND_DEBUG=1 xend trace_start )
> > +
> > + 3. start domU
> > + # xm create -c rhel5
> > +
> > +=========
> > +Reference
> > +=========
> > +- Wiki of Xen/IA64 upstream merge
> > + http://wiki.xensource.com/xenwiki/XenIA64/UpstreamMerge
> > +
> > +Witten by Akio Takebe <takebe_akio@xxxxxxxxxxxxxx> on 28 May 2008
>
> Written
>
> > --
>
> ---
> ~Randy
>
--
yamahata
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
|