VirtualBox

Ticket #6123 (new defect)

Opened 4 years ago

Last modified 4 years ago

Virtual disk behave differently on XP and Seven/Vista ( DRDY ERR )

Reported by: Tibo Owned by:
Priority: major Component: virtual disk
Version: VirtualBox 3.1.2 Keywords: DRDY_ERR,persistent, usb, rdm, vista, seven
Cc: Guest type: Linux
Host type: other

Description

This is a very specific bug when using VirtualBox under Seven/Vista (not affecting XP).

I used raw device mapping for a Live USB key with persistency on the same machine running both XP and Seven and when I run the VM I obtain different results (bug on Seven/Vista and no-bug on XP).

When the Linux starts booting it shows many drive errors after few seconds/minutes.

This bug is affecting most Linuxes like Ubuntu and Fedora.

I can tell it's a VirtualBox bug because it's only bugging in Seven and Vista. XP works fine. I tried on many systems and was able to recreate the bug. It does not seem to be hardware-related since it occurs on the same machine only in Seven/Vista.

This is a short extract of the Linux bug (part of dmesg.log) :

[  588.162647] sd 0:0:0:0: [sda] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[  588.162654] sd 0:0:0:0: [sda] Sense Key : Aborted Command [current] [descriptor]
[  588.162663] Descriptor sense data with sense descriptors (in hex):
[  588.162668]         72 0b 14 00 00 00 00 0c 00 0a 80 00 00 00 00 00 
[  588.162687]         00 1c d4 40 
[  588.162696] sd 0:0:0:0: [sda] Add. Sense: Recorded entity not found
[  588.162706] end_request: I/O error, dev sda, sector 1889344
[  588.162729] ata1: EH complete
[  588.170688] ata1.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
[  588.170697] ata1.00: BMDMA stat 0x24
[  588.170713] ata1.00: cmd ca/00:02:4c:d4:1c/00:00:00:00:00/e0 tag 0 dma 1024 out
[  588.170716]          res 41/10:02:4c:d4:1c/00:00:00:00:00/e0 Emask 0x81 (invalid argument)
[  588.170723] ata1.00: status: { DRDY ERR }
[  588.170728] ata1.00: error: { IDNF }
[  588.173236] ata1.00: configured for UDMA/33

Notes : This bug also only occurs on Persistent Live USB (read/write) not on simple Live USB (read only).

I tried to change the adapter type (SATA/SCSI) and they all have the same kind of bug.

I hope you can do something about it.

Thank you in advance.

Tibo

Attachments

dmesg.log Download (122.1 KB) - added by Tibo 4 years ago.
dmesg log file of Linux when running in Seven
VBox.log Download (158.3 KB) - added by Tibo 4 years ago.
VBox log file when running Linux in Seven
dmesg-xp.log Download (22.4 KB) - added by Tibo 4 years ago.
dmesg log file of Linux when running in XP
VBox-xp.log Download (55.9 KB) - added by Tibo 4 years ago.
VBox log file when running Linux in XP
LinuxLive.vmdk Download (544 bytes) - added by Tibo 4 years ago.
VMDK File created by Vbox 3.1.6 using VboxManage (maps a flash drive)
LinuxLive.2.vmdk Download (544 bytes) - added by Tibo 4 years ago.
VMDK File created by Vbox 3.1.6 using VboxManage (maps an 8GB flash drive)
error_sata_3.2.6.jpg Download (116.2 KB) - added by Tibo 4 years ago.
Error using Ubuntu Live in VirtualBox 3.2.6 and a SATA Controller
About LinuxLive VMDK.txt Download (57 bytes) - added by Tibo 4 years ago.
error_ide_326.jpg Download (121.0 KB) - added by Tibo 4 years ago.
Error using Ubuntu Live in VirtualBox 3.2.6 and an IDE Controller
VBox 3.2.6.log Download (61.0 KB) - added by Tibo 4 years ago.
VBox Log when using IDE Controller with Vbox 3.2.6

Change History

Changed 4 years ago by Tibo

dmesg log file of Linux when running in Seven

Changed 4 years ago by Tibo

VBox log file when running Linux in Seven

Changed 4 years ago by Tibo

dmesg log file of Linux when running in XP

Changed 4 years ago by Tibo

VBox log file when running Linux in XP

comment:1 Changed 4 years ago by Tibo

It seems that this bug is not related to USB booting.

I tried to boot from an ISO and to write data on my raw disk (the USB key). No data are written and Vbox log shows the same errors as when booting on Live USB :

PIIX3 ATA: LUN#0: disk write error (rc=VERR_ACCESS_DENIED iSector=0x159432 cSectors=0x1)

I double checked the following settings :

-> VirtualBox is runned with full administrator privileges
-> I also have every privileges on both the USB key and the VMDK file
-> No EXT2 FS driver installed ( http://forums.virtualbox.org/viewtopic.php?f=6&t=22474)
-> No handle to the key opened by other processes (checked with handle.exe -a \Device\HardDisk

It really looks like security settings of Vista/Seven is denying access to the disk to a VirtualBox's component.

comment:2 Changed 4 years ago by frank

  • Priority changed from blocker to major

Yes, this is some permission problem on your host. How is your USB key formatted (which file system) and how big is the virtual disk image currently?

comment:3 Changed 4 years ago by Tibo

My key is formated using FAT32 and the virtual disk size is few bytes only since it's a raw device mapping and only contains a pointer to the physical drive.

I can attach the vmdk file if you need it.

comment:4 Changed 4 years ago by Tibo

Bug is still existing in latest version (3.1.6 Build 59338).

comment:5 Changed 4 years ago by frank

Please attach the .vmdk file.

Changed 4 years ago by Tibo

VMDK File created by Vbox 3.1.6 using VboxManage (maps a flash drive)

Changed 4 years ago by Tibo

VMDK File created by Vbox 3.1.6 using VboxManage (maps an 8GB flash drive)

Changed 4 years ago by Tibo

Error using Ubuntu Live in VirtualBox 3.2.6 and a SATA Controller

Changed 4 years ago by Tibo

Changed 4 years ago by Tibo

Error using Ubuntu Live in VirtualBox 3.2.6 and an IDE Controller

Changed 4 years ago by Tibo

VBox Log when using IDE Controller with Vbox 3.2.6

comment:6 Changed 4 years ago by Tibo

Problem still exists in VirtualBox 3.2.6.

Write access to a Raw Device Mapping of an USB device does not seem to work on Seven and Vista (runs fine on XP SP2 & XP SP3).

I tried on several computers and virtual machines (Linux with kernel 2.6) and always have the same results.

Virtual machines should runs the same way on every OS but that's not what happens here.

Log file shows this errors : 00:01:07.805 ERROR [COM]: aRC=E_ACCESSDENIED (0x80070005) aIID={1fa79e39-0cc9-4ab3-9df3-ed3e96b42496} aComponent={Display} aText={The console is not powered up} aWarning=false, preserve=false

Hope this will help you to investigate further and fix this odd bug.

comment:7 Changed 4 years ago by aeichner

The path you gave to handle.exe to check for processes accessing the device looks wrong. The path in the VMDK is \.\PHYSICALDRIVE1. Can you check if another process is accessing the drive again?

comment:8 Changed 4 years ago by Tibo

That's not an error. This is one of the possible syntax for handle.exe.

I also tried X: and both were not showing any opened handles.

comment:9 Changed 4 years ago by Tibo

Please tell me if I can do anything to help you fix that bug.

comment:10 Changed 4 years ago by Tibo

Any hope of being fixed one day ?

comment:11 Changed 4 years ago by klaus

I don't see what we can fix if the OS allows VirtualBox to open the disk for read/write, and then all attempts to write fail with access denied...

Did you try to run VirtualBox with administrator privileges? It could be that Microsoft changed the ACLs somehow (but then I would still expect the open to fail, not the actual write access).

Your "proof" that it is a VirtualBox bug doesn't hold much water I'm afraid.

comment:12 Changed 4 years ago by klaus

Actually it could be that Windows Vista/7 blocks raw disk access (writes only) if it mounts the disk. It knows how to read FAT32, so it'll be hard to tell Windows to keep its fingers off.

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use