Skip to contentSkip to conversation

PV Grub Questions

PATCH New Todd Deshane 6 participants 40 messages Aug 26, 2008 – Apr 22, 2009

lore
Share & tools
lore
#0 lore raw

I am using Xen 3.3 from source.

My PV guest boots fine with the normal kernel and initrd options

When I boot the guest with PV GRUB I only get:

GNU GRUB version 0.97 (65536K lower / 0K upper memory)

[ Minimal BASH-like line editing is supported. For
the first word, TAB lists possible command
completions. Anywhere else TAB lists the possible completions of a device/filename. ]

grubdom>

Normally in this situation I would do one of the following:

a)
root (hd0,1)
setup (hd0)
boot (or quit)

In this case however setup and quit are unknown commands. Is that expected?

b)
kernel (hd0,1)/boot/vmlinuz-2.6.18.8-xen
initrd (hd0,1)/boot/initrd.img-2.6.18.8-xen
boot

In this case, I get
Page fault in pagetable walk (access to invalid memory?).

I get dropped back to the dom0 command line and the guest is still running xm console guest bring me to a grubdom> prompt.

If I only specify a kernel, i.e.
kernel (hd0,1)/boot/vmlinuz-2.6.18.8-xen
boot

It starts booting the kernel, but gets stuck during the boot process at:

rtc: IRQ 8 is not free.
Non-volatile memory driver v1.2
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
loop: loaded (max 8 devices)
Xen virtual console successfully installed as xvc0 Event-channel device installed.
netfront: Initialising virtual ethernet driver.
xen-vbd: registered block device major 3
hda:

(Full boot output included below ***)

Below is all the relevant information that I could think of.

Any ideas on the best way to troubleshoot?

Thanks in advance.

Cheers,
Todd

APPENDIX OF TROUBLESHOOTING INFO

The disk image was created with dd and the partitions were made with parted --script <disk image> <commands>

# fdisk -l output
fdisk -l /root/benchvm/bin/img-xen-guest/image-0.img
You must set cylinders.
You can do this from the extra functions menu.

Disk /root/benchvm/bin/img-xen-guest/image-0.img: 0 MB, 0 bytes 4 heads, 32 sectors/track, 0 cylinders
Units = cylinders of 128 * 512 = 65536 bytes
Disk identifier: 0x00019635

Device Boot Start
End Blocks Id System
/root/benchvm/bin/img-xen-guest/image-0.img1 1
7813 500016 82 Linux swap / Solaris
Partition 1 has different physical/logical endings:

     phys=(1023, 3, 32) logical=(7812, 3, 32)
/root/benchvm/bin/img-xen-guest/image-0.img2            7814
76406     4389952   83  Linux
Partition 2 has different physical/logical beginnings (non-Linux?):
     phys=(1023, 3, 32) logical=(7813, 0, 1)
Partition 2 has different physical/logical endings:
     phys=(1023, 3, 32) logical=(76405, 3, 32)

#pygrub try

pygrub /root/benchvm/bin/img-xen-guest/image-0.img Traceback (most recent call last):
File "/usr/bin/pygrub", line 655, in <module>
fs = fsimage.open(file, get_fs_offset(file))
File "/usr/bin/pygrub", line 117, in get_fs_offset

    offset += get_solaris_slice(file, offset)

File "/usr/bin/pygrub", line 80, in get_solaris_slice
raise RuntimeError, "Invalid disklabel magic"
RuntimeError: Invalid disklabel magic

My guest config:

kernel = "/usr/lib64/xen/boot/pv-grub-x86_64.gz"
extra = "(hd0,1)/boot/grub/menu.lst"
memory = 64
vif = [ '' ]
disk = [ 'tap:aio:/root/benchvm/bin/img-xen-guest/image-0.img,hda,w' ] root = "/dev/hda2 ro"

My grub config file

default 0
timeout 3

title Ubuntu 8.04, kernel 2.6.27-rc4 Default
root (hd0,1)
kernel /boot/vmlinuz root=UUID=d301f12e-0d78-416d-8946-a091291fffe7
ro quiet splash
quiet

title Ubuntu 8.04, kernel 2.6.24-16-xen
root (hd0,1)
kernel /boot/vmlinuz-2.6.24-16-xen
root=UUID=d301f12e-0d78-416d-8946-a091291fffe7 ro quiet splash
initrd /boot/initrd.img-2.6.24-16-xen
quiet

title Ubuntu 8.04, kernel 2.6.18.8-xen
root (hd0,1)
kernel /boot/vmlinuz-2.6.18.8-xen
root=UUID=d301f12e-0d78-416d-8946-a091291fffe7 ro quiet splash
initrd /boot/initrd.img-2.6.18.8-xen
quiet

***Full boot outuput from only using kernel, then boot on grubdom prompt

close blk: backend at /local/domain/0/backend/tap/30/768
WARNING: g.e. still in use! (19)
Bootdata ok (command line is )
Linux version 2.6.18.8-xen (root@test1) (gcc version 4.2.3 (Ubuntu 4.2.3-2ubuntu7)) #1 SMP Sun Aug 24 22:15:44 EDT 2008
BIOS-provided physical RAM map:
Xen: 0000000000000000 - 0000000004800000 (usable)
No mptable found.
Built 1 zonelists. Total pages: 17147
Kernel command line:
Initializing CPU#0
PID hash table entries: 512 (order: 9, 4096 bytes)
Xen reported: 2393.998 MHz processor.
Console: colour dummy device 80x25
Dentry cache hash table entries: 16384 (order: 5, 131072 bytes) Inode-cache hash table entries: 8192 (order: 4, 65536 bytes) Software IO TLB disabled
Memory: 60064k/73728k available (2022k kernel code, 5412k reserved, 873k data, 176k init)
Calibrating delay using timer specific routine.. 4788.99 BogoMIPS (lpj=23944986) Security Framework v1.0.0 initialized
Capability LSM initialized
Mount-cache hash table entries: 256
, L1 D cache: 32K
CPU: Physical Processor ID: 0
CPU: Processor Core ID: 0
SMP alternatives: switching to UP code
Freeing SMP alternatives: 28k freed
Brought up 1 CPUs
migration_cost=0
NET: Registered protocol family 16
Brought up 1 CPUs
PCI: setting up Xen PCI frontend stub
ACPI: Interpreter disabled.
Linux Plug and Play Support v0.97 (c) Adam Belay
pnp: PnP ACPI: disabled
suspend: event channel 6
xen_mem: Initialising balloon driver.
PCI: System does not support PCI
PCI: System does not support PCI
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 1, 8192 bytes)
TCP established hash table entries: 4096 (order: 4, 65536 bytes) TCP bind hash table entries: 2048 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 4096 bind 2048)
TCP reno registered
IA-32 Microcode Update Driver: v1.14a-xen <[email protected]>
audit: initializing netlink socket (disabled) audit(1219780377.445:1): initialized
VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 512 (order 0, 4096 bytes) Initializing Cryptographic API
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered (default)
rtc: IRQ 8 is not free.
Non-volatile memory driver v1.2
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
loop: loaded (max 8 devices)
Xen virtual console successfully installed as xvc0
Event-channel device installed.
netfront: Initialising virtual ethernet driver.
xen-vbd: registered block device major 3
hda:

Signature · 3 lines
Todd Deshane
http://todddeshane.net
check out our book: http://runningxen.com
#1 lore raw
Quoted 6 lines · Todd Deshane

root (hd0,1)
setup (hd0)
boot (or quit)

In this case however setup and quit are unknown commands. Is that expected?

Aren't setup and quit only available when running grub as a utility rather than in bootloader mode? setup is the command which installs the grub bootloader program, and quit exits the utility -- neither makes sense from the bootloader command line (which is the mode in which pvgrub runs).

-- Keir

#2 lore raw
Quoted 6 lines · Keir Fraser
Quoted 4 lines · Todd Deshane

root (hd0,1)
setup (hd0)
boot (or quit)

Quoted 8 lines
Quoted 2 lines

In this case however setup and quit are unknown commands. Is that expected?

Aren't setup and quit only available when running grub as a utility rather than in bootloader mode? setup is the command which installs the grub bootloader program, and quit exits the utility -- neither makes sense from the bootloader command line (which is the mode in which pvgrub runs).

Well I have run those many times on broken physical systems to get them to boot, but it is not an essential feature for PV GRUB, I'm just trying to get it to work in general. I was just trying any way in that I could.

Cheers,
Todd

#3 lore raw
In reply to Keir Fraser
Quoted 11 lines · Keir Fraser
Quoted 6 lines · Todd Deshane

root (hd0,1)
setup (hd0)
boot (or quit)

In this case however setup and quit are unknown commands. Is that expected?

Aren't setup and quit only available when running grub as a utility rather than in bootloader mode?

quit is utility only. install/setup works in grub too, and in fact it was the only way to install grub to disk in the very early grub days:
First "cat stage1 stage2 > /dev/fd0", then boot from the floppy, then install grub on the hard disk.

For pvgrub install/setup that doesn't make sense at all because it isn't BIOS-loaded from the guest hard disk in the first place. You have to pass in the path to the config file via extra="(hd0,0)/boot/grub/menu.lst" to make it display a menu though.

cheers,
Gerd

#4 lore raw
In reply to Todd Deshane

Hello,

Quoted 7 lines · Todd Deshane, le Tue 26 Aug 2008 15:57:50 -0400, a écrit :

a)
root (hd0,1)
setup (hd0)
boot (or quit)

In this case however setup and quit are unknown commands. Is that expected?

Yes. The MBR of a partition is supposed to contain a real bootloader, not a PV bootloader, thus the setup command doesn't hold. quit only makes sense when running from a Unix shell, so doesn't make sense here, reboot or halt can be used instead.

Quoted 7 lines

b)
kernel (hd0,1)/boot/vmlinuz-2.6.18.8-xen
initrd (hd0,1)/boot/initrd.img-2.6.18.8-xen
boot

In this case, I get
Page fault in pagetable walk (access to invalid memory?).

Should work :/
Could you send me your images so I can test?

Quoted 11 lines

It starts booting the kernel, but gets stuck during the boot process at:

rtc: IRQ 8 is not free.
Non-volatile memory driver v1.2
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
loop: loaded (max 8 devices)
Xen virtual console successfully installed as xvc0 Event-channel device installed.
netfront: Initialising virtual ethernet driver.
xen-vbd: registered block device major 3
hda:

Is there any message in dom0's dmesg or xm dmesg?

Samuel

#5 lore raw

Hello Samuel,

Thanks again for the response and offer to look into it.

Comments/questions inline.

Quoted 8 lines · Samuel Thibault

Hello,

Quoted 5 lines · Todd Deshane, le Tue 26 Aug 2008 15:57:50 -0400, a écrit :

a)
root (hd0,1)
setup (hd0)
boot (or quit)

Quoted 8 lines
Quoted 2 lines

In this case however setup and quit are unknown commands. Is that expected?

Yes. The MBR of a partition is supposed to contain a real bootloader, not a PV bootloader, thus the setup command doesn't hold. quit only makes sense when running from a Unix shell, so doesn't make sense here, reboot or halt can be used instead.

So do you mean that this is fundamental to a PV guest or just under these circumstances?

Since I am able to run the following when booted into the same guest by passing a kernel and ramdisk.

grub> root (hd0,1)
root (hd0,1)
grub> setup (hd0)
setup (hd0)
Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 16 sectors are embedded.
succeeded
Running "install /boot/grub/stage1 (hd0) (hd0)1+16 p
(hd0,1)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded
Done.
grub> quit
quit

Quoted 11 lines
Quoted 7 lines

b)
kernel (hd0,1)/boot/vmlinuz-2.6.18.8-xen
initrd (hd0,1)/boot/initrd.img-2.6.18.8-xen
boot

In this case, I get
Page fault in pagetable walk (access to invalid memory?).

Should work :/
Could you send me your images so I can test?

Sent a link in a previous private mail, let me know if there are any problems.

Quoted 12 lines
Quoted 11 lines

It starts booting the kernel, but gets stuck during the boot process at:

rtc: IRQ 8 is not free.
Non-volatile memory driver v1.2
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
loop: loaded (max 8 devices)
Xen virtual console successfully installed as xvc0 Event-channel device installed.
netfront: Initialising virtual ethernet driver.
xen-vbd: registered block device major 3
hda:

Quoted 2 lines

Is there any message in dom0's dmesg or xm dmesg?

Nothing is added to dmesg or xm dmesg that I can see.

I did however notice some text fly by that I hadn't before.

it is below just in case it could be useful in debugging

when running the xm create -c guest1, I get:

Using config file "/etc/xen/guest1".
Started domain guest1
Xen Minimal OS!

start_info:   0x9ac000
  nr_pages:   16384  shared_inf: cec1c000
  pt_base:    0x9af000  mod_start:  0x0
  mod_len:    0
  flags:      0x0
  cmd_line:   root=/dev/hda2 ro (hd0,1)/boot/grub/menu.lst
  stack:      0x94b860-0x96b860
MM: Init
  _text:        0x0
  _etext:       0x5cd36
  _erodata:     0x74000
  _edata:       0x7cb00
  stack start:  0x94b860
  _end:         0x98be48
  start_pfn:    9bb
  max_pfn:      4000

Mapping memory range 0xc00000 - 0x4000000
setting 0x0-0x74000 readonly

followed by the GRUB/grubdom prompt on a cleared screen.

Cheers,
Todd

#6 lore raw
Quoted 7 lines · Todd Deshane, le Tue 26 Aug 2008 22:32:52 -0400, a écrit :
Quoted 4 lines

Yes. The MBR of a partition is supposed to contain a real bootloader, not a PV bootloader, thus the setup command doesn't hold. quit only makes sense when running from a Unix shell, so doesn't make sense here, reboot or halt can be used instead.

So do you mean that this is fundamental to a PV guest or just under these circumstances?

As Gerd explained, that's fundamental to a PV guest. I really don't want to implement stage1/1.5/2 while the domain builder can just boot PV-GRUB directly :)

Quoted 6 lines

grub> root (hd0,1)
root (hd0,1)
grub> setup (hd0)
setup (hd0)
Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes

Quoted 8 lines

Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 16 sectors are embedded.
succeeded
Running "install /boot/grub/stage1 (hd0) (hd0)1+16 p
(hd0,1)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded
Done.
grub> quit
quit

Yes, but that installed the real grub, one that is loaded by a real BIOS with real IDE disks etc, not PV-GRUB.

Quoted 3 lines

Started domain guest1
Xen Minimal OS!
... etc

Yes, that is Mini-OS boot messages, not useful here actually.

Samuel

#7 lore raw
In reply to Todd Deshane

Hello,

Quoted 6 lines · Todd Deshane, le Tue 26 Aug 2008 15:57:50 -0400, a écrit :

kernel (hd0,1)/boot/vmlinuz-2.6.18.8-xen
initrd (hd0,1)/boot/initrd.img-2.6.18.8-xen
boot

In this case, I get
Page fault in pagetable walk (access to invalid memory?).

It looks like a stack overflow, possibly because initrd.img is a bit big (6MB), I'm looking in the zlib code to see where that could come from. In the meanwhile, you can try to increase __STACK_SIZE_PAGE_ORDER to 5 in extras/mini-os/include/x86/arch_limits.h, that works for me.

Samuel

#8 lore raw

Hello,

Quoted 7 lines · Samuel Thibault

Hello,

Quoted 4 lines · Todd Deshane, le Tue 26 Aug 2008 15:57:50 -0400, a écrit :

kernel (hd0,1)/boot/vmlinuz-2.6.18.8-xen
initrd (hd0,1)/boot/initrd.img-2.6.18.8-xen
boot

Quoted 8 lines
Quoted 2 lines

In this case, I get
Page fault in pagetable walk (access to invalid memory?).

It looks like a stack overflow, possibly because initrd.img is a bit big (6MB), I'm looking in the zlib code to see where that could come from. In the meanwhile, you can try to increase __STACK_SIZE_PAGE_ORDER to 5 in extras/mini-os/include/x86/arch_limits.h, that works for me.

I made the change in the file above as:

#define __STACK_SIZE_PAGE_ORDER 5

Now I get:
grubdom> kernel (hd0,1)/boot/vmlinuz-2.6.18.8-xen grubdom> initrd (hd0,1)/boot/initrd.img-2.6.18.8-xen

grubdom> boot
Cannot handle page request order 0!
Page fault at linear address 0x0, rip 0x4f730, regs 0xa9fd08, sp 0xa9fdb0, our_sp 0xa9fcd0, code 2
Thread: main

RIP: e030:[<000000000004f730>]
RSP: e02b:0000000000a9fdb0  EFLAGS: 00010202
RAX: 0000000000000000 RBX: 000000200685bcd8 RCX: 0000000000000020
RDX: 0000000000001000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 0000000000a9fde8 R08: 0101010101010101 R09: 0000000000000000
R10: 0000000000000000 R11: 000000000000003f R12: 000000000010e79d
R13: 000000000000d368 R14: 0000000000001a6d R15: 0000002006803d80

base is 0xa9fde8 caller is 0x187ca
base is 0xa9fe58 caller is 0x3c63
base is 0xa9fe68 caller is 0x8e65
base is 0xa9fe88 caller is 0xaa9f
base is 0xa9feb8 caller is 0x10bd3
base is 0xa9ff58 caller is 0x4129
base is 0xa9ff68 caller is 0x425ad
base is 0xa9ffe8 caller is 0x33da

a9fda0: b0 fd a9 00 00 00 00 00 2b e0 00 00 00 00 00 00
a9fdb0: 95 84 01 00 00 00 00 00 00 1c 00 00 00 00 00 00
a9fdc0: 80 3d 80 06 20 00 00 00 60 3d 00 04 20 00 00 00
a9fdd0: 20 d3 72 00 00 00 00 00 70 3d 80 04 20 00 00 00

a9fdd0: 20 d3 72 00 00 00 00 00 70 3d 80 04 20 00 00 00
a9fde0: 00 18 34 01 00 00 00 00 58 fe a9 00 00 00 00 00
a9fdf0: ca 87 01 00 00 00 00 00 0d 00 00 00 4e 00 00 00
a9fe00: 09 00 00 00 00 00 00 00 c8 03 00 00 00 00 00 00

4f720: 48 81 fa 00 01 00 00 72 78 48 c1 e9 07 0f 1f 00 4f730: 48 0f c3 07 48 0f c3 47 08 48 0f c3 47 10 48 0f 4f740: c3 47 18 48 0f c3 47 20 48 0f c3 47 28 48 0f c3 4f750: 47 30 48 0f c3 47 38 48 0f c3 47 40 48 0f c3 47 Pagetable walk from virt 0, base 9f0000:
L4 = 00000001113b7067 (0x9f1000) [offset = 0]
L3 = 00000001113b6067 (0x9f2000) [offset = 0]
L2 = 0000000102cb9067 (0x9f3000) [offset = 0]

    L1 = 0000000000000000 [offset = 0]

Again, I get bumped from the guest and xm console back in brings me to a grubdom prompt.

Any ideas?

Cheers,
Todd

Signature · 3 lines
Todd Deshane
http://todddeshane.net
check out our book: http://runningxen.com
#9 lore raw
Quoted 2 lines · Todd Deshane, le Wed 27 Aug 2008 15:33:40 -0400, a écrit :

grubdom> boot
Cannot handle page request order 0!

The message could be less verbose, but that should be it: IIRC you have only 64MB in your domain, that's actually not so much for building a PV domain.

Samuel

#10 lore raw
Quoted 8 lines · Samuel Thibault
Quoted 2 lines · Todd Deshane, le Wed 27 Aug 2008 15:33:40 -0400, a écrit :

grubdom> boot
Cannot handle page request order 0!

The message could be less verbose, but that should be it: IIRC you have only 64MB in your domain, that's actually not so much for building a PV domain.

I gave it a bunch more memory and now it hangs try to boot at the same point as before...

<Boot Process>
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
loop: loaded (max 8 devices)
Xen virtual console successfully installed as xvc0 Event-channel device installed.
netfront: Initialising virtual ethernet driver.
xen-vbd: registered block device major 3
hda:
<HANG>

Something in the way PV GRUB is doing things, since booting manually with kernel and ramdisk still works.

It may be some option to the kernel command line, i tried adding:

things like the following to kernel grubdom line, with no luck, still hangs. xencons=tty root=/dev/hda2
console=tty1 root=/dev/hda2
console=xvc0 root=/dev/hda2

The bigger problem though is the PV GRUB isn't actually working like I might expect it to.

Do I need to pass the menu.lst file in the ramdisk option to see a grub menu? Or should it detect the menu.lst within the guest disk image file?

Is there a simple example that I could download and work with to get a sense of a working PV GRUB example?

Cheers,
Todd

#11 lore raw
Quoted 13 lines · Todd Deshane, le Wed 27 Aug 2008 20:48:13 -0400, a écrit :
Quoted 7 lines · Samuel Thibault
Quoted 2 lines · Todd Deshane, le Wed 27 Aug 2008 15:33:40 -0400, a écrit :

grubdom> boot
Cannot handle page request order 0!

The message could be less verbose, but that should be it: IIRC you have only 64MB in your domain, that's actually not so much for building a PV domain.

I gave it a bunch more memory and now it hangs try to boot at the same point as before...

Quoted 8 lines

<Boot Process>
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
loop: loaded (max 8 devices)
Xen virtual console successfully installed as xvc0 Event-channel device installed.
netfront: Initialising virtual ethernet driver.
xen-vbd: registered block device major 3
hda:

Ok, is your dom0 kernel a Xen 3.3 kernel? If yes, could you send me its configuration?

Quoted 5 lines

Do I need to pass the menu.lst file in the ramdisk option to see a grub menu? Or should it detect the menu.lst within the guest disk image file?

Is there a simple example that I could download and work with to get a sense of a working PV GRUB example?

Errr, did you read /usr/share/doc/xen/README.stubdom? And there is a PV-GRUB example in /etc/xen/xmexample.pv-grub.

Samuel

#12 lore raw
Quoted 23 lines · Samuel Thibault
Quoted 13 lines · Todd Deshane, le Wed 27 Aug 2008 20:48:13 -0400, a écrit :
Quoted 7 lines · Samuel Thibault
Quoted 2 lines · Todd Deshane, le Wed 27 Aug 2008 15:33:40 -0400, a écrit :

grubdom> boot
Cannot handle page request order 0!

The message could be less verbose, but that should be it: IIRC you have only 64MB in your domain, that's actually not so much for building a PV domain.

I gave it a bunch more memory and now it hangs try to boot at the same point as before...

Quoted 8 lines

<Boot Process>
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
loop: loaded (max 8 devices)
Xen virtual console successfully installed as xvc0 Event-channel device installed.
netfront: Initialising virtual ethernet driver.
xen-vbd: registered block device major 3
hda:

Quoted 3 lines

Ok, is your dom0 kernel a Xen 3.3 kernel? If yes, could you send me its configuration?

Yes a default make world build of Xen 3.3, config attached.

Quoted 9 lines
Quoted 5 lines

Do I need to pass the menu.lst file in the ramdisk option to see a grub menu? Or should it detect the menu.lst within the guest disk image file?

Is there a simple example that I could download and work with to get a sense of a working PV GRUB example?

Errr, did you read /usr/share/doc/xen/README.stubdom? And there is a PV-GRUB example in /etc/xen/xmexample.pv-grub.

I just read the <xen source tree>/stubdom/README file, particularly focusing on the PV-GRUB section. The description matches my understanding, but the results of using it do not...

This README does not appear to be installed to the system in /usr/share/doc/xen, is it expected to be?

I based my configuration directly from the /etc/xen/xmexample.pv-grub that you suggest. I think I mis-worded my request for an example. I suspect that my problem is either the disk image or some of configuration issue, is there a smallish disk image that you could make available for me to use with its corresponding config file so that I could get a known working disk image to narrow down the isssue?

Cheers,
Todd

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel

#13 lore raw
Quoted 9 lines · Todd Deshane, le Thu 28 Aug 2008 09:34:19 -0400, a écrit :
Quoted 2 lines

Errr, did you read /usr/share/doc/xen/README.stubdom? And there is a PV-GRUB example in /etc/xen/xmexample.pv-grub.

I just read the <xen source tree>/stubdom/README file, particularly focusing on the PV-GRUB section. The description matches my understanding, but the results of using it do not...

This README does not appear to be installed to the system in /usr/share/doc/xen, is it expected to be?

It should get installed to /usr/share/doc/xen/README.stubdom yes

Quoted 4 lines

I suspect that my problem is either the disk image or some of configuration issue, is there a smallish disk image that you could make available for me to use with its corresponding config file so that I could get a known working disk image to narrow down the isssue?

Well IIRC I'm just using the 3.3 dom0 kernel too (though with less modules to get it compiled faster).

Samuel

#14 lore raw
Quoted 4 lines
Quoted 2 lines

This README does not appear to be installed to the system in /usr/share/doc/xen, is it expected to be?

It should get installed to /usr/share/doc/xen/README.stubdom yes

The issue seems to be that make install was not called in the stubdom directory by default.

I ran make install manually in stubdom/ and it installed everything. I re-ran make dist manually and in fact it doesn't actually call make install directly, instead it does:

install -m0644 -p README /root/xen-3.3.0/dist/install/usr/share/doc/xen/README.stubdom

Which for some reason doesn't work, since I checked the install location ( /root/xen-3.3.0/dist/install/usr/share/doc/xen/) manually and it doesn't show up there.

So, I'm not sure what the real issue is why the README files don't also make it into /usr/share/doc/xen. They would be useful I think, so if you have ideas on what
to fix/try I'd be willing to test.

Cheers,
Todd

#15 lore raw
Quoted 7 lines · Todd Deshane, le Thu 28 Aug 2008 13:17:21 -0400, a écrit :
Quoted 4 lines
Quoted 2 lines

This README does not appear to be installed to the system in /usr/share/doc/xen, is it expected to be?

It should get installed to /usr/share/doc/xen/README.stubdom yes

The issue seems to be that make install was not called in the stubdom directory by default.

Err, well, just like other xen directories, no?

Samuel

#16 lore raw
Quoted 11 lines · Samuel Thibault
Quoted 7 lines · Todd Deshane, le Thu 28 Aug 2008 13:17:21 -0400, a écrit :
Quoted 4 lines
Quoted 2 lines

This README does not appear to be installed to the system in /usr/share/doc/xen, is it expected to be?

It should get installed to /usr/share/doc/xen/README.stubdom yes

The issue seems to be that make install was not called in the stubdom directory by default.

Err, well, just like other xen directories, no?

Well the only docs that are installed are the user.{pdf,ps} and interface.{pdf,ps}

Also if you have graphviz, the xenapi.{pdf,ps} is probably also built/installed.

Maybe it is policy not to include the READMEs or maybe I am missing the build flag.

My offer to test/try/things debug is still available if I get suggestions.

Cheers,
Todd

#17 lore raw
Quoted 4 lines · Todd Deshane, le Thu 28 Aug 2008 13:31:20 -0400, a écrit :
Quoted 1 line

Err, well, just like other xen directories, no?

Well the only docs that are installed are the user.{pdf,ps} and interface.{pdf,ps}

I changed that a bit before the Xen 3.3 release.

Samuel

#18 lore raw

Hi Samuel, xen devels,

After apply the Samuel's patch in tools/libxc/xc_minios.c, I continue having the same problem after boot the kenrel: "Page fault in pagetable walk (access to invalid memory?)."

More informations:

# xm create -c pvmtest
Using config file "./pvmtest".
Started domain pvmtest
                      Xen Minimal OS!
start_info:   0xa8f000
  nr_pages:   131072  shared_inf: bfcd6000
  pt_base:    0xa92000  mod_start:  0x0
  mod_len:    0
  flags:      0x0
  cmd_line:   (hd0,0)/boot/grub/menu.lst
  stack:      0x94e860-0x96e860
MM: Init
  _text:        0x0
  _etext:       0x5dfe7
  _erodata:     0x75000
  _edata:       0x7f3e0
  stack start:  0x94e860
  _end:         0x98ee48
  start_pfn:    a9e
  max_pfn:      20000
Mapping memory range 0xc00000 - 0x20000000
setting 0x0-0x75000 readonly
skipped 0x1000
MM: Initialise page allocator for b98000(b98000)-20000000(20000000)
MM: done
Demand map pfns at 20001000-2020001000.
Heap resides at 2020002000-4020002000.
Initialising timer interface
Initialising console ... done.
gnttab_table mapped at 0x20001000.
Initialising scheduler
Thread "Idle": pointer: 0x2020002010, stack: 0xcb0000
Initialising xenbus
Thread "xenstore": pointer: 0x20200027c0, stack: 0xcc0000
Dummy main: start_info=0x96e960
Thread "main": pointer: 0x2020002f70, stack: 0xcd0000
"main" "(hd0,0)/boot/grub/menu.lst"
vbd 768 is hd0
******************* BLKFRONT for device/vbd/768 **********

backend at /local/domain/0/backend/vbd/107/768
Failed to read /local/domain/0/backend/vbd/107/768/feature-flush-cache. 20971520 sectors of 512 bytes
**************************

## menu.lst

title Debian GNU/Linux, kernel 2.6.18.8-xen
root (hd0,0)
kernel /boot/vmlinuz-2.6.18.8-xen root=/dev/hda1 ro quiet
initrd /boot/initrd.img-2.6.18.8-xen

# sed '/^#/d;/^$/d' pvmtest.cfg
kernel = "/usr/lib/xen/boot/pv-grub-x86_64.gz"
extra = "(hd0,0)/boot/grub/menu.lst"
memory = 512
name = "pvmtest"
vcpus = 1
vif = [ 'bridge=eth0' ]
disk = [ 'phy:empirevg/lenny.pvm,hda,w' ]
vfb = [ 'type=vnc' ]
on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'restart'

Best regards,

Signature · 1 line
Marco Sinhoreli
#19 lore raw
Quoted 3 lines · Marco Sinhoreli, le Wed 03 Sep 2008 09:18:02 -0300, a écrit :

After apply the Samuel's patch in tools/libxc/xc_minios.c, I continue having the same problem after boot the kenrel: "Page fault in pagetable walk (access to invalid memory?)."

Just to make sure: did you make distclean?
Is it still "somehow" working without the initrd?
(it really works for me now)

Samuel

#20 lore raw

Hi Samuel,

I updated the Xen from mercurial xen-3.3-testing and it's okay now.

Thanks,

Quoted 16 lines · Samuel Thibault
Quoted 3 lines · Marco Sinhoreli, le Wed 03 Sep 2008 09:18:02 -0300, a écrit :

After apply the Samuel's patch in tools/libxc/xc_minios.c, I continue having the same problem after boot the kenrel: "Page fault in pagetable walk (access to invalid memory?)."

Just to make sure: did you make distclean?
Is it still "somehow" working without the initrd?
(it really works for me now)

Samuel

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel

Signature · 1 line
Marco Sinhoreli

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel

#21 lore raw
In reply to Todd Deshane
Quoted 3 lines · Todd Deshane, le Thu 28 Aug 2008 09:34:19 -0400, a écrit :

I just read the <xen source tree>/stubdom/README file, particularly focusing on the PV-GRUB section. The description matches my understanding, but the results of using it do not...

Just to make it clear: I think the results do not just because of bugs :)

About menu.lst, just to make sure, when you say "My grub config file", it is in the guest (hd0,1) image, right?

Samuel

#22 lore raw
Quoted 7 lines · Samuel Thibault
Quoted 3 lines · Todd Deshane, le Thu 28 Aug 2008 09:34:19 -0400, a écrit :

I just read the <xen source tree>/stubdom/README file, particularly focusing on the PV-GRUB section. The description matches my understanding, but the results of using it do not...

Just to make it clear: I think the results do not just because of bugs :)

:), well I still don't rule out the case that I am doing something wrong still.

So, I am trying to give information that can help us decide if I am doing something silly or if in fact there is a bug that was not found.

Quoted 4 lines

About menu.lst, just to make sure, when you say "My grub config file", it is in the guest (hd0,1) image, right?

Yes, the root partition, which contains the boot and grub directories, is on the virtual disk as /dev/hda2, I confirmed this and also early on sent the fdisk -l of the disk image. I still haven't ruled out the fact that it could be an issue with the detection of the disk image, but still need a working disk image to test on somehow.

How do you create your disk images for test purposes? Do you use dd, some install tool, etc?

Cheers,
Todd

#23 lore raw

PATCH 1/1 stubdom: make xc_map_foreign_ranges use malloc instead of stack space [Was: PV Grub Questions]

In reply to Todd Deshane

Should be applied to the 3.3 tree as well.

stubdom: make xc_map_foreign_ranges use malloc instead of stack space

tools/libxc/xc_minios.c +7 -2
diff -r 96bbda1afb81 tools/libxc/xc_minios.c
@@ -80,9 +80,10 @@ void *xc_map_foreign_ranges(int xc_handl
                             size_t size, int prot, size_t chunksize,
                             privcmd_mmap_entry_t entries[], int nentries)
 {
-    unsigned long mfns[size / PAGE_SIZE];
+    unsigned long *mfns;
     int i, j, n;
     unsigned long pt_prot = 0;
+    void *ret;
 #ifdef __ia64__
     /* TODO */
 #else
@@ -92,12 +93,16 @@ void *xc_map_foreign_ranges(int xc_handl
 	pt_prot = L1_PROT;
 #endif
 
+    mfns = malloc((size / PAGE_SIZE) * sizeof(*mfns));
+
     n = 0;
     for (i = 0; i < nentries; i++)
         for (j = 0; j < chunksize / PAGE_SIZE; j++)
             mfns[n++] = entries[i].mfn + j;
 
-    return map_frames_ex(mfns, n, 1, 0, 1, dom, 0, pt_prot);
+    ret = map_frames_ex(mfns, n, 1, 0, 1, dom, 0, pt_prot);
+    free(mfns);
+    return ret;
 }
#24 lore raw
In reply to Todd Deshane
Quoted 5 lines · Todd Deshane, le Tue 26 Aug 2008 15:57:50 -0400, a écrit :

extra = "(hd0,1)/boot/grub/menu.lst"
memory = 64
vif = [ '' ]
disk = [ 'tap:aio:/root/benchvm/bin/img-xen-guest/image-0.img,hda,w' ] root = "/dev/hda2 ro"

Oh, that root option is the cause of the menu not showing up. That shouldn't be here, since it's in menu.lst itself. Won't solve the hang however.

Samuel

#25 lore raw
Quoted 9 lines · Samuel Thibault
Quoted 5 lines · Todd Deshane, le Tue 26 Aug 2008 15:57:50 -0400, a écrit :

extra = "(hd0,1)/boot/grub/menu.lst"
memory = 64
vif = [ '' ]
disk = [ 'tap:aio:/root/benchvm/bin/img-xen-guest/image-0.img,hda,w' ] root = "/dev/hda2 ro"

Oh, that root option is the cause of the menu not showing up. That shouldn't be here, since it's in menu.lst itself.

Cool, that is the first step on the way. I think that should be changed in the xmexample.pv-grub file, it will help users following the examples.

Cheers,
Todd

#26 lore raw

PATCH 1/1 PV-GRUB: fix example file [Was: PV Grub Questions]

Quoted 9 lines · Todd Deshane, le Thu 28 Aug 2008 11:13:10 -0400, a écrit :
Quoted 7 lines · Samuel Thibault
Quoted 5 lines · Todd Deshane, le Tue 26 Aug 2008 15:57:50 -0400, a écrit :

extra = "(hd0,1)/boot/grub/menu.lst"
memory = 64
vif = [ '' ]
disk = [ 'tap:aio:/root/benchvm/bin/img-xen-guest/image-0.img,hda,w' ] root = "/dev/hda2 ro"

Quoted 5 lines
Quoted 2 lines

Oh, that root option is the cause of the menu not showing up. That shouldn't be here, since it's in menu.lst itself.

Cool, that is the first step on the way. I think that should be changed in the xmexample.pv-grub file,

Gargl, I thought I had tested that file, but apparently not... Should be applied to the 3.3 tree too of course.

Samuel

pv-grub: fix example file
Apparently 64MB is too short for the domain builder.
No kernel option should be passed, as they are provided by menu.lst, and would only confuse grub.

tools/examples/xmexample.pv-grub +1 -27
diff -r 51f868f2a29f tools/examples/xmexample.pv-grub
@@ -25,7 +25,7 @@ extra = "(hd0,0)/boot/grub/menu.lst"
 # WARNING: Creating a domain with insufficient memory may cause out of
 #          memory errors. The domain needs enough memory to boot kernel
 #          and modules. Allocating less than 32MBs is not recommended.
-memory = 64
+memory = 128
 
 # A name for your domain. All domains must have different names.
 name = "ExampleDomain"
@@ -119,32 +119,6 @@ disk = [ 'phy:hda1,hda1,w' ]
 #vtpm = [ 'instance=1,backend=0' ]
 
 #----------------------------------------------------------------------------
-# Set the kernel command line for the new domain.
-# You only need to define the IP parameters and hostname if the domain's
-# IP config doesn't, e.g. in ifcfg-eth0 or via DHCP.
-# You can use 'extra' to set the runlevel and custom environment
-# variables used by custom rc scripts (e.g. VMID=, usr= ).
-
-# Set if you want dhcp to allocate the IP address.
-#dhcp="dhcp"
-# Set netmask.
-#netmask=
-# Set default gateway.
-#gateway=
-# Set the hostname.
-#hostname= "vm%d" % vmid
-
-# Set root device.
-root = "/dev/hda1 ro"
-
-# Root device for nfs.
-#root = "/dev/nfs"
-# The nfs server.
-#nfs_server = '192.0.2.1'  
-# Root directory on the nfs server.
-#nfs_root   = '/full/path/to/root/directory'
-
-#----------------------------------------------------------------------------
 # Configure the behaviour when a domain exits.  There are three 'reasons'
 # for a domain to stop: poweroff, reboot, and crash.  For each of these you
 # may specify:
#27 lore raw
In reply to Todd Deshane
Quoted 1 line · Todd Deshane, le Tue 26 Aug 2008 15:57:50 -0400, a écrit :

disk = [ 'tap:aio:/root/benchvm/bin/img-xen-guest/image-0.img,hda,w' ]

Using tap may be a problem too, could you try with a plain partition?

Samuel

#28 lore raw
Quoted 4 lines · Samuel Thibault, le Thu 28 Aug 2008 16:02:03 +0100, a écrit :
Quoted 1 line · Todd Deshane, le Tue 26 Aug 2008 15:57:50 -0400, a écrit :

disk = [ 'tap:aio:/root/benchvm/bin/img-xen-guest/image-0.img,hda,w' ]

Using tap may be a problem too, could you try with a plain partition?

Or a file without tap.

Samuel

#29 lore raw

Using pv-grub is possible install a system from cdrom using a kernel with pv_ops?

Cheers,

Quoted 15 lines · Samuel Thibault
Quoted 4 lines · Samuel Thibault, le Thu 28 Aug 2008 16:02:03 +0100, a écrit :
Quoted 1 line · Todd Deshane, le Tue 26 Aug 2008 15:57:50 -0400, a écrit :

disk = [ 'tap:aio:/root/benchvm/bin/img-xen-guest/image-0.img,hda,w' ]

Using tap may be a problem too, could you try with a plain partition?

Or a file without tap.

Samuel

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel

Signature · 1 line
Marco Sinhoreli

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel

#30 lore raw
Quoted 2 lines · Marco Sinhoreli, le Thu 28 Aug 2008 13:51:11 -0300, a écrit :

Using pv-grub is possible install a system from cdrom using a kernel with pv_ops?

You should be able to feed pv-grub with a menu.lst that fetches the kernel and initrd from the cdrom, yes; i.e. put in the config file

kernel=/usr/lib/xen/boot/pv-grub-x86_64.gz
ramdisk=/tmp/menu.lst
disk=...
vif=...

where /tmp/menu.lst contains for instance

root=(hd1)
kernel /vmlinuz
initrd /initrd.img
boot

Samuel

#31 lore raw

Hi Samuel,

The pv-grub can read the cdrom but the OS installer can't identify the vbd as cdrom driver. Do you know how can I fix it? There is this feature in Xen for paravirt domains?

Regards,

Quoted 21 lines · Samuel Thibault
Quoted 2 lines · Marco Sinhoreli, le Thu 28 Aug 2008 13:51:11 -0300, a écrit :

Using pv-grub is possible install a system from cdrom using a kernel with pv_ops?

You should be able to feed pv-grub with a menu.lst that fetches the kernel and initrd from the cdrom, yes; i.e. put in the config file

kernel=/usr/lib/xen/boot/pv-grub-x86_64.gz
ramdisk=/tmp/menu.lst
disk=...
vif=...

where /tmp/menu.lst contains for instance

root=(hd1)
kernel /vmlinuz
initrd /initrd.img
boot

Samuel

Signature · 1 line
Marco Sinhoreli

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel

#32 lore raw

Hello,

Quoted 2 lines · Marco Sinhoreli, le Thu 25 Sep 2008 18:06:40 -0300, a écrit :

The pv-grub can read the cdrom but the OS installer can't identify the vbd as cdrom driver.

At that point PV-Grub doesn't exist any more, so the problem is somewhere.

Quoted 2 lines

Do you know how can I fix it? There is this feature in Xen for paravirt domains?

Yes there is, but you need to explicitely tell it, for instance:

disk = ['file:/foo/bar/something.img,hdc:cdrom,r']

Samuel

#33 lore raw

It ins't working too. Below, I'm reproducing informations about my test system:

My xen version:

# xm info | grep -E 'major|minor'
xen_major              : 3
xen_minor              : 3
# virtual machine dmesg
| Registering block device major 202
|  xvda: xvda1 xvda2 xvda3
| Registering block device major 22
| hdc: unknown partition table

In vm configuration, the variable 'disk' is set like below:
| disk = [ 'phy:/dev/empirevg/centos,xvda,w', 'file:/home/iso/centos-xen-image/CentOS-5.2-x86_64-bin-1of7.iso,hdc:cdrom,r' ]

In log has only these entries about the vbd:

# /var/log/xen/qemu-dm-pvcentos.log
| medium change watch on `hdc' (index: 1):
/home/iso/centos-xen-image/CentOS-5.2-x86_64-bin-1of7.iso
# /var/log/xen/xend.log
| [2008-09-26 13:55:00 3997] TRACE (XendDomainInfo:2860)
XendDomainInfo.update done on domain 152: {'vcpus_params': {'cap': 0,
'weight': 256}, 'PV_args': '', '_temp_kernel':
'/var/run/xend/boot/boot_kernel.aKv9gR', 'features': '', '_temp_args':
'ro root=LABEL=/ rhgb quiet', 'cpus': [[], []], 'paused': 1,
'shutdown_reason': 0, 'actions_after_reboot': 'restart', 'vcpu_avail':
3, 'VCPUs_live': 1, 'PV_bootloader': '', 'actions_after_crash':
'restart', 'vbd_refs': ['96741415-cc7f-888f-bb22-d9536e4a2667',
'c4cb92df-3d4e-a8b1-429d-e291aed95248'], 'PV_ramdisk': '',
'memory_dynamic_min': 268435456, '_temp_ramdisk':
'/var/run/xend/boot/boot_ramdisk.2Dkcev', 'name_label': 'pvcentos',
'VCPUs_at_startup': 1, 'HVM_boot_params': {}, 'platform':
{'device_model': '/usr/lib64/xen/bin/qemu-dm'}, 'PV_kernel': '',
'console_refs': ['f44f980b-2fee-d156-8e1a-2dcdd56c0d1a',
'c8a40489-9b26-94e2-2590-507038155e2e'], 'shutdown': 0, 'dying': 0,
'_temp_using_bootloader': '1', 'blocked': 0, 'on_xend_stop': 'ignore',
'memory_static_min': 0, 'HVM_boot_policy': '', 'domid': 152,
'VCPUs_max': 2, 'start_time': 1222448100.201066, 'online_vcpus': 1,
'memory_static_max': 268435456, 'actions_after_shutdown': 'destroy',
'on_xend_start': 'ignore', 'crashed': 0, 'memory_dynamic_max':
268435456, 'actions_after_suspend': '', 'is_a_template': False,
'is_control_domain': False, 'uuid':
'b7f2a041-0369-a085-c4de-49073e338742', 'cpu_time': 0.0,
'shadow_memory': 0, 'target': 0, 'PV_bootloader_args': '', 'notes':
{'FEATURES':  writable_page_tables|writable_descriptor_tables|auto_translated_physmap|pae_pgdir_above_4gb|supervisor_mode_kernel',
'VIRT_BASE': 18446744071562067968L, 'GUEST_VERSION': '2.6',
'PADDR_OFFSET': 18446744071562067968L, 'GUEST_OS': 'linux',
'HYPERCALL_PAGE': 18446744071564189696L, 'LOADER': 'generic', 'ENTRY':
18446744071564165120L, 'XEN_VERSION': 'xen-3.0'}, 'other_config': {},
'running': 0, 'devices': {'96741415-cc7f-888f-bb22-d9536e4a2667':
('vbd', {'uuid': '96741415-cc7f-888f-bb22-d9536e4a2667', 'bootable':
1, 'devid': 51712, 'driver': 'paravirtualised', 'dev': 'xvda',
'uname': 'phy:/dev/empirevg/centos', 'mode': 'w'}),
'a5ecf6ea-a8b1-67d1-6308-068cebf5ab80': ('vkbd', {'devid': 0, 'uuid':
'a5ecf6ea-a8b1-67d1-6308-068cebf5ab80'}),
'f44f980b-2fee-d156-8e1a-2dcdd56c0d1a': ('vfb', {'other_config':
{'type': 'vnc', 'xauthority': '/root/.Xauthority'}, 'xauthority':
'/root/.Xauthority', 'devid': 0, 'location': 'localhost:5901', 'type':
'vnc', 'uuid': 'f44f980b-2fee-d156-8e1a-2dcdd56c0d1a'}),
'c8a40489-9b26-94e2-2590-507038155e2e': ('console', {'other_config':
{}, 'protocol': 'vt100', 'uuid':
'c8a40489-9b26-94e2-2590-507038155e2e', 'location': '2'}),
'c4cb92df-3d4e-a8b1-429d-e291aed95248': ('vbd', {'uuid':
'c4cb92df-3d4e-a8b1-429d-e291aed95248', 'bootable': 0, 'devid': 5632,
'driver': 'paravirtualised', 'dev': 'hdc:cdrom', 'uname':
'file:/home/iso/centos-xen-image/CentOS-5.2-x86_64-bin-1of7.iso',
'mode': 'r'}), '256dc778-ec84-f42b-f31b-229fc88544d6': ('vif',
{'bridge': 'eth0', 'mac': '00:16:3e:3f:d6:38', 'devid': 0, 'uuid':
'256dc778-ec84-f42b-f31b-229fc88544d6'})}, 'vif_refs':
['256dc778-ec84-f42b-f31b-229fc88544d6'], 'vtpm_refs': []}

Perhaps, only HVM supports cdrom media type. PVM has no this feature or I can be wrong.

Cheers,

Quoted 18 lines · Samuel Thibault

Hello,

Quoted 2 lines · Marco Sinhoreli, le Thu 25 Sep 2008 18:06:40 -0300, a écrit :

The pv-grub can read the cdrom but the OS installer can't identify the vbd as cdrom driver.

At that point PV-Grub doesn't exist any more, so the problem is somewhere.

Quoted 2 lines

Do you know how can I fix it? There is this feature in Xen for paravirt domains?

Yes there is, but you need to explicitely tell it, for instance:

disk = ['file:/foo/bar/something.img,hdc:cdrom,r']

Samuel

Signature · 1 line
Marco Sinhoreli

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel

#34 lore raw
Quoted 4 lines · Marco Sinhoreli, le Fri 26 Sep 2008 14:22:18 -0300, a écrit :
| Registering block device major 202
|  xvda: xvda1 xvda2 xvda3
| Registering block device major 22
| hdc: unknown partition table

Ah, that's odd. Maybe you need to set it as xvdb:cdrom to get the cdrom type working.

Quoted 2 lines

Perhaps, only HVM supports cdrom media type. PVM has no this feature or I can be wrong.

The PV interface does exist, maybe just a few details need to be sorted out.

Samuel

#35 lore raw
Quoted 2 lines · Samuel Thibault

Ah, that's odd. Maybe you need to set it as xvdb:cdrom to get the cdrom type working.

It isn't working too.

Quoted 2 lines

The PV interface does exist, maybe just a few details need to be sorted out.

Yes, I think so, considering that this is a nice feature and , the principals linux distributions have a kernel paravirt and initram into CD to install the system. In the future, with dom0 and domU running with pv_ops, this is an important feature considering that paravirt is a better solution than fullvirt.

Signature · 1 line
Marco Sinhoreli
#36 lore raw

Hello,

Old issue still not solved.

Quoted 8 lines · Marco Sinhoreli, le Fri 26 Sep 2008 17:14:58 -0300, a écrit :
Quoted 2 lines · Samuel Thibault

Ah, that's odd. Maybe you need to set it as xvdb:cdrom to get the cdrom type working.

It isn't working too.

Quoted 2 lines

The PV interface does exist, maybe just a few details need to be sorted out.

I've opened
http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1383
Maybe it's just a register_cdrom() call which is missing.

Samuel

#37 lore raw

Some news about this issue? I looked the ticket and no news about this.

Regards,

Quoted 20 lines · Samuel Thibault

Hello,

Old issue still not solved.

Quoted 8 lines · Marco Sinhoreli, le Fri 26 Sep 2008 17:14:58 -0300, a écrit :
Quoted 2 lines · Samuel Thibault

Ah, that's odd.  Maybe you need to set it as xvdb:cdrom to get the cdrom type working.

It isn't working too.

Quoted 2 lines

The PV interface does exist, maybe just a few details need to be sorted out.

I've opened
http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1383
Maybe it's just a register_cdrom() call which is missing.

Samuel

Signature · 1 line
Marco Sinhoreli
#38 lore raw
In reply to Samuel Thibault
Quoted 8 lines · Samuel Thibault
Quoted 4 lines · Samuel Thibault, le Thu 28 Aug 2008 16:02:03 +0100, a écrit :
Quoted 1 line · Todd Deshane, le Tue 26 Aug 2008 15:57:50 -0400, a écrit :

disk = [ 'tap:aio:/root/benchvm/bin/img-xen-guest/image-0.img,hda,w' ]

Using tap may be a problem too, could you try with a plain partition?

Or a file without tap.

Yes, using tap:aio doesn't work. phy: and file: work fine. Is that expected?

So I have a booting PV GRUB guest :)

Thanks for your tips and efforts.

Cheers,
Todd

#39 lore raw
Quoted 1 line · Todd Deshane, le Thu 28 Aug 2008 13:27:56 -0400, a écrit :

Yes, using tap:aio doesn't work. phy: and file: work fine. Is that expected?

It was just not tested. I guess the tap backend is not restartable...

Samuel