/dev/disk/by-id does not exist for virtio devices
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
udev (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: udev
Inside an UEC instance with the root filesystem on /dev/vda1 (USE_VIRTIO_
I really doubt that this is at all related to uec, but more generally a udev/virtio disk issue.
possibly useful information from dmesg:
[ 0.471820] virtio-pci 0000:00:03.0: irq 40 for MSI/MSI-X
[ 0.471822] alloc irq_desc for 41 on node -1
[ 0.471824] alloc kstat_irqs on node -1
[ 0.471846] virtio-pci 0000:00:03.0: irq 41 for MSI/MSI-X
[ 0.582796] vda: vda1 vda2 vda3
$ find /dev/disk/
/dev/disk/
/dev/disk/by-label
/dev/disk/
/dev/disk/by-uuid
/dev/disk/
/dev/disk/
/dev/disk/
/dev/disk/by-path
/dev/disk/
/dev/disk/
/dev/disk/
/dev/disk/
ProblemType: Bug
DistroRelease: Ubuntu 10.10
Package: udev 161+git20100825-1
ProcVersionSign
Uname: Linux 2.6.35-19-virtual i686
Architecture: i386
CurrentDmesg:
Date: Fri Sep 10 16:21:20 2010
Lsusb: Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
MachineType: Bochs Bochs
ProcCmdLine: root=/dev/vda1 console=ttyS0
ProcEnviron:
LANG=en_US.UTF-8
SHELL=/bin/bash
SourcePackage: udev
dmi.bios.date: 01/01/2007
dmi.bios.vendor: Bochs
dmi.bios.version: Bochs
dmi.chassis.type: 1
dmi.chassis.vendor: Bochs
dmi.modalias: dmi:bvnBochs:
dmi.product.name: Bochs
dmi.sys.vendor: Bochs
Changed in udev (Ubuntu): | |
status: | New → Confirmed |
I've looked at this, and I think that this is because there's no rule that adds any program to IMPORT that's capable of getting an ID_SERIAL from virtio devices. Some virtio devices apparently chain through to SCSI ioctls, but I don't know how widespread that is, and in any case scsi_id doesn't seem to do anything useful on smoser's device.
You can do something like this on a virtio device:
char id_str[20];
ioctl(fd, 0x56424944 /* 'VBID' */, id_str);
The returned data seems to be a pile of binary data and probably needs to be encoded in some way (I don't know whether that's intentional or a bug somewhere). Perhaps we should have a new virtio_id program for this?