Re: [libvirt] udev node device backend

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dave Allan wrote:
> Attached is a fully functional version of the node device udev based 
> backend, incorporating all the feedback from earlier revisions.  I broke 
> the new capability fields out into a separate patch per Dan's 
> suggestion, and I have also included a patch removing the DevKit backend.

I haven't reviewed the code yet, but I did get this built and running on one of
my machines here.  I ran a script which collected the output of "virsh
nodedev-list" and "virsh nodedev-dumpxml <device>" against both the HAL backend
and the udev backend (the output from both is attached).  Then I did a
comparison.  Overall, it looks like you did really good work.  There are some
discrepancies, though, and a few random notes below.

1)  I did this on an F-11 x86_64 box, which has libudev 141 installed.  In order
for it to build, I had to change configure.in to allow 141, and I also had to
add #define LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE.  Neither of these is an
issue for F-12, but it might be something to consider adding to the ./configure
checks so we can build it on slightly older setups.

2)  There are a few build-time warnings that you'll want to clean up:

  CC     libvirt_driver_nodedev_la-node_device_udev.lo
node_device/node_device_udev.c: In function 'udevGetUint64SysfsAttr':
node_device/node_device_udev.c:209: warning: passing argument 4 of
'virStrToLong_ull' from incompatible pointer type
../src/util/util.h:157: note: expected 'long long unsigned int *' but argument
is of type 'uint64_t *'
node_device/node_device_udev.c: In function 'udevProcessDisk':
node_device/node_device_udev.c:472: warning: passing argument 3 of
'udevGetUint64SysfsAttr' from incompatible pointer type
node_device/node_device_udev.c:199: note: expected 'uint64_t *' but argument is
of type 'long long unsigned int *'
node_device/node_device_udev.c:478: warning: passing argument 3 of
'udevGetUint64SysfsAttr' from incompatible pointer type
node_device/node_device_udev.c:199: note: expected 'uint64_t *' but argument is
of type 'long long unsigned int *'
node_device/node_device_udev.c: In function 'udevProcessCDROM':
node_device/node_device_udev.c:511: warning: passing argument 3 of
'udevGetUint64SysfsAttr' from incompatible pointer type
node_device/node_device_udev.c:199: note: expected 'uint64_t *' but argument is
of type 'long long unsigned int *'
node_device/node_device_udev.c:517: warning: passing argument 3 of
'udevGetUint64SysfsAttr' from incompatible pointer type
node_device/node_device_udev.c:199: note: expected 'uint64_t *' but argument is
of type 'long long unsigned int *'

3)  I took a look at how the network is represented in the XML.  In the HAL
backend, we get something that looks like:

<device>
  <name>net_00_13_20_f5_fa_e3</name>
  <parent>pci_8086_10bd</parent>
  <capability type='net'>
    <interface>eth0</interface>
    <address>00:13:20:f5:fa:e3</address>
    <capability type='80203'/>
  </capability>
</device>

That "<capability type='80203'/>" looks to be bogus (although I could be wrong;
that same XML is encoded into the tests, so maybe there is something else going
on).  You are already in a <capability> block, so that should probably just be
"<type='80203'/>".  The same problem occurs in the udev backend.

4)  I also took a look at the output for one of the bridges.  In my HAL backend,
I see:

<device>
  <name>net_00_13_20_f5_fa_e3_0</name>
  <parent>computer</parent>
  <capability type='net'>
    <interface>ovirtbr0</interface>
    <address>00:13:20:f5:fa:e3</address>
  </capability>
</device>

However, in the udev backend I am missing the parent link (in point of fact, the
parent link is missing for quite a few elements), and I also have an additional
"<capability type='80203'/>" element:

<device>
  <name>/sys/devices/virtual/net/ovirtbr0</name>
  <capability type='net'>
    <interface>ovirtbr0</interface>
    <address>00:13:20:f5:fa:e3</address>
    <capability type='80203'/>
  </capability>
</device>

I'm not sure if either of those is a problem.

5)  We are still missing the mapping of product/vendor id --> names.  This shows
up for instance in the parent of the eth0 device, where the HAL backend shows:

 <product id='0x10bd'>82566DM-2 Gigabit Network Connection</product>

and the udev backend shows nothing.  Probably not a show-stopper, but a
nice-to-have for human readers.

6)  SCSI device 1:0:0:0 (pci_8086_2920_scsi_host_0_scsi_device_lun0 in the HAL
backend, /sys/devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0 in the
udev backend) shows up with "<type>cdrom</type>" in HAL, but not in udev.

There are probably a few others, please take a look through my hal-output and
udev-output.  Like I said, very good work overall, this is just nit-picking and
cleanups that will make it more like the HAL backend.

-- 
Chris Lalancette
computer
net_00_13_20_f5_fa_e3
net_00_13_20_f5_fa_e3_0
net_1e_85_27_2d_a9_b0
net_computer_loopback
pci_8086_10bd
pci_8086_244e
pci_8086_2910
pci_8086_2920
pci_8086_2920_scsi_host
pci_8086_2920_scsi_host_0
pci_8086_2920_scsi_host_0_scsi_device_lun0
pci_8086_2920_scsi_host_0_scsi_host
pci_8086_2920_scsi_host_scsi_device_lun0
pci_8086_2920_scsi_host_scsi_host
pci_8086_2926
pci_8086_2926_scsi_host
pci_8086_2926_scsi_host_0
pci_8086_2930
pci_8086_2934
pci_8086_2935
pci_8086_2936
pci_8086_2937
pci_8086_2938
pci_8086_2939
pci_8086_293a
pci_8086_293c
pci_8086_293e
pci_8086_29c0
pci_8086_29c2
pci_8086_29c4
pci_8086_29c6
pci_8086_29c7
platform_floppy_0_storage_platform_floppy
storage_model_DVDRW_LH_20A1S
storage_serial_SATA_ST3320620AS_9QF5E3AP
usb_device_1d6b_1_0000_00_1a_0
usb_device_1d6b_1_0000_00_1a_0_if0
usb_device_1d6b_1_0000_00_1a_1
usb_device_1d6b_1_0000_00_1a_1_if0
usb_device_1d6b_1_0000_00_1a_2
usb_device_1d6b_1_0000_00_1a_2_if0
usb_device_1d6b_1_0000_00_1d_0
usb_device_1d6b_1_0000_00_1d_0_if0
usb_device_1d6b_1_0000_00_1d_1
usb_device_1d6b_1_0000_00_1d_1_if0
usb_device_1d6b_1_0000_00_1d_2
usb_device_1d6b_1_0000_00_1d_2_if0
usb_device_1d6b_2_0000_00_1a_7
usb_device_1d6b_2_0000_00_1a_7_if0
usb_device_1d6b_2_0000_00_1d_7
usb_device_1d6b_2_0000_00_1d_7_if0

<device>
  <name>computer</name>
  <capability type='system'>
    <hardware>
      <vendor>To Be Filled By O.E.M.</vendor>
      <version>To Be Filled By O.E.M.</version>
      <serial>To Be Filled By O.E.M.</serial>
      <uuid>35363738-393a-3b3c-3d3e-3f4041424344</uuid>
    </hardware>
    <firmware>
      <vendor>American Megatrends Inc.</vendor>
      <version>SDBLI944.86P</version>
      <release_date>05/08/2007</release_date>
    </firmware>
  </capability>
</device>


<device>
  <name>net_00_13_20_f5_fa_e3</name>
  <parent>pci_8086_10bd</parent>
  <capability type='net'>
    <interface>eth0</interface>
    <address>00:13:20:f5:fa:e3</address>
    <capability type='80203'/>
  </capability>
</device>


<device>
  <name>net_00_13_20_f5_fa_e3_0</name>
  <parent>computer</parent>
  <capability type='net'>
    <interface>ovirtbr0</interface>
    <address>00:13:20:f5:fa:e3</address>
  </capability>
</device>


<device>
  <name>net_1e_85_27_2d_a9_b0</name>
  <parent>computer</parent>
  <capability type='net'>
    <interface>virbr0</interface>
    <address>1e:85:27:2d:a9:b0</address>
  </capability>
</device>


<device>
  <name>net_computer_loopback</name>
  <parent>computer</parent>
  <capability type='net'>
    <interface>lo</interface>
    <address>00:00:00:00:00:00</address>
  </capability>
</device>


<device>
  <name>pci_8086_10bd</name>
  <parent>computer</parent>
  <driver>
    <name>e1000e</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>25</slot>
    <function>0</function>
    <product id='0x10bd'>82566DM-2 Gigabit Network Connection</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_244e</name>
  <parent>computer</parent>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>30</slot>
    <function>0</function>
    <product id='0x244e'>82801 PCI Bridge</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_2910</name>
  <parent>computer</parent>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>31</slot>
    <function>0</function>
    <product id='0x2910'>Unknown (0x2910)</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_2920</name>
  <parent>computer</parent>
  <driver>
    <name>ata_piix</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>31</slot>
    <function>2</function>
    <product id='0x2920'>82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA IDE Controller</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_2920_scsi_host</name>
  <parent>pci_8086_2920</parent>
  <capability type='scsi_host'>
    <host>0</host>
  </capability>
</device>


<device>
  <name>pci_8086_2920_scsi_host_0</name>
  <parent>pci_8086_2920</parent>
  <capability type='scsi_host'>
    <host>1</host>
  </capability>
</device>


<device>
  <name>pci_8086_2920_scsi_host_0_scsi_device_lun0</name>
  <parent>pci_8086_2920_scsi_host_0</parent>
  <driver>
    <name>sr</name>
  </driver>
  <capability type='scsi'>
    <host>1</host>
    <bus>0</bus>
    <target>0</target>
    <lun>0</lun>
    <type>cdrom</type>
  </capability>
</device>


<device>
  <name>pci_8086_2920_scsi_host_0_scsi_host</name>
  <parent>pci_8086_2920_scsi_host_0</parent>
  <capability type='scsi_host'>
    <host>1</host>
  </capability>
</device>


<device>
  <name>pci_8086_2920_scsi_host_scsi_device_lun0</name>
  <parent>pci_8086_2920_scsi_host</parent>
  <driver>
    <name>sd</name>
  </driver>
  <capability type='scsi'>
    <host>0</host>
    <bus>0</bus>
    <target>0</target>
    <lun>0</lun>
    <type>disk</type>
  </capability>
</device>


<device>
  <name>pci_8086_2920_scsi_host_scsi_host</name>
  <parent>pci_8086_2920_scsi_host</parent>
  <capability type='scsi_host'>
    <host>0</host>
  </capability>
</device>


<device>
  <name>pci_8086_2926</name>
  <parent>computer</parent>
  <driver>
    <name>ata_piix</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>31</slot>
    <function>5</function>
    <product id='0x2926'>82801I (ICH9 Family) 2 port SATA IDE Controller</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_2926_scsi_host</name>
  <parent>pci_8086_2926</parent>
  <capability type='scsi_host'>
    <host>2</host>
  </capability>
</device>


<device>
  <name>pci_8086_2926_scsi_host_0</name>
  <parent>pci_8086_2926</parent>
  <capability type='scsi_host'>
    <host>3</host>
  </capability>
</device>


<device>
  <name>pci_8086_2930</name>
  <parent>computer</parent>
  <driver>
    <name>i801_smbus</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>31</slot>
    <function>3</function>
    <product id='0x2930'>82801I (ICH9 Family) SMBus Controller</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_2934</name>
  <parent>computer</parent>
  <driver>
    <name>uhci_hcd</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>29</slot>
    <function>0</function>
    <product id='0x2934'>82801I (ICH9 Family) USB UHCI Controller #1</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_2935</name>
  <parent>computer</parent>
  <driver>
    <name>uhci_hcd</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>29</slot>
    <function>1</function>
    <product id='0x2935'>82801I (ICH9 Family) USB UHCI Controller #2</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_2936</name>
  <parent>computer</parent>
  <driver>
    <name>uhci_hcd</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>29</slot>
    <function>2</function>
    <product id='0x2936'>82801I (ICH9 Family) USB UHCI Controller #3</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_2937</name>
  <parent>computer</parent>
  <driver>
    <name>uhci_hcd</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>26</slot>
    <function>0</function>
    <product id='0x2937'>82801I (ICH9 Family) USB UHCI Controller #4</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_2938</name>
  <parent>computer</parent>
  <driver>
    <name>uhci_hcd</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>26</slot>
    <function>1</function>
    <product id='0x2938'>82801I (ICH9 Family) USB UHCI Controller #5</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_2939</name>
  <parent>computer</parent>
  <driver>
    <name>uhci_hcd</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>26</slot>
    <function>2</function>
    <product id='0x2939'>82801I (ICH9 Family) USB UHCI Controller #6</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_293a</name>
  <parent>computer</parent>
  <driver>
    <name>ehci_hcd</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>29</slot>
    <function>7</function>
    <product id='0x293a'>82801I (ICH9 Family) USB2 EHCI Controller #1</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_293c</name>
  <parent>computer</parent>
  <driver>
    <name>ehci_hcd</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>26</slot>
    <function>7</function>
    <product id='0x293c'>82801I (ICH9 Family) USB2 EHCI Controller #2</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_293e</name>
  <parent>computer</parent>
  <driver>
    <name>HDA Intel</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>27</slot>
    <function>0</function>
    <product id='0x293e'>82801I (ICH9 Family) HD Audio Controller</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_29c0</name>
  <parent>computer</parent>
  <driver>
    <name>agpgart-intel</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>0</slot>
    <function>0</function>
    <product id='0x29c0'>82G33/G31/P35/P31 Express DRAM Controller</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_29c2</name>
  <parent>computer</parent>
  <driver>
    <name>i915</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>2</slot>
    <function>0</function>
    <product id='0x29c2'>82G33/G31 Express Integrated Graphics Controller</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_29c4</name>
  <parent>computer</parent>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>3</slot>
    <function>0</function>
    <product id='0x29c4'>82G33/G31/P35/P31 Express MEI Controller</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_29c6</name>
  <parent>computer</parent>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>3</slot>
    <function>2</function>
    <product id='0x29c6'>82G33/G31/P35/P31 Express PT IDER Controller</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>pci_8086_29c7</name>
  <parent>computer</parent>
  <driver>
    <name>serial</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>3</slot>
    <function>3</function>
    <product id='0x29c7'>82G33/G31/P35/P31 Express Serial KT Controller</product>
    <vendor id='0x8086'>Intel Corporation</vendor>
  </capability>
</device>


<device>
  <name>platform_floppy_0_storage_platform_floppy</name>
  <parent>platform_floppy_0</parent>
  <capability type='storage'>
    <block>/dev/fd0</block>
    <bus>platform</bus>
    <drive_type>floppy</drive_type>
    <vendor>PC Floppy Drive</vendor>
    <capability type='removable'>
      <media_available>0</media_available>
      <media_size>0</media_size>
      <logical_block_size>0</logical_block_size>
      <num_blocks>0</num_blocks>
    </capability>
  </capability>
</device>


<device>
  <name>storage_model_DVDRW_LH_20A1S</name>
  <parent>pci_8086_2920_scsi_host_0_scsi_device_lun0</parent>
  <capability type='storage'>
    <block>/dev/sr0</block>
    <bus>pci</bus>
    <drive_type>cdrom</drive_type>
    <model>DVDRW LH-20A1S</model>
    <vendor>LITE-ON</vendor>
    <capability type='removable'>
      <media_available>0</media_available>
      <media_size>0</media_size>
      <logical_block_size>0</logical_block_size>
      <num_blocks>0</num_blocks>
    </capability>
  </capability>
</device>


<device>
  <name>storage_serial_SATA_ST3320620AS_9QF5E3AP</name>
  <parent>pci_8086_2920_scsi_host_scsi_device_lun0</parent>
  <capability type='storage'>
    <block>/dev/sda</block>
    <bus>pci</bus>
    <drive_type>disk</drive_type>
    <model>ST3320620AS</model>
    <vendor>ATA</vendor>
    <serial>SATA_ST3320620AS_9QF5E3AP</serial>
    <size>320072933376</size>
    <logical_block_size>0</logical_block_size>
    <num_blocks>0</num_blocks>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1a_0</name>
  <parent>pci_8086_2937</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>3</bus>
    <device>1</device>
    <product id='0x0001'>1.1 root hub</product>
    <vendor id='0x1d6b'>Linux Foundation</vendor>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1a_0_if0</name>
  <parent>usb_device_1d6b_1_0000_00_1a_0</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1a_1</name>
  <parent>pci_8086_2938</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>4</bus>
    <device>1</device>
    <product id='0x0001'>1.1 root hub</product>
    <vendor id='0x1d6b'>Linux Foundation</vendor>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1a_1_if0</name>
  <parent>usb_device_1d6b_1_0000_00_1a_1</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1a_2</name>
  <parent>pci_8086_2939</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>5</bus>
    <device>1</device>
    <product id='0x0001'>1.1 root hub</product>
    <vendor id='0x1d6b'>Linux Foundation</vendor>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1a_2_if0</name>
  <parent>usb_device_1d6b_1_0000_00_1a_2</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1d_0</name>
  <parent>pci_8086_2934</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>6</bus>
    <device>1</device>
    <product id='0x0001'>1.1 root hub</product>
    <vendor id='0x1d6b'>Linux Foundation</vendor>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1d_0_if0</name>
  <parent>usb_device_1d6b_1_0000_00_1d_0</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1d_1</name>
  <parent>pci_8086_2935</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>7</bus>
    <device>1</device>
    <product id='0x0001'>1.1 root hub</product>
    <vendor id='0x1d6b'>Linux Foundation</vendor>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1d_1_if0</name>
  <parent>usb_device_1d6b_1_0000_00_1d_1</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1d_2</name>
  <parent>pci_8086_2936</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>8</bus>
    <device>1</device>
    <product id='0x0001'>1.1 root hub</product>
    <vendor id='0x1d6b'>Linux Foundation</vendor>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_1_0000_00_1d_2_if0</name>
  <parent>usb_device_1d6b_1_0000_00_1d_2</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_2_0000_00_1a_7</name>
  <parent>pci_8086_293c</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>1</bus>
    <device>1</device>
    <product id='0x0002'>2.0 root hub</product>
    <vendor id='0x1d6b'>Linux Foundation</vendor>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_2_0000_00_1a_7_if0</name>
  <parent>usb_device_1d6b_2_0000_00_1a_7</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_2_0000_00_1d_7</name>
  <parent>pci_8086_293a</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>2</bus>
    <device>1</device>
    <product id='0x0002'>2.0 root hub</product>
    <vendor id='0x1d6b'>Linux Foundation</vendor>
  </capability>
</device>


<device>
  <name>usb_device_1d6b_2_0000_00_1d_7_if0</name>
  <parent>usb_device_1d6b_2_0000_00_1d_7</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
  </capability>
</device>


/sys/devices/pci0000:00/0000:00:00.0
/sys/devices/pci0000:00/0000:00:02.0
/sys/devices/pci0000:00/0000:00:03.0
/sys/devices/pci0000:00/0000:00:03.2
/sys/devices/pci0000:00/0000:00:03.3
/sys/devices/pci0000:00/0000:00:19.0
/sys/devices/pci0000:00/0000:00:19.0/net/eth0
/sys/devices/pci0000:00/0000:00:1a.0/usb3
/sys/devices/pci0000:00/0000:00:1a.0/usb3/3-0:1.0
/sys/devices/pci0000:00/0000:00:1a.1/usb4
/sys/devices/pci0000:00/0000:00:1a.1/usb4/4-0:1.0
/sys/devices/pci0000:00/0000:00:1a.2/usb5
/sys/devices/pci0000:00/0000:00:1a.2/usb5/5-0:1.0
/sys/devices/pci0000:00/0000:00:1a.7/usb1
/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-0:1.0
/sys/devices/pci0000:00/0000:00:1b.0
/sys/devices/pci0000:00/0000:00:1d.0/usb6
/sys/devices/pci0000:00/0000:00:1d.0/usb6/6-0:1.0
/sys/devices/pci0000:00/0000:00:1d.1/usb7
/sys/devices/pci0000:00/0000:00:1d.1/usb7/7-0:1.0
/sys/devices/pci0000:00/0000:00:1d.2/usb8
/sys/devices/pci0000:00/0000:00:1d.2/usb8/8-0:1.0
/sys/devices/pci0000:00/0000:00:1d.7/usb2
/sys/devices/pci0000:00/0000:00:1d.7/usb2/2-0:1.0
/sys/devices/pci0000:00/0000:00:1e.0
/sys/devices/pci0000:00/0000:00:1f.0
/sys/devices/pci0000:00/0000:00:1f.2/host0
/sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0
/sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda
/sys/devices/pci0000:00/0000:00:1f.2/host1
/sys/devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0
/sys/devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0/block/sr0
/sys/devices/pci0000:00/0000:00:1f.5
/sys/devices/pci0000:00/0000:00:1f.5/host2
/sys/devices/pci0000:00/0000:00:1f.5/host3
/sys/devices/virtual/net/lo
/sys/devices/virtual/net/ovirtbr0
/sys/devices/virtual/net/virbr0
computer

<device>
  <name>/sys/devices/pci0000:00/0000:00:00.0</name>
  <parent>/sys/devices/pci0000:00</parent>
  <driver>
    <name>agpgart-intel</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>0</slot>
    <function>0</function>
    <product id='0x0000' />
    <vendor id='0x8086' />
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:02.0</name>
  <parent>/sys/devices/pci0000:00</parent>
  <driver>
    <name>i915</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>2</slot>
    <function>0</function>
    <product id='0x0000' />
    <vendor id='0x8086' />
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:03.0</name>
  <parent>/sys/devices/pci0000:00</parent>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>3</slot>
    <function>0</function>
    <product id='0x0000' />
    <vendor id='0x8086' />
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:03.2</name>
  <parent>/sys/devices/pci0000:00</parent>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>3</slot>
    <function>2</function>
    <product id='0x0000' />
    <vendor id='0x8086' />
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:03.3</name>
  <parent>/sys/devices/pci0000:00</parent>
  <driver>
    <name>serial</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>3</slot>
    <function>3</function>
    <product id='0x0000' />
    <vendor id='0x8086' />
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:19.0</name>
  <parent>/sys/devices/pci0000:00</parent>
  <driver>
    <name>e1000e</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>25</slot>
    <function>0</function>
    <product id='0x0000' />
    <vendor id='0x8086' />
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:19.0/net/eth0</name>
  <parent>/sys/devices/pci0000:00/0000:00:19.0</parent>
  <capability type='net'>
    <interface>eth0</interface>
    <address>00:13:20:f5:fa:e3</address>
    <capability type='80203'/>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1a.0/usb3</name>
  <parent>/sys/devices/pci0000:00/0000:00:1a.0</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>3</bus>
    <device>1</device>
    <product id='0x0001'>UHCI_Host_Controller</product>
    <vendor id='0x1d6b'>Linux_2.6.30.8-64.fc11.x86_64_uhci_hcd</vendor>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1a.0/usb3/3-0:1.0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1a.0/usb3</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
    <interface_name>9/0/0</interface_name>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1a.1/usb4</name>
  <parent>/sys/devices/pci0000:00/0000:00:1a.1</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>4</bus>
    <device>1</device>
    <product id='0x0001'>UHCI_Host_Controller</product>
    <vendor id='0x1d6b'>Linux_2.6.30.8-64.fc11.x86_64_uhci_hcd</vendor>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1a.1/usb4/4-0:1.0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1a.1/usb4</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
    <interface_name>9/0/0</interface_name>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1a.2/usb5</name>
  <parent>/sys/devices/pci0000:00/0000:00:1a.2</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>5</bus>
    <device>1</device>
    <product id='0x0001'>UHCI_Host_Controller</product>
    <vendor id='0x1d6b'>Linux_2.6.30.8-64.fc11.x86_64_uhci_hcd</vendor>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1a.2/usb5/5-0:1.0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1a.2/usb5</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
    <interface_name>9/0/0</interface_name>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1a.7/usb1</name>
  <parent>/sys/devices/pci0000:00/0000:00:1a.7</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>1</bus>
    <device>1</device>
    <product id='0x0002'>EHCI_Host_Controller</product>
    <vendor id='0x1d6b'>Linux_2.6.30.8-64.fc11.x86_64_ehci_hcd</vendor>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-0:1.0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1a.7/usb1</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
    <interface_name>9/0/0</interface_name>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1b.0</name>
  <parent>/sys/devices/pci0000:00</parent>
  <driver>
    <name>HDA Intel</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>27</slot>
    <function>0</function>
    <product id='0x0000' />
    <vendor id='0x8086' />
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1d.0/usb6</name>
  <parent>/sys/devices/pci0000:00/0000:00:1d.0</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>6</bus>
    <device>1</device>
    <product id='0x0001'>UHCI_Host_Controller</product>
    <vendor id='0x1d6b'>Linux_2.6.30.8-64.fc11.x86_64_uhci_hcd</vendor>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1d.0/usb6/6-0:1.0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1d.0/usb6</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
    <interface_name>9/0/0</interface_name>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1d.1/usb7</name>
  <parent>/sys/devices/pci0000:00/0000:00:1d.1</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>7</bus>
    <device>1</device>
    <product id='0x0001'>UHCI_Host_Controller</product>
    <vendor id='0x1d6b'>Linux_2.6.30.8-64.fc11.x86_64_uhci_hcd</vendor>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1d.1/usb7/7-0:1.0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1d.1/usb7</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
    <interface_name>9/0/0</interface_name>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1d.2/usb8</name>
  <parent>/sys/devices/pci0000:00/0000:00:1d.2</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>0</bus>
    <device>0</device>
    <product id='0x0000' />
    <vendor id='0x0000' />
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1d.2/usb8/8-0:1.0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1d.2/usb8</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
    <interface_name>9/0/0</interface_name>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1d.7/usb2</name>
  <parent>/sys/devices/pci0000:00/0000:00:1d.7</parent>
  <driver>
    <name>usb</name>
  </driver>
  <capability type='usb_device'>
    <bus>2</bus>
    <device>1</device>
    <product id='0x0002'>EHCI_Host_Controller</product>
    <vendor id='0x1d6b'>Linux_2.6.30.8-64.fc11.x86_64_ehci_hcd</vendor>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1d.7/usb2/2-0:1.0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1d.7/usb2</parent>
  <driver>
    <name>hub</name>
  </driver>
  <capability type='usb'>
    <number>0</number>
    <class>9</class>
    <subclass>0</subclass>
    <protocol>0</protocol>
    <interface_name>9/0/0</interface_name>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1e.0</name>
  <parent>/sys/devices/pci0000:00</parent>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>30</slot>
    <function>0</function>
    <product id='0x0000' />
    <vendor id='0x8086' />
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1f.0</name>
  <parent>/sys/devices/pci0000:00</parent>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>31</slot>
    <function>0</function>
    <product id='0x0000' />
    <vendor id='0x8086' />
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1f.2/host0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1f.2</parent>
  <capability type='scsi_host'>
    <host>0</host>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0</parent>
  <driver>
    <name>sd</name>
  </driver>
  <capability type='scsi'>
    <host>0</host>
    <bus>0</bus>
    <target>0</target>
    <lun>0</lun>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda</name>
  <parent>/sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0</parent>
  <capability type='storage'>
    <block>/dev/sda</block>
    <bus>scsi</bus>
    <drive_type>disk</drive_type>
    <model>ST3320620AS</model>
    <vendor>ATA</vendor>
    <serial>SATA_ST3320620AS_9QF5E3AP</serial>
    <size>0</size>
    <logical_block_size>0</logical_block_size>
    <num_blocks>625142448</num_blocks>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1f.2/host1</name>
  <parent>/sys/devices/pci0000:00/0000:00:1f.2</parent>
  <capability type='scsi_host'>
    <host>1</host>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1f.2/host1/target1:0:0</parent>
  <driver>
    <name>sr</name>
  </driver>
  <capability type='scsi'>
    <host>1</host>
    <bus>0</bus>
    <target>0</target>
    <lun>0</lun>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0/block/sr0</name>
  <parent>/sys/devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0</parent>
  <capability type='storage'>
    <block>/dev/sr0</block>
    <bus>scsi</bus>
    <drive_type>cd</drive_type>
    <model>DVDRW LH-20A1S</model>
    <vendor>LITE-ON</vendor>
    <capability type='removable'>
      <media_available>0</media_available>
      <media_size>0</media_size>
      <logical_block_size>0</logical_block_size>
      <num_blocks>0</num_blocks>
    </capability>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1f.5</name>
  <parent>/sys/devices/pci0000:00</parent>
  <driver>
    <name>ata_piix</name>
  </driver>
  <capability type='pci'>
    <domain>0</domain>
    <bus>0</bus>
    <slot>31</slot>
    <function>5</function>
    <product id='0x0000' />
    <vendor id='0x8086' />
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1f.5/host2</name>
  <parent>/sys/devices/pci0000:00/0000:00:1f.5</parent>
  <capability type='scsi_host'>
    <host>2</host>
  </capability>
</device>


<device>
  <name>/sys/devices/pci0000:00/0000:00:1f.5/host3</name>
  <parent>/sys/devices/pci0000:00/0000:00:1f.5</parent>
  <capability type='scsi_host'>
    <host>3</host>
  </capability>
</device>


<device>
  <name>/sys/devices/virtual/net/lo</name>
  <capability type='net'>
    <interface>lo</interface>
    <address>00:00:00:00:00:00</address>
    <capability type='80203'/>
  </capability>
</device>


<device>
  <name>/sys/devices/virtual/net/ovirtbr0</name>
  <capability type='net'>
    <interface>ovirtbr0</interface>
    <address>00:13:20:f5:fa:e3</address>
    <capability type='80203'/>
  </capability>
</device>


<device>
  <name>/sys/devices/virtual/net/virbr0</name>
  <capability type='net'>
    <interface>virbr0</interface>
    <address>1e:85:27:2d:a9:b0</address>
    <capability type='80203'/>
  </capability>
</device>


<device>
  <name>computer</name>
  <capability type='system'>
    <product>To Be Filled By O.E.M.</product>
    <dmi_devpath>/sys/devices/virtual/dmi/id</dmi_devpath>
    <description>fictional device to root the node device tree</description>
    <hardware>
      <vendor>To Be Filled By O.E.M.</vendor>
      <version>To Be Filled By O.E.M.</version>
      <serial>To Be Filled By O.E.M.</serial>
      <uuid>35363738-393a-3b3c-3d3e-3f4041424344</uuid>
    </hardware>
    <firmware>
      <vendor>American Megatrends Inc.</vendor>
      <version>SDBLI944.86P</version>
      <release_date>05/08/2007</release_date>
    </firmware>
  </capability>
</device>


--
Libvir-list mailing list
Libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]