Opened 5 months ago

Last modified 7 weeks ago

#15020 new bug

did not find any boot partition with 2 disks attached

Reported by: diver Owned by: nobody
Priority: normal Milestone: Unscheduled
Component: System Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

hrev53081 x86_64 in VMware 15.0.4.

Haiku books ok with one nvme disk attached, however once I add my 20GB data disk haiku panics with "did not find any boot partition".

Attaching it as ide (instead of nvme) allows Haiku to boot and see both disks.

Attachments (2)

syslog (132.5 KB ) - added by diver 7 weeks ago.
vmware.log (232.1 KB ) - added by diver 7 weeks ago.

Download all attachments as: .zip

Change History (16)

comment:1 by waddlesplash, 5 months ago

Almost certainly a dupe of #14475 -- also occurs under SATA when there is a BFS partition on said disk, it seems.

comment:2 by waddlesplash, 5 months ago

Please retest after hrev53082.

comment:3 by CodeforEvolution, 5 months ago

I found this same sort of behavior too under Virtualbox with a version beyond hrev53082, except I was mounting two nvme devices for data storage, and only one would show up as mountable when booting Haiku from its own device under SATA. Looking at the driver, does this have to do with the lack of multiple nvme namespaces support?

comment:4 by waddlesplash, 5 months ago

Possibly, but that would be strange, as my understanding is that NVMe namespaces are supposed to be modifiable by the operating system. So if VirtualBox exposed each disk as its own namespace, this would kind of defeat the entire purpose of namespaces in NVMe.

comment:5 by waddlesplash, 5 months ago

I also note that VirtualBox's NVMe support is unacceptably broken: https://twitter.com/waddlesplash/status/1118710794831781888

So it may be that the drive is really there, in /dev/disk/nvme, and we simply are not exposing it.

comment:6 by diver, 5 months ago

Just tried again with hrev53092 and got the same "did not find any boot partition" error.

comment:7 by waddlesplash, 5 months ago

Component: Drivers/Disk/NVMeSystem
Owner: changed from waddlesplash to nobody
Summary: [nvme] did not find any boot partition with 2 disks attacheddid not find any boot partition with 2 disks attached

According to diver on IRC, occurs with other disk types too. So this is probably not an NVMe bug.

comment:8 by tqh, 5 months ago

Is this UEFI booting?

comment:9 by diver, 5 months ago

Nope.

comment:10 by diver, 5 months ago

Judging from syslog, only one disk is found which happen to be my data disk.

comment:11 by waddlesplash, 5 months ago

You still have not attached the syslog. I keep saying I can't debug this without it.

by diver, 7 weeks ago

Attachment: syslog added

comment:12 by diver, 7 weeks ago

Tried again with hrev53313+1. This time around Haiku booted but didn't detect my data virtual disk.

comment:13 by diver, 7 weeks ago

grep -i nvme Virtual\ Machines.localized/Haiku64.vmwarevm/Haiku64.vmx

bios.hddOrder = "nvme0:0"
nvme0.present = "TRUE"
nvme0:0.fileName = "Virtual Disk.vmdk"
nvme0:0.present = "TRUE"
nvme0:0.redo = ""
nvme0.pciSlotNumber = "160"
nvme0:1.fileName = "Virtual Disk 2.vmdk"
nvme0:1.present = "TRUE"
nvme0:1.redo = ""

comment:14 by diver, 7 weeks ago

grep -i nvme Virtual\ Machines.localized/Haiku64.vmwarevm/vmware.log

2019-07-31T19:23:27.662+03:00| vmx| I125: DICT             bios.hddOrder = "nvme0:0"
2019-07-31T19:23:27.662+03:00| vmx| I125: DICT             nvme0.present = "TRUE"
2019-07-31T19:23:27.662+03:00| vmx| I125: DICT          nvme0:0.fileName = "Virtual Disk.vmdk"
2019-07-31T19:23:27.662+03:00| vmx| I125: DICT           nvme0:0.present = "TRUE"
2019-07-31T19:23:27.662+03:00| vmx| I125: DICT              nvme0:0.redo = ""
2019-07-31T19:23:27.662+03:00| vmx| I125: DICT       nvme0.pciSlotNumber = "160"
2019-07-31T19:23:27.662+03:00| vmx| I125: DICT          nvme0:1.fileName = "Virtual Disk 2.vmdk"
2019-07-31T19:23:27.662+03:00| vmx| I125: DICT           nvme0:1.present = "TRUE"
2019-07-31T19:23:27.673+03:00| vmx| I125: nvmeShared size: 2896, numAdapters: 1
2019-07-31T19:23:27.698+03:00| vmx| I125: vmm64-modules: [vmm.vmm64, vprobe-none.vmm64, hv-vt.vmm64, gphys-ept.vmm64, callstack-none.vmm64, vmce-vmce.vmm64, viommu-none.vmm64, gi-none.vmm64, nvme-nvme.vmm64, !nvmeShared=0x0, !e1000Shared=0xb80, !theIOSpace=0x1a40, !ttGPPerVcpu=0x6dc0, {UseUnwind}=0x0, numVCPUsAsAddr=0x2, {SharedAreaReservations}=0x6e00, {rodataSize}=0x1e75f, {textAddr}=0xfffffffffc000000, {textSize}=0x7f10e, <MonSrcFile>]
2019-07-31T19:23:27.761+03:00| vmx| A100: ConfigDB: Setting nvme0:0.redo = ""
2019-07-31T19:23:27.761+03:00| worker-20818161| A100: ConfigDB: Setting nvme0:1.redo = ""
2019-07-31T19:23:27.761+03:00| worker-20818161| I125: DISK: OPEN nvme0:1 '/Users/diver/Virtual Machines.localized/Haiku64.vmwarevm/Virtual Disk 2.vmdk' persistent R[]
2019-07-31T19:23:27.761+03:00| vmx| I125: DISK: OPEN nvme0:0 '/Users/diver/Virtual Machines.localized/Haiku64.vmwarevm/Virtual Disk.vmdk' persistent R[]
2019-07-31T19:23:27.764+03:00| worker-20818161| I125: DISK: DiskConfigureVirtualSSD:  Disk 'nvme0:1' identified as Virtual SSD device.
2019-07-31T19:23:27.764+03:00| vmx| I125: DISK: DiskConfigureVirtualSSD:  Disk 'nvme0:0' identified as Virtual SSD device.
2019-07-31T19:23:27.765+03:00| vmx| I125: DISK: AdapterType mismatch for 'nvme0:1': disk was created for ide
2019-07-31T19:23:28.246+03:00| vmx| I125: NVME-CORE: Doing a full reset of controller regs and queues.
2019-07-31T19:23:28.246+03:00| vmx| I125: NVME-CORE:Successfully created adapter 'nvme0' as num 0
2019-07-31T19:23:28.246+03:00| vmx| I125: NVME-CORE:Creating Hard Disk (devIdx:0) on NVME adapter.
2019-07-31T19:23:28.246+03:00| vmx| I125: SCSI DEVICE (nvme0:0): Computed value of nvme0:0.useBounceBuffers: default
2019-07-31T19:23:28.246+03:00| vmx| I125: DISKUTIL: nvme0:0 : capacity=20971520 logical sector size=512
2019-07-31T19:23:28.246+03:00| vmx| I125: DISKUTIL: nvme0:0 : geometry=1305/255/63
2019-07-31T19:23:28.246+03:00| vmx| I125: NVME-CORE:Successfully created device: nvme0:0
2019-07-31T19:23:28.246+03:00| vmx| I125: NVME-CORE:Creating Hard Disk (devIdx:1) on NVME adapter.
2019-07-31T19:23:28.246+03:00| vmx| I125: SCSI DEVICE (nvme0:1): Computed value of nvme0:1.useBounceBuffers: default
2019-07-31T19:23:28.246+03:00| vmx| I125: DISKUTIL: nvme0:1 : capacity=41943040 logical sector size=512
2019-07-31T19:23:28.246+03:00| vmx| I125: DISKUTIL: nvme0:1 : geometry=41610/16/63
2019-07-31T19:23:28.246+03:00| vmx| I125: NVME-CORE:Successfully created device: nvme0:1
2019-07-31T19:23:28.294+03:00| vmx| I125: OvhdMem OvhdUser_NVMEBIOS                   :       2      2      - |      0      0      -
2019-07-31T19:23:28.295+03:00| vmx| I125: OvhdMem OvhdMon_Nvme                        :       0      0      - |      0      0      -
2019-07-31T19:23:28.295+03:00| vmx| I125: OvhdMem OvhdMon_NVMERings                   :       0      0      - |      0      0      -
2019-07-31T19:23:28.310+03:00| vcpu-0| I125: DISKUTIL: nvme0:0 : capacity=20971520 logical sector size=512
2019-07-31T19:23:28.310+03:00| vcpu-0| I125: DISKUTIL: nvme0:1 : capacity=41943040 logical sector size=512
2019-07-31T19:23:28.581+03:00| vcpu-0| I125: NVME-PCI: PCI reset on controller nvme0.
2019-07-31T19:23:28.581+03:00| vcpu-0| I125: NVME-CORE: Doing a full reset of controller regs and queues.
2019-07-31T19:23:34.971+03:00| vcpu-0| I125: NVME-VMM: Controller level reset via CC.EN bit transition on nvme0
2019-07-31T19:23:34.971+03:00| vcpu-0| I125: NVME-CORE: Doing a partial reset of controller regs and queues.
2019-07-31T19:33:11.409+03:00| vmx| I125: Cfg2HP: Unknown class nvmeCtlr
2019-07-31T19:33:11.409+03:00| vmx| I125: Cfg2HP: Unknown class nvmeDev
2019-07-31T19:33:11.409+03:00| vmx| I125: Cfg2HP: Unknown class nvmeDev
2019-07-31T19:33:11.410+03:00| vmx| I125: Cfg2HP: Unknown class nvmeCtlr
2019-07-31T19:33:11.410+03:00| vmx| I125: Cfg2HP: Unknown class nvmeDev
2019-07-31T19:33:11.410+03:00| vmx| I125: Cfg2HP: Unknown class nvmeDev

by diver, 7 weeks ago

Attachment: vmware.log added
Note: See TracTickets for help on using tickets.