OpenSolaris guest fails to see the Solaris partitions of a physical disk in qemu-kvm-9999 (GIT)

Bug #618533 reported by devsk
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
QEMU
Expired
Undecided
Unassigned

Bug Description

# qemu-kvm --version
QEMU emulator version 0.13.50 (qemu-kvm-devel), Copyright (c) 2003-2008 Fabrice Bellard

The following disk is presented to guest as IDE disk with /dev/sdd as path.

# fdisk -l /dev/sdd

Disk /dev/sdd: 750.2 GB, 750156374016 bytes
255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x7f3a03aa

   Device Boot Start End Blocks Id System
/dev/sdd1 63 7887914 3943926 1b Hidden W95 FAT32
/dev/sdd2 7887915 980736119 486424102+ 83 Linux
/dev/sdd3 * 980736120 1083150494 51207187+ bf Solaris
/dev/sdd4 1083150495 1465144064 190996785 5 Extended
/dev/sdd5 1083150558 1107746009 12297726 83 Linux
/dev/sdd6 1107746073 1465144064 178698996 7 HPFS/NTFS

The prtvtoc output is attached from both VirtualBox and Qemu-KVM. As can be seen in the screenshots, a valid Solaris partition table (which is inside the /dev/sdd3, marked 'bf' in Linux fdisk output) is not seen in Qemu but seen in Virtualbox.

This makes the guest unbootable in Qemu because the root FS is not found but its bootable in Virtualbox.

Revision history for this message
devsk (funtoos) wrote :
Revision history for this message
devsk (funtoos) wrote :
Revision history for this message
devsk (funtoos) wrote :

Qemu's version of partition table is gotten using a OpenSolaris b134 livecd because I couldn't really boot the disk.

Basically, somehow all the slice labels are missing when booted in Qemu. OpenSolaris thinks that /dev/sdd3 (which is a primary Solaris 'bf' type partition) is not sliced. Hence, its showing 2 unmountable slices and 1 reserved slice.

When booted in VirtualBox, the correct slice table is seen. We can see slice 0 being 'root' slice of about 16GB, slice 1 being 'swap' slice of size about 6GB and slice 6 being the 'data' slice of about 26GB.

Revision history for this message
devsk (funtoos) wrote :

This is a showstopper bug for me to adopt KVM as the virtualization solution because I just can't boot my OpenSolaris guest. I want to move to KVM because of in-kernel support and better SMP support.

Revision history for this message
devsk (funtoos) wrote :

I ran qemu from command line with debugcon:

# /usr/bin/qemu-system-x86_64 --enable-kvm -M pc-0.12 -enable-kvm -m 1024 -smp 2,sockets=2,cores=1,threads=1 -name opensolaris -uuid 7efc6da0-e40f-a1c5-0e85-763dc7ff209c -nodefaults -rtc base=localtime -boot dc -device lsi,id=scsi0,bus=pci.0,addr=0x6 -drive file=Korona4.4.5.iso,if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -drive file=/dev/sdd,if=none,id=drive-ide0-0-0,format=raw -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -usb -device usb-tablet,id=input0 -sdl -vga vmware -chardev stdio,id=seabios -device isa-debugcon,iobase=0x402,chardev=seabios
Start bios (version pre-0.6.1-20100713_085324-titi)
Ram Size=0x40000000 (0x0000000000000000 high)
CPU Mhz=2814
PCI: pci_bios_init_bus_rec bus = 0x0
PIIX3/PIIX4 init: elcr=00 0c
PCI: bus=0 devfn=0x00: vendor_id=0x8086 device_id=0x1237
PCI: bus=0 devfn=0x08: vendor_id=0x8086 device_id=0x7000
PCI: bus=0 devfn=0x09: vendor_id=0x8086 device_id=0x7010
region 4: 0x0000c000
PCI: bus=0 devfn=0x0a: vendor_id=0x8086 device_id=0x7020
region 4: 0x0000c020
PCI: bus=0 devfn=0x0b: vendor_id=0x8086 device_id=0x7113
PCI: bus=0 devfn=0x10: vendor_id=0x15ad device_id=0x0405
region 0: 0x0000c040
region 1: 0xf0000000
region 2: 0xf1000000
PCI: bus=0 devfn=0x30: vendor_id=0x1000 device_id=0x0012
region 0: 0x0000c100
region 1: 0xf1010000
region 2: 0xf1012000
Found 2 cpu(s) max supported 2 cpu(s)
MP table addr=0x000fdbe0 MPC table addr=0x000fdbf0 size=244
SMBIOS ptr=0x000fdbc0 table=0x3ffffec0
ACPI tables: RSDP=0x000fdb90 RSDT=0x3fffde10
Scan for VGA option rom
Running option rom at c000:0003
Turning on vga text mode console
Starting SeaBIOS (version pre-0.6.1-20100713_085324-titi)

UHCI init on dev 00:01.2 (io=c020)
Found 0 lpt ports
Found 0 serial ports
ATA controller 0 at 1f0/3f4/0 (irq 14 dev 9)
ATA controller 1 at 170/374/0 (irq 15 dev 9)
ata0-0: QEMU HARDDISK ATA-7 Hard-Disk (698 GiBytes)
drive 0x000fdb40: PCHS=16383/16/63 translation=lba LCHS=1024/255/63 s=1465149168
ata1-0: QEMU DVD-ROM ATAPI-4 DVD/CD
PS2 keyboard initialized
WARNING - Timeout at wait_qh:218!
Timeout on wait_qh 0x3ffef990 (td=0x3ffef8f0 s=400000 c=c1/0)
All threads complete.
Scan for option roms
Running option rom at ca00:0003
ebda moved from 9fc00 to 9f400
Returned 53248 bytes of ZoneHigh
e820 map has 7 items:
  0: 0000000000000000 - 000000000009f400 = 1
  1: 000000000009f400 - 00000000000a0000 = 2
  2: 00000000000f0000 - 0000000000100000 = 2
  3: 0000000000100000 - 000000003fffd000 = 1
  4: 000000003fffd000 - 0000000040000000 = 2
  5: 00000000fffc0000 - 0000000100000000 = 2
  6: feffd00000000000 - ff00100000000000 = 0
enter handle_19:
  NULL
Booting from DVD/CD...
1368MB medium detected
Booting from 0000:7c00

Why are PCHS and LCHS both wrong?

Revision history for this message
devsk (funtoos) wrote :

I thought C*H*S was equal to the physical size. if c <16384, h<16, s<63 for the physical, then max size disk it can support is about 8GB. what gives?

And C*H*S IS equal to the disk size as shown in the fdisk -l output above.

Revision history for this message
devsk (funtoos) wrote :

Since I have been battling this issue alone in this bug report, here is the deal: Attached is the patch which applies to 12.5 and 13.5 and fixes the issue.

Can someone please verify the integrity and apply?

Revision history for this message
devsk (funtoos) wrote :

hello? anybody home?

Revision history for this message
blueswirl (blauwirbel) wrote : Re: [Qemu-devel] [Bug 618533] Re: OpenSolaris guest fails to see the Solaris partitions of a physical disk in qemu-kvm-9999 (GIT)

On Thu, Aug 19, 2010 at 7:03 AM, devsk <email address hidden> wrote:
> hello? anybody home?
>
> --
> OpenSolaris guest fails to see the Solaris partitions of a physical disk in qemu-kvm-9999 (GIT)
> https://bugs.launchpad.net/bugs/618533
> You received this bug notification because you are a member of qemu-
> devel-ml, which is subscribed to QEMU.
>
> Status in QEMU: New
>
> Bug description:
> # qemu-kvm --version
> QEMU emulator version 0.13.50 (qemu-kvm-devel), Copyright (c) 2003-2008 Fabrice Bellard
>
> The following disk is presented to guest as IDE disk with /dev/sdd as path.
>
> # fdisk -l /dev/sdd
>
> Disk /dev/sdd: 750.2 GB, 750156374016 bytes
> 255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors
> Units = sectors of 1 * 512 = 512 bytes
> Sector size (logical/physical): 512 bytes / 512 bytes
> I/O size (minimum/optimal): 512 bytes / 512 bytes
> Disk identifier: 0x7f3a03aa
>
>   Device Boot      Start         End      Blocks   Id  System
> /dev/sdd1              63     7887914     3943926   1b  Hidden W95 FAT32
> /dev/sdd2         7887915   980736119   486424102+  83  Linux
> /dev/sdd3   *   980736120  1083150494    51207187+  bf  Solaris
> /dev/sdd4      1083150495  1465144064   190996785    5  Extended
> /dev/sdd5      1083150558  1107746009    12297726   83  Linux
> /dev/sdd6      1107746073  1465144064   178698996    7  HPFS/NTFS
>
> The prtvtoc output is attached from both VirtualBox and Qemu-KVM. As can be seen in the screenshots, a valid Solaris partition table (which is inside the /dev/sdd3, marked 'bf' in Linux fdisk output) is not seen in Qemu but seen in Virtualbox.
>
> This makes the guest unbootable in Qemu because the root FS is not found but its bootable in Virtualbox.

Please send the patch to the qemu-devel list. Don't forget a
Signed-off-by: line.

Revision history for this message
devsk (funtoos) wrote :

What's this bugdb for then? I now have to subscribe to a list, just to send the patch?

Revision history for this message
blueswirl (blauwirbel) wrote :

On Fri, Aug 20, 2010 at 5:15 AM, devsk <email address hidden> wrote:
> What's this bugdb for then? I now have to subscribe to a list, just to
> send the patch?

It's probably there to report bugs. But it's much easier to review
submitted code when it's sent to the list. I don't think you have to
be a subscriber.

Revision history for this message
devsk (funtoos) wrote :

what's the list address? All the lists at the kvm main page are for kvm only.

Revision history for this message
blueswirl (blauwirbel) wrote :

On Fri, Aug 27, 2010 at 3:57 PM, devsk <email address hidden> wrote:
> what's the list address? All the lists at the kvm main page are for kvm
> only.
>
> --
> OpenSolaris guest fails to see the Solaris partitions of a physical disk in qemu-kvm-9999 (GIT)
> https://bugs.launchpad.net/bugs/618533
> You received this bug notification because you are a member of qemu-
> devel-ml, which is subscribed to QEMU.
>
> Status in QEMU: New
>
> Bug description:
> # qemu-kvm --version
> QEMU emulator version 0.13.50 (qemu-kvm-devel), Copyright (c) 2003-2008 Fabrice Bellard
>
> The following disk is presented to guest as IDE disk with /dev/sdd as path.
>
> # fdisk -l /dev/sdd
>
> Disk /dev/sdd: 750.2 GB, 750156374016 bytes
> 255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors
> Units = sectors of 1 * 512 = 512 bytes
> Sector size (logical/physical): 512 bytes / 512 bytes
> I/O size (minimum/optimal): 512 bytes / 512 bytes
> Disk identifier: 0x7f3a03aa
>
>   Device Boot      Start         End      Blocks   Id  System
> /dev/sdd1              63     7887914     3943926   1b  Hidden W95 FAT32
> /dev/sdd2         7887915   980736119   486424102+  83  Linux
> /dev/sdd3   *   980736120  1083150494    51207187+  bf  Solaris
> /dev/sdd4      1083150495  1465144064   190996785    5  Extended
> /dev/sdd5      1083150558  1107746009    12297726   83  Linux
> /dev/sdd6      1107746073  1465144064   178698996    7  HPFS/NTFS
>
> The prtvtoc output is attached from both VirtualBox and Qemu-KVM. As can be seen in the screenshots, a valid Solaris partition table (which is inside the /dev/sdd3, marked 'bf' in Linux fdisk output) is not seen in Qemu but seen in Virtualbox.
>
> This makes the guest unbootable in Qemu because the root FS is not found but its bootable in Virtualbox.

Sorry, I missed that this was for qemu-kvm. Anyway, the patch is
probably applicable to QEMU as well and you actually filed the bug to
Qemu.

qemu-devel list information can be found in
http://lists.nongnu.org/mailman/listinfo/qemu-devel

Revision history for this message
Brad Hards (bradh) wrote :

Did this change get submitted? Is it still an issue?

Revision history for this message
blueswirl (blauwirbel) wrote :

On Sun, May 22, 2011 at 1:43 PM, Brad Hards <email address hidden> wrote:
> Did this change get submitted? Is it still an issue?

At least the patch hasn't been applied. I don't remember seeing it in the list.

Revision history for this message
Thomas Huth (th-huth) wrote :

Is this issue still reproducible with the latest version of QEMU, or could we close this issue nowadays?

Changed in qemu:
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for QEMU because there has been no activity for 60 days.]

Changed in qemu:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.