[master 15/16] edd: Add another terrible seabios dataset

vathpela installerbot-noreply at redhat.com
Fri Nov 6 20:58:36 UTC 2015


From: Peter Jones <pjones at redhat.com>

So apparently if it actually shows the EDDv3 info on a SATA drive, it's
just a matter of luck.

Signed-off-by: Peter Jones <pjones at redhat.com>
---
 .../devicelibs_test/edd_data/bad_sata_virt/dev/sda | Bin 0 -> 512 bytes
 .../devicelibs_test/edd_data/bad_sata_virt/dev/sdb | Bin 0 -> 512 bytes
 .../devicelibs_test/edd_data/bad_sata_virt/dev/sdc | Bin 0 -> 512 bytes
 .../devicelibs_test/edd_data/bad_sata_virt/dev/sr0 |   0
 .../edd_data/bad_sata_virt/sys/block/sda           |   1 +
 .../edd_data/bad_sata_virt/sys/block/sdb           |   1 +
 .../edd_data/bad_sata_virt/sys/block/sdc           |   1 +
 .../edd_data/bad_sata_virt/sys/block/sr0           |   1 +
 .../0000:00:01.1/ata13/ata_port/ata13/device       |   1 +
 .../0000:00:01.1/ata13/ata_port/ata13/nr_pmp_links |   1 +
 .../0000:00:01.1/ata13/ata_port/ata13/port_no      |   1 +
 .../ata13/host12/scsi_host/host12/device           |   1 +
 .../host12/target12:0:0/12:0:0:0/block/sr0/device  |   1 +
 .../12:0:0:0/scsi_device/12:0:0:0/device           |   1 +
 .../ata13/link13/ata_link/link13/device            |   1 +
 .../ata13/link13/dev13.0/ata_device/dev13.0/device |   1 +
 .../ata13/link13/dev13.1/ata_device/dev13.1/device |   1 +
 .../0000:00:01.1/ata14/ata_port/ata14/device       |   1 +
 .../0000:00:01.1/ata14/ata_port/ata14/nr_pmp_links |   1 +
 .../0000:00:01.1/ata14/ata_port/ata14/port_no      |   1 +
 .../ata14/link14/ata_link/link14/device            |   1 +
 .../ata14/link14/dev14.0/ata_device/dev14.0/device |   1 +
 .../ata14/link14/dev14.1/ata_device/dev14.1/device |   1 +
 .../0000:00:03.0/ata1/ata_port/ata1/device         |   1 +
 .../0000:00:03.0/ata1/ata_port/ata1/nr_pmp_links   |   1 +
 .../0000:00:03.0/ata1/ata_port/ata1/port_no        |   1 +
 .../0000:00:03.0/ata1/host0/scsi_host/host0/device |   1 +
 .../host0/target0:0:0/0:0:0:0/block/sda/device     |   1 +
 .../target0:0:0/0:0:0:0/scsi_device/0:0:0:0/device |   1 +
 .../target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/device   |   1 +
 .../0000:00:03.0/ata1/link1/ata_link/link1/device  |   1 +
 .../ata1/link1/dev1.0/ata_device/dev1.0/device     |   1 +
 .../0000:00:03.0/ata2/ata_port/ata2/device         |   1 +
 .../0000:00:03.0/ata2/ata_port/ata2/nr_pmp_links   |   1 +
 .../0000:00:03.0/ata2/ata_port/ata2/port_no        |   1 +
 .../0000:00:03.0/ata2/link2/ata_link/link2/device  |   1 +
 .../ata2/link2/dev2.0/ata_device/dev2.0/device     |   1 +
 .../0000:00:03.0/ata3/ata_port/ata3/device         |   1 +
 .../0000:00:03.0/ata3/ata_port/ata3/nr_pmp_links   |   1 +
 .../0000:00:03.0/ata3/ata_port/ata3/port_no        |   1 +
 .../0000:00:03.0/ata3/link3/ata_link/link3/device  |   1 +
 .../ata3/link3/dev3.0/ata_device/dev3.0/device     |   1 +
 .../0000:00:03.0/ata4/ata_port/ata4/device         |   1 +
 .../0000:00:03.0/ata4/ata_port/ata4/nr_pmp_links   |   1 +
 .../0000:00:03.0/ata4/ata_port/ata4/port_no        |   1 +
 .../0000:00:03.0/ata4/link4/ata_link/link4/device  |   1 +
 .../ata4/link4/dev4.0/ata_device/dev4.0/device     |   1 +
 .../0000:00:03.0/ata5/ata_port/ata5/device         |   1 +
 .../0000:00:03.0/ata5/ata_port/ata5/nr_pmp_links   |   1 +
 .../0000:00:03.0/ata5/ata_port/ata5/port_no        |   1 +
 .../0000:00:03.0/ata5/link5/ata_link/link5/device  |   1 +
 .../ata5/link5/dev5.0/ata_device/dev5.0/device     |   1 +
 .../0000:00:03.0/ata6/ata_port/ata6/device         |   1 +
 .../0000:00:03.0/ata6/ata_port/ata6/nr_pmp_links   |   1 +
 .../0000:00:03.0/ata6/ata_port/ata6/port_no        |   1 +
 .../0000:00:03.0/ata6/link6/ata_link/link6/device  |   1 +
 .../ata6/link6/dev6.0/ata_device/dev6.0/device     |   1 +
 .../0000:00:0c.0/ata10/ata_port/ata10/device       |   1 +
 .../0000:00:0c.0/ata10/ata_port/ata10/nr_pmp_links |   1 +
 .../0000:00:0c.0/ata10/ata_port/ata10/port_no      |   1 +
 .../ata10/host9/scsi_host/host9/device             |   1 +
 .../host9/target9:0:0/9:0:0:0/block/sdb/device     |   1 +
 .../target9:0:0/9:0:0:0/scsi_device/9:0:0:0/device |   1 +
 .../target9:0:0/9:0:0:0/scsi_disk/9:0:0:0/device   |   1 +
 .../ata10/link10/ata_link/link10/device            |   1 +
 .../ata10/link10/dev10.0/ata_device/dev10.0/device |   1 +
 .../0000:00:0c.0/ata11/ata_port/ata11/device       |   1 +
 .../0000:00:0c.0/ata11/ata_port/ata11/nr_pmp_links |   1 +
 .../0000:00:0c.0/ata11/ata_port/ata11/port_no      |   1 +
 .../ata11/host10/scsi_host/host10/device           |   1 +
 .../host10/target10:0:0/10:0:0:0/block/sdc/device  |   1 +
 .../10:0:0:0/scsi_device/10:0:0:0/device           |   1 +
 .../10:0:0:0/scsi_disk/10:0:0:0/device             |   1 +
 .../ata11/link11/ata_link/link11/device            |   1 +
 .../ata11/link11/dev11.0/ata_device/dev11.0/device |   1 +
 .../0000:00:0c.0/ata12/ata_port/ata12/device       |   1 +
 .../0000:00:0c.0/ata12/ata_port/ata12/nr_pmp_links |   1 +
 .../0000:00:0c.0/ata12/ata_port/ata12/port_no      |   1 +
 .../ata12/link12/ata_link/link12/device            |   1 +
 .../ata12/link12/dev12.0/ata_device/dev12.0/device |   1 +
 .../0000:00:0c.0/ata7/ata_port/ata7/device         |   1 +
 .../0000:00:0c.0/ata7/ata_port/ata7/nr_pmp_links   |   1 +
 .../0000:00:0c.0/ata7/ata_port/ata7/port_no        |   1 +
 .../0000:00:0c.0/ata7/link7/ata_link/link7/device  |   1 +
 .../ata7/link7/dev7.0/ata_device/dev7.0/device     |   1 +
 .../0000:00:0c.0/ata8/ata_port/ata8/device         |   1 +
 .../0000:00:0c.0/ata8/ata_port/ata8/nr_pmp_links   |   1 +
 .../0000:00:0c.0/ata8/ata_port/ata8/port_no        |   1 +
 .../0000:00:0c.0/ata8/link8/ata_link/link8/device  |   1 +
 .../ata8/link8/dev8.0/ata_device/dev8.0/device     |   1 +
 .../0000:00:0c.0/ata9/ata_port/ata9/device         |   1 +
 .../0000:00:0c.0/ata9/ata_port/ata9/nr_pmp_links   |   1 +
 .../0000:00:0c.0/ata9/ata_port/ata9/port_no        |   1 +
 .../0000:00:0c.0/ata9/link9/ata_link/link9/device  |   1 +
 .../ata9/link9/dev9.0/ata_device/dev9.0/device     |   1 +
 .../sys/firmware/edd/int13_dev80/default_cylinders |   1 +
 .../sys/firmware/edd/int13_dev80/default_heads     |   1 +
 .../edd/int13_dev80/default_sectors_per_track      |   1 +
 .../sys/firmware/edd/int13_dev80/extensions        |   3 +
 .../sys/firmware/edd/int13_dev80/info_flags        |   1 +
 .../firmware/edd/int13_dev80/legacy_max_cylinder   |   1 +
 .../sys/firmware/edd/int13_dev80/legacy_max_head   |   1 +
 .../edd/int13_dev80/legacy_sectors_per_track       |   1 +
 .../sys/firmware/edd/int13_dev80/mbr_signature     |   1 +
 .../sys/firmware/edd/int13_dev80/raw_data          | Bin 0 -> 26 bytes
 .../sys/firmware/edd/int13_dev80/sectors           |   1 +
 .../sys/firmware/edd/int13_dev80/version           |   1 +
 .../sys/firmware/edd/int13_dev81/default_cylinders |   1 +
 .../sys/firmware/edd/int13_dev81/default_heads     |   1 +
 .../edd/int13_dev81/default_sectors_per_track      |   1 +
 .../sys/firmware/edd/int13_dev81/extensions        |   3 +
 .../sys/firmware/edd/int13_dev81/info_flags        |   1 +
 .../firmware/edd/int13_dev81/legacy_max_cylinder   |   1 +
 .../sys/firmware/edd/int13_dev81/legacy_max_head   |   1 +
 .../edd/int13_dev81/legacy_sectors_per_track       |   1 +
 .../sys/firmware/edd/int13_dev81/mbr_signature     |   1 +
 .../sys/firmware/edd/int13_dev81/raw_data          | Bin 0 -> 26 bytes
 .../sys/firmware/edd/int13_dev81/sectors           |   1 +
 .../sys/firmware/edd/int13_dev81/version           |   1 +
 .../sys/firmware/edd/int13_dev82/default_cylinders |   1 +
 .../sys/firmware/edd/int13_dev82/default_heads     |   1 +
 .../edd/int13_dev82/default_sectors_per_track      |   1 +
 .../sys/firmware/edd/int13_dev82/extensions        |   3 +
 .../sys/firmware/edd/int13_dev82/info_flags        |   1 +
 .../firmware/edd/int13_dev82/legacy_max_cylinder   |   1 +
 .../sys/firmware/edd/int13_dev82/legacy_max_head   |   1 +
 .../edd/int13_dev82/legacy_sectors_per_track       |   1 +
 .../sys/firmware/edd/int13_dev82/mbr_signature     |   1 +
 .../sys/firmware/edd/int13_dev82/raw_data          | Bin 0 -> 26 bytes
 .../sys/firmware/edd/int13_dev82/sectors           |   1 +
 .../sys/firmware/edd/int13_dev82/version           |   1 +
 tests/devicelibs_test/edd_test.py                  | 109 +++++++++++++++++++++
 132 files changed, 239 insertions(+)
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/dev/sda
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/dev/sdb
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/dev/sdc
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/dev/sr0
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sda
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sdb
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sdc
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sr0
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/scsi_host/host12/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/target12:0:0/12:0:0:0/block/sr0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/target12:0:0/12:0:0:0/scsi_device/12:0:0:0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/ata_link/link13/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/dev13.0/ata_device/dev13.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/dev13.1/ata_device/dev13.1/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/ata_link/link14/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/dev14.0/ata_device/dev14.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/dev14.1/ata_device/dev14.1/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/scsi_host/host0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/block/sda/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/link1/ata_link/link1/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/link1/dev1.0/ata_device/dev1.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/link2/ata_link/link2/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/link2/dev2.0/ata_device/dev2.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/link3/ata_link/link3/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/link3/dev3.0/ata_device/dev3.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/link4/ata_link/link4/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/link4/dev4.0/ata_device/dev4.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/link5/ata_link/link5/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/link5/dev5.0/ata_device/dev5.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/link6/ata_link/link6/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/link6/dev6.0/ata_device/dev6.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/scsi_host/host9/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/block/sdb/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/scsi_device/9:0:0:0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/scsi_disk/9:0:0:0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/link10/ata_link/link10/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/link10/dev10.0/ata_device/dev10.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/scsi_host/host10/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/block/sdc/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/scsi_device/10:0:0:0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/scsi_disk/10:0:0:0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/link11/ata_link/link11/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/link11/dev11.0/ata_device/dev11.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/link12/ata_link/link12/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/link12/dev12.0/ata_device/dev12.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/link7/ata_link/link7/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/link7/dev7.0/ata_device/dev7.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/link8/ata_link/link8/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/link8/dev8.0/ata_device/dev8.0/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/nr_pmp_links
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/port_no
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/link9/ata_link/link9/device
 create mode 120000 tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/link9/dev9.0/ata_device/dev9.0/device
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_cylinders
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_heads
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_sectors_per_track
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/extensions
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/info_flags
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_max_cylinder
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_max_head
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_sectors_per_track
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/mbr_signature
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/raw_data
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/sectors
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/version
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_cylinders
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_heads
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_sectors_per_track
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/extensions
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/info_flags
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_max_cylinder
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_max_head
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_sectors_per_track
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/mbr_signature
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/raw_data
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/sectors
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/version
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_cylinders
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_heads
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_sectors_per_track
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/extensions
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/info_flags
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_max_cylinder
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_max_head
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_sectors_per_track
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/mbr_signature
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/raw_data
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/sectors
 create mode 100644 tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/version

diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/dev/sda b/tests/devicelibs_test/edd_data/bad_sata_virt/dev/sda
new file mode 100644
index 0000000000000000000000000000000000000000..adb5d48057ef720915829b205b51a8fca1f87bb7
GIT binary patch
literal 512
zcmeyhgF&G0!XAbVI~W-HZuA}ay^o=0KLguN2ByzTUMaFMFznmMZoyK at -F!@-@!vo8
w($BBOwlHmA+|5w4siCWcvD=5~tne#_8U}{f{}@IA{X)Q7X#Zo%Z3|rm09P3!umAu6

literal 0
HcmV?d00001

diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/dev/sdb b/tests/devicelibs_test/edd_data/bad_sata_virt/dev/sdb
new file mode 100644
index 0000000000000000000000000000000000000000..a5d2fc528fe16c81b133d79e07cf03847fc0167f
GIT binary patch
literal 512
zcmeyhgF&G0!XAbVI~W-HZuA}ay^o=0KLguN2ByzTUMaFMFznmMZoyK at -F!@-@!vo8
w($BBOwlHmA+|5w4siCWcvD=5~tne#_8U}{f{}@IA{X*dOhyS&d+ZMVC0JAM5_y7O^

literal 0
HcmV?d00001

diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/dev/sdc b/tests/devicelibs_test/edd_data/bad_sata_virt/dev/sdc
new file mode 100644
index 0000000000000000000000000000000000000000..2c5f74e6e2469808c6781e078eb122d2f40da6ff
GIT binary patch
literal 512
zcmZ9JPiWI{6vw}bX&a}rg at V{i%`U<&Vq~y^6Y7Yp2k}tprR=a`7Z8z^ED?kRvPC6v
zBle)@IZ%+|VT at 2ZDp}fMcM5Df2?Ie-wYdyBI<V6E8|*UQ<$d2DK3{k*cwCCvdtb3x
z1?=y(*LR`rAiNE_`>`_?23$8X#VD7IR&04Nh$!9QszYy5HK<$q8<|>tK>P6yR3I4O
zztE|(#_&(6)NAN+sMjdU^p at UvLH2o%*b!r{|Dm8x4`teHWZaPI+^dzdems|v?k at MU
zWo6R%Ny)c)&k~rFDGV)v-eqDCSCez9Xw9)i%%6(OyFwU6XU309p&E+8bBFcgOQX4$
z2T|h(+*jJ~6^PMF%Pb62B4I@<`}JS6**1?;mcT|U4X;g$79(yD+C@)!C~gowe;}Sr
znER(mX6^{AHaV!9-)?#JHqF+}y`0%1R(6v=tWx9(QgW?1pWFszAM(8&=yvOG_tW+K
z at J3E`buGByzSY_jaNlX|oA9p%gV{`WhQsW_;xnZ4Qh^hmEImbLAzuJ at Uy>H3(Gk=r
zI9L4GmuV=+&GXk46OUd4IyVMmJ)8hbrYZ8R^+;mnC^C*T(O`fhcHD42uOU4GRNtRR
IkSbgL2Nid|-T(jq

literal 0
HcmV?d00001

diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/dev/sr0 b/tests/devicelibs_test/edd_data/bad_sata_virt/dev/sr0
new file mode 100644
index 0000000..e69de29
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sda b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sda
new file mode 120000
index 0000000..29775a1
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sda
@@ -0,0 +1 @@
+../devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/block/sda
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sdb b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sdb
new file mode 120000
index 0000000..b4e3ea6
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sdb
@@ -0,0 +1 @@
+../devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/block/sdb
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sdc b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sdc
new file mode 120000
index 0000000..f0c1760
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sdc
@@ -0,0 +1 @@
+../devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/block/sdc
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sr0 b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sr0
new file mode 120000
index 0000000..ed597f5
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/block/sr0
@@ -0,0 +1 @@
+../devices/pci0000:00/0000:00:01.1/ata13/host12/target12:0:0/12:0:0:0/block/sr0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/device
new file mode 120000
index 0000000..428d3cf
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/device
@@ -0,0 +1 @@
+../../../ata13
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/port_no
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/ata_port/ata13/port_no
@@ -0,0 +1 @@
+1
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/scsi_host/host12/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/scsi_host/host12/device
new file mode 120000
index 0000000..941b32f
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/scsi_host/host12/device
@@ -0,0 +1 @@
+../../../host12
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/target12:0:0/12:0:0:0/block/sr0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/target12:0:0/12:0:0:0/block/sr0/device
new file mode 120000
index 0000000..36d89ae
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/target12:0:0/12:0:0:0/block/sr0/device
@@ -0,0 +1 @@
+../../../12:0:0:0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/target12:0:0/12:0:0:0/scsi_device/12:0:0:0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/target12:0:0/12:0:0:0/scsi_device/12:0:0:0/device
new file mode 120000
index 0000000..36d89ae
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/host12/target12:0:0/12:0:0:0/scsi_device/12:0:0:0/device
@@ -0,0 +1 @@
+../../../12:0:0:0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/ata_link/link13/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/ata_link/link13/device
new file mode 120000
index 0000000..1559731
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/ata_link/link13/device
@@ -0,0 +1 @@
+../../../link13
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/dev13.0/ata_device/dev13.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/dev13.0/ata_device/dev13.0/device
new file mode 120000
index 0000000..2cdef41
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/dev13.0/ata_device/dev13.0/device
@@ -0,0 +1 @@
+../../../dev13.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/dev13.1/ata_device/dev13.1/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/dev13.1/ata_device/dev13.1/device
new file mode 120000
index 0000000..0a0b2f1
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata13/link13/dev13.1/ata_device/dev13.1/device
@@ -0,0 +1 @@
+../../../dev13.1
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/device
new file mode 120000
index 0000000..25788c6
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/device
@@ -0,0 +1 @@
+../../../ata14
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/port_no
new file mode 100644
index 0000000..0cfbf08
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/ata_port/ata14/port_no
@@ -0,0 +1 @@
+2
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/ata_link/link14/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/ata_link/link14/device
new file mode 120000
index 0000000..373dfae
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/ata_link/link14/device
@@ -0,0 +1 @@
+../../../link14
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/dev14.0/ata_device/dev14.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/dev14.0/ata_device/dev14.0/device
new file mode 120000
index 0000000..50335c6
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/dev14.0/ata_device/dev14.0/device
@@ -0,0 +1 @@
+../../../dev14.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/dev14.1/ata_device/dev14.1/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/dev14.1/ata_device/dev14.1/device
new file mode 120000
index 0000000..6b32cc9
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:01.1/ata14/link14/dev14.1/ata_device/dev14.1/device
@@ -0,0 +1 @@
+../../../dev14.1
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/device
new file mode 120000
index 0000000..28280b6
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/device
@@ -0,0 +1 @@
+../../../ata1
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/port_no
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/ata_port/ata1/port_no
@@ -0,0 +1 @@
+1
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/scsi_host/host0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/scsi_host/host0/device
new file mode 120000
index 0000000..50ea9d7
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/scsi_host/host0/device
@@ -0,0 +1 @@
+../../../host0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/block/sda/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/block/sda/device
new file mode 120000
index 0000000..79ba802
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/block/sda/device
@@ -0,0 +1 @@
+../../../0:0:0:0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0/device
new file mode 120000
index 0000000..79ba802
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0/device
@@ -0,0 +1 @@
+../../../0:0:0:0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/device
new file mode 120000
index 0000000..79ba802
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/device
@@ -0,0 +1 @@
+../../../0:0:0:0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/link1/ata_link/link1/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/link1/ata_link/link1/device
new file mode 120000
index 0000000..119b98a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/link1/ata_link/link1/device
@@ -0,0 +1 @@
+../../../link1
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/link1/dev1.0/ata_device/dev1.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/link1/dev1.0/ata_device/dev1.0/device
new file mode 120000
index 0000000..f7359b6
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata1/link1/dev1.0/ata_device/dev1.0/device
@@ -0,0 +1 @@
+../../../dev1.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/device
new file mode 120000
index 0000000..b80fb52
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/device
@@ -0,0 +1 @@
+../../../ata2
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/port_no
new file mode 100644
index 0000000..0cfbf08
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/ata_port/ata2/port_no
@@ -0,0 +1 @@
+2
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/link2/ata_link/link2/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/link2/ata_link/link2/device
new file mode 120000
index 0000000..2b104a0
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/link2/ata_link/link2/device
@@ -0,0 +1 @@
+../../../link2
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/link2/dev2.0/ata_device/dev2.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/link2/dev2.0/ata_device/dev2.0/device
new file mode 120000
index 0000000..5648cdf
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata2/link2/dev2.0/ata_device/dev2.0/device
@@ -0,0 +1 @@
+../../../dev2.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/device
new file mode 120000
index 0000000..15cd03b
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/device
@@ -0,0 +1 @@
+../../../ata3
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/port_no
new file mode 100644
index 0000000..00750ed
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/ata_port/ata3/port_no
@@ -0,0 +1 @@
+3
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/link3/ata_link/link3/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/link3/ata_link/link3/device
new file mode 120000
index 0000000..384d97e
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/link3/ata_link/link3/device
@@ -0,0 +1 @@
+../../../link3
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/link3/dev3.0/ata_device/dev3.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/link3/dev3.0/ata_device/dev3.0/device
new file mode 120000
index 0000000..e62e1d6
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata3/link3/dev3.0/ata_device/dev3.0/device
@@ -0,0 +1 @@
+../../../dev3.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/device
new file mode 120000
index 0000000..0a2610d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/device
@@ -0,0 +1 @@
+../../../ata4
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/port_no
new file mode 100644
index 0000000..b8626c4
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/ata_port/ata4/port_no
@@ -0,0 +1 @@
+4
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/link4/ata_link/link4/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/link4/ata_link/link4/device
new file mode 120000
index 0000000..44d0aa9
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/link4/ata_link/link4/device
@@ -0,0 +1 @@
+../../../link4
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/link4/dev4.0/ata_device/dev4.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/link4/dev4.0/ata_device/dev4.0/device
new file mode 120000
index 0000000..7a8422b
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata4/link4/dev4.0/ata_device/dev4.0/device
@@ -0,0 +1 @@
+../../../dev4.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/device
new file mode 120000
index 0000000..e4b07d8
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/device
@@ -0,0 +1 @@
+../../../ata5
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/port_no
new file mode 100644
index 0000000..7ed6ff8
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/ata_port/ata5/port_no
@@ -0,0 +1 @@
+5
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/link5/ata_link/link5/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/link5/ata_link/link5/device
new file mode 120000
index 0000000..6951f69
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/link5/ata_link/link5/device
@@ -0,0 +1 @@
+../../../link5
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/link5/dev5.0/ata_device/dev5.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/link5/dev5.0/ata_device/dev5.0/device
new file mode 120000
index 0000000..ea1d13b
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata5/link5/dev5.0/ata_device/dev5.0/device
@@ -0,0 +1 @@
+../../../dev5.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/device
new file mode 120000
index 0000000..7683f59
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/device
@@ -0,0 +1 @@
+../../../ata6
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/port_no
new file mode 100644
index 0000000..1e8b314
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/ata_port/ata6/port_no
@@ -0,0 +1 @@
+6
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/link6/ata_link/link6/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/link6/ata_link/link6/device
new file mode 120000
index 0000000..421edb9
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/link6/ata_link/link6/device
@@ -0,0 +1 @@
+../../../link6
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/link6/dev6.0/ata_device/dev6.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/link6/dev6.0/ata_device/dev6.0/device
new file mode 120000
index 0000000..c7d7e1d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:03.0/ata6/link6/dev6.0/ata_device/dev6.0/device
@@ -0,0 +1 @@
+../../../dev6.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/device
new file mode 120000
index 0000000..dff802e
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/device
@@ -0,0 +1 @@
+../../../ata10
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/port_no
new file mode 100644
index 0000000..b8626c4
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/ata_port/ata10/port_no
@@ -0,0 +1 @@
+4
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/scsi_host/host9/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/scsi_host/host9/device
new file mode 120000
index 0000000..bb4897d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/scsi_host/host9/device
@@ -0,0 +1 @@
+../../../host9
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/block/sdb/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/block/sdb/device
new file mode 120000
index 0000000..05c3626
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/block/sdb/device
@@ -0,0 +1 @@
+../../../9:0:0:0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/scsi_device/9:0:0:0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/scsi_device/9:0:0:0/device
new file mode 120000
index 0000000..05c3626
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/scsi_device/9:0:0:0/device
@@ -0,0 +1 @@
+../../../9:0:0:0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/scsi_disk/9:0:0:0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/scsi_disk/9:0:0:0/device
new file mode 120000
index 0000000..05c3626
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/host9/target9:0:0/9:0:0:0/scsi_disk/9:0:0:0/device
@@ -0,0 +1 @@
+../../../9:0:0:0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/link10/ata_link/link10/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/link10/ata_link/link10/device
new file mode 120000
index 0000000..b501dae
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/link10/ata_link/link10/device
@@ -0,0 +1 @@
+../../../link10
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/link10/dev10.0/ata_device/dev10.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/link10/dev10.0/ata_device/dev10.0/device
new file mode 120000
index 0000000..c5f6a5c
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata10/link10/dev10.0/ata_device/dev10.0/device
@@ -0,0 +1 @@
+../../../dev10.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/device
new file mode 120000
index 0000000..5d48b36
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/device
@@ -0,0 +1 @@
+../../../ata11
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/port_no
new file mode 100644
index 0000000..7ed6ff8
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/ata_port/ata11/port_no
@@ -0,0 +1 @@
+5
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/scsi_host/host10/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/scsi_host/host10/device
new file mode 120000
index 0000000..c540329
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/scsi_host/host10/device
@@ -0,0 +1 @@
+../../../host10
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/block/sdc/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/block/sdc/device
new file mode 120000
index 0000000..0365ab2
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/block/sdc/device
@@ -0,0 +1 @@
+../../../10:0:0:0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/scsi_device/10:0:0:0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/scsi_device/10:0:0:0/device
new file mode 120000
index 0000000..0365ab2
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/scsi_device/10:0:0:0/device
@@ -0,0 +1 @@
+../../../10:0:0:0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/scsi_disk/10:0:0:0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/scsi_disk/10:0:0:0/device
new file mode 120000
index 0000000..0365ab2
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/host10/target10:0:0/10:0:0:0/scsi_disk/10:0:0:0/device
@@ -0,0 +1 @@
+../../../10:0:0:0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/link11/ata_link/link11/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/link11/ata_link/link11/device
new file mode 120000
index 0000000..eb816f5
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/link11/ata_link/link11/device
@@ -0,0 +1 @@
+../../../link11
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/link11/dev11.0/ata_device/dev11.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/link11/dev11.0/ata_device/dev11.0/device
new file mode 120000
index 0000000..8c4757e
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata11/link11/dev11.0/ata_device/dev11.0/device
@@ -0,0 +1 @@
+../../../dev11.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/device
new file mode 120000
index 0000000..e3e5cc4
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/device
@@ -0,0 +1 @@
+../../../ata12
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/port_no
new file mode 100644
index 0000000..1e8b314
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/ata_port/ata12/port_no
@@ -0,0 +1 @@
+6
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/link12/ata_link/link12/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/link12/ata_link/link12/device
new file mode 120000
index 0000000..686ae74
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/link12/ata_link/link12/device
@@ -0,0 +1 @@
+../../../link12
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/link12/dev12.0/ata_device/dev12.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/link12/dev12.0/ata_device/dev12.0/device
new file mode 120000
index 0000000..d617e71
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata12/link12/dev12.0/ata_device/dev12.0/device
@@ -0,0 +1 @@
+../../../dev12.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/device
new file mode 120000
index 0000000..a9a2fca
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/device
@@ -0,0 +1 @@
+../../../ata7
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/port_no
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/ata_port/ata7/port_no
@@ -0,0 +1 @@
+1
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/link7/ata_link/link7/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/link7/ata_link/link7/device
new file mode 120000
index 0000000..5927252
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/link7/ata_link/link7/device
@@ -0,0 +1 @@
+../../../link7
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/link7/dev7.0/ata_device/dev7.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/link7/dev7.0/ata_device/dev7.0/device
new file mode 120000
index 0000000..79f3f95
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata7/link7/dev7.0/ata_device/dev7.0/device
@@ -0,0 +1 @@
+../../../dev7.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/device
new file mode 120000
index 0000000..31b7991
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/device
@@ -0,0 +1 @@
+../../../ata8
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/port_no
new file mode 100644
index 0000000..0cfbf08
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/ata_port/ata8/port_no
@@ -0,0 +1 @@
+2
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/link8/ata_link/link8/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/link8/ata_link/link8/device
new file mode 120000
index 0000000..009cd61
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/link8/ata_link/link8/device
@@ -0,0 +1 @@
+../../../link8
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/link8/dev8.0/ata_device/dev8.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/link8/dev8.0/ata_device/dev8.0/device
new file mode 120000
index 0000000..be332fa
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata8/link8/dev8.0/ata_device/dev8.0/device
@@ -0,0 +1 @@
+../../../dev8.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/device
new file mode 120000
index 0000000..1ba73aa
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/device
@@ -0,0 +1 @@
+../../../ata9
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/nr_pmp_links b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/nr_pmp_links
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/nr_pmp_links
@@ -0,0 +1 @@
+0
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/port_no b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/port_no
new file mode 100644
index 0000000..00750ed
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/ata_port/ata9/port_no
@@ -0,0 +1 @@
+3
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/link9/ata_link/link9/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/link9/ata_link/link9/device
new file mode 120000
index 0000000..9b43833
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/link9/ata_link/link9/device
@@ -0,0 +1 @@
+../../../link9
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/link9/dev9.0/ata_device/dev9.0/device b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/link9/dev9.0/ata_device/dev9.0/device
new file mode 120000
index 0000000..b042e50
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/devices/pci0000:00/0000:00:0c.0/ata9/link9/dev9.0/ata_device/dev9.0/device
@@ -0,0 +1 @@
+../../../dev9.0
\ No newline at end of file
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_cylinders b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_cylinders
new file mode 100644
index 0000000..1819e48
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_cylinders
@@ -0,0 +1 @@
+10402
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_heads b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_heads
new file mode 100644
index 0000000..b6a7d89
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_heads
@@ -0,0 +1 @@
+16
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_sectors_per_track b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_sectors_per_track
new file mode 100644
index 0000000..4b9026d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/default_sectors_per_track
@@ -0,0 +1 @@
+63
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/extensions b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/extensions
new file mode 100644
index 0000000..821b59d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/extensions
@@ -0,0 +1,3 @@
+Fixed disk access
+Device locking and ejecting
+Enhanced Disk Drive support
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/info_flags b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/info_flags
new file mode 100644
index 0000000..7b65cd3
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/info_flags
@@ -0,0 +1 @@
+geometry valid
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_max_cylinder b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_max_cylinder
new file mode 100644
index 0000000..0e33251
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_max_cylinder
@@ -0,0 +1 @@
+650
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_max_head b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_max_head
new file mode 100644
index 0000000..f1aaa90
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_max_head
@@ -0,0 +1 @@
+254
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_sectors_per_track b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_sectors_per_track
new file mode 100644
index 0000000..4b9026d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/legacy_sectors_per_track
@@ -0,0 +1 @@
+63
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/mbr_signature b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/mbr_signature
new file mode 100644
index 0000000..e2d9042
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/mbr_signature
@@ -0,0 +1 @@
+0x86531966
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/raw_data b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/raw_data
new file mode 100644
index 0000000000000000000000000000000000000000..61f9404db4b54ed241ac4267872535042f8b9541
GIT binary patch
literal 26
ccmb1QU}9LL!N4HEz`$S+#0(4zz$60`03Egg*Z=?k

literal 0
HcmV?d00001

diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/sectors b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/sectors
new file mode 100644
index 0000000..a6ec9d9
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/sectors
@@ -0,0 +1 @@
+10485760
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/version b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/version
new file mode 100644
index 0000000..5a0dc65
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev80/version
@@ -0,0 +1 @@
+0x30
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_cylinders b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_cylinders
new file mode 100644
index 0000000..1c105f1
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_cylinders
@@ -0,0 +1 @@
+416
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_heads b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_heads
new file mode 100644
index 0000000..b6a7d89
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_heads
@@ -0,0 +1 @@
+16
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_sectors_per_track b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_sectors_per_track
new file mode 100644
index 0000000..4b9026d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/default_sectors_per_track
@@ -0,0 +1 @@
+63
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/extensions b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/extensions
new file mode 100644
index 0000000..821b59d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/extensions
@@ -0,0 +1,3 @@
+Fixed disk access
+Device locking and ejecting
+Enhanced Disk Drive support
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/info_flags b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/info_flags
new file mode 100644
index 0000000..7b65cd3
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/info_flags
@@ -0,0 +1 @@
+geometry valid
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_max_cylinder b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_max_cylinder
new file mode 100644
index 0000000..d1b9f6a
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_max_cylinder
@@ -0,0 +1 @@
+414
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_max_head b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_max_head
new file mode 100644
index 0000000..60d3b2f
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_max_head
@@ -0,0 +1 @@
+15
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_sectors_per_track b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_sectors_per_track
new file mode 100644
index 0000000..4b9026d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/legacy_sectors_per_track
@@ -0,0 +1 @@
+63
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/mbr_signature b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/mbr_signature
new file mode 100644
index 0000000..6ed30d2
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/mbr_signature
@@ -0,0 +1 @@
+0xe3bf124b
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/raw_data b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/raw_data
new file mode 100644
index 0000000000000000000000000000000000000000..acc71d64d64dd02b1818f7e9bf6c3343d1e5817b
GIT binary patch
literal 26
ccmb1QU}9Ln$iN`Lz`$S+#2IO9KoSU;039s>;{X5v

literal 0
HcmV?d00001

diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/sectors b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/sectors
new file mode 100644
index 0000000..209a43c
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/sectors
@@ -0,0 +1 @@
+419432
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/version b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/version
new file mode 100644
index 0000000..5a0dc65
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev81/version
@@ -0,0 +1 @@
+0x30
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_cylinders b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_cylinders
new file mode 100644
index 0000000..7d645f5
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_cylinders
@@ -0,0 +1 @@
+208
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_heads b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_heads
new file mode 100644
index 0000000..b6a7d89
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_heads
@@ -0,0 +1 @@
+16
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_sectors_per_track b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_sectors_per_track
new file mode 100644
index 0000000..4b9026d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/default_sectors_per_track
@@ -0,0 +1 @@
+63
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/extensions b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/extensions
new file mode 100644
index 0000000..821b59d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/extensions
@@ -0,0 +1,3 @@
+Fixed disk access
+Device locking and ejecting
+Enhanced Disk Drive support
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/info_flags b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/info_flags
new file mode 100644
index 0000000..7b65cd3
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/info_flags
@@ -0,0 +1 @@
+geometry valid
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_max_cylinder b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_max_cylinder
new file mode 100644
index 0000000..b35cfaf
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_max_cylinder
@@ -0,0 +1 @@
+206
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_max_head b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_max_head
new file mode 100644
index 0000000..60d3b2f
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_max_head
@@ -0,0 +1 @@
+15
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_sectors_per_track b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_sectors_per_track
new file mode 100644
index 0000000..4b9026d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/legacy_sectors_per_track
@@ -0,0 +1 @@
+63
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/mbr_signature b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/mbr_signature
new file mode 100644
index 0000000..197a345
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/mbr_signature
@@ -0,0 +1 @@
+0x7dfff0db
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/raw_data b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/raw_data
new file mode 100644
index 0000000000000000000000000000000000000000..6e0f83f74ccfff684bddc394587024e355c6f607
GIT binary patch
literal 26
bcmb1QU}Ctyz`!5?#P&dJV$2LAfq)4B9ZdnK

literal 0
HcmV?d00001

diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/sectors b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/sectors
new file mode 100644
index 0000000..a57b62d
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/sectors
@@ -0,0 +1 @@
+209716
diff --git a/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/version b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/version
new file mode 100644
index 0000000..5a0dc65
--- /dev/null
+++ b/tests/devicelibs_test/edd_data/bad_sata_virt/sys/firmware/edd/int13_dev82/version
@@ -0,0 +1 @@
+0x30
diff --git a/tests/devicelibs_test/edd_test.py b/tests/devicelibs_test/edd_test.py
index 56ce5f2..e71c536 100644
--- a/tests/devicelibs_test/edd_test.py
+++ b/tests/devicelibs_test/edd_test.py
@@ -523,3 +523,112 @@ def test_get_edd_dict_strawberry_mountain(self):
         lib.assertVerboseEqual(edd_dict["sdc"], 0x81)
         lib.assertVerboseEqual(edd_dict["sdd"], 0x80)
         lib.assertVerboseEqual(len(edd_dict), 4)
+
+    def test_collect_mbrs_bad_sata_virt(self):
+        self._edd_logger.debug("starting test %s", self._testMethodName)
+        edd.testdata_log.debug("starting test %s", self._testMethodName)
+        devices=(FakeDevice("sda"),
+                 FakeDevice("sdb"),
+                 FakeDevice("sdc"),
+                 )
+        fake_mbr_dict = { 'sda': '0xe3bf124b',
+                          'sdb': '0x7dfff0db',
+                          'sdc': '0x86531966',
+                          }
+        mbr_dict = edd.collect_mbrs(devices, root=self.root("bad_sata_virt"))
+        infos = [
+            ("edd: collected mbr signatures: %s", { 'sda': '0xe3bf124b',
+                                                    'sdb': '0x7dfff0db',
+                                                    'sdc': '0x86531966',
+                                                    }),
+        ]
+        self.check_logs(infos=infos)
+        lib.assertVerboseEqual(fake_mbr_dict, mbr_dict)
+
+    def test_collect_edd_data_bad_sata_virt(self):
+        self._edd_logger.debug("starting test %s", self._testMethodName)
+        edd.testdata_log.debug("starting test %s", self._testMethodName)
+        # test with sata sda, usb sdb
+        fakeedd = {
+            0x80: FakeEddEntry(version="0x30", mbr_sig="0x86531966",
+                               sectors=10485760,
+                               sysfspath="/sys/firmware/edd/int13_dev80/"),
+            0x81: FakeEddEntry(version="0x30", mbr_sig="0xe3bf124b",
+                               sectors=419432,
+                               sysfspath="/sys/firmware/edd/int13_dev81/"),
+            0x82: FakeEddEntry(version="0x30", mbr_sig="0x7dfff0db",
+                               sectors=209716,
+                               sysfspath="/sys/firmware/edd/int13_dev82/"),
+        }
+
+        edd_dict = edd.collect_edd_data(root=self.root("bad_sata_virt"))
+        self.debug('edd_dict: %s', edd_dict)
+        debugs = [
+            ("edd: found device 0x%x at %s", 0x80,
+             '/sys/firmware/edd/int13_dev80/'),
+            ("edd: found device 0x%x at %s", 0x81,
+             '/sys/firmware/edd/int13_dev81/'),
+            ("edd: found device 0x%x at %s", 0x82,
+             '/sys/firmware/edd/int13_dev82/'),
+        ]
+        self.check_logs(debugs=debugs)
+        lib.assertVerboseEqual(fakeedd[0x80], edd_dict[0x80])
+        lib.assertVerboseEqual(fakeedd[0x81], edd_dict[0x81])
+        lib.assertVerboseEqual(fakeedd[0x82], edd_dict[0x82])
+        lib.assertVerboseEqual(len(edd_dict), 3)
+
+    def test_get_edd_dict_bad_sata_virt(self):
+        # test with sata sda, usb sdb
+        self._edd_logger.debug("starting test %s", self._testMethodName)
+        edd.testdata_log.debug("starting test %s", self._testMethodName)
+        devices=(FakeDevice("sda"),
+                 FakeDevice("sdb"),
+                 FakeDevice("sdc"),
+                 )
+        fakeedd = {
+            0x80: FakeEddEntry(version="0x30", mbr_sig="0x86531966",
+                               sectors=10485760,
+                               sysfspath="/sys/firmware/edd/int13_dev80/",
+                               sysfslink="../devices/pci0000:00/0000:00:0c.0/"
+                               "ata11/host10/target10:0:0/10:0:0:0/block/sdc"),
+            0x81: FakeEddEntry(version="0x30", mbr_sig="0xe3bf124b",
+                               sectors=419432,
+                               sysfspath="/sys/firmware/edd/int13_dev81/",
+                               sysfslink="../devices/pci0000:00/0000:00:03.0/"
+                               "ata1/host0/target0:0:0/0:0:0:0/block/sda"),
+            0x82: FakeEddEntry(version="0x30", mbr_sig="0x7dfff0db",
+                               sectors=209716,
+                               sysfspath="/sys/firmware/edd/int13_dev82/",
+                               sysfslink="../devices/pci0000:00/0000:00:0c.0/"
+                               "ata10/host9/target9:0:0/9:0:0:0/block/sdb"),
+        }
+
+        edd_dict = edd.get_edd_dict(devices, root=self.root('bad_sata_virt'))
+        self.debug('edd_dict: %s', edd_dict)
+        debugs = [
+            ("edd: found device 0x%x at %s", 0x80,
+             '/sys/firmware/edd/int13_dev80/'),
+            ("edd: found device 0x%x at %s", 0x81,
+             '/sys/firmware/edd/int13_dev81/'),
+            ("edd: found device 0x%x at %s", 0x82,
+             '/sys/firmware/edd/int13_dev82/'),
+            ('edd: data extracted from 0x%x:%r', 0x80, fakeedd[0x80]),
+            ('edd: data extracted from 0x%x:%r', 0x81, fakeedd[0x81]),
+            ('edd: data extracted from 0x%x:%r', 0x82, fakeedd[0x82]),
+        ]
+        infos = [
+            ('edd: collected mbr signatures: %s', { 'sda': '0xe3bf124b',
+                                                    'sdb': '0x7dfff0db',
+                                                    'sdc': '0x86531966',
+                                                    }),
+            ('edd: matched 0x%x to %s using MBR sig', 128, 'sdc'),
+            ('edd: matched 0x%x to %s using MBR sig', 129, 'sda'),
+            ('edd: matched 0x%x to %s using MBR sig', 130, 'sdb'),
+        ]
+        warnings = [
+        ]
+        self.check_logs(debugs=debugs, infos=infos, warnings=warnings)
+        lib.assertVerboseEqual(edd_dict["sdc"], 0x80)
+        lib.assertVerboseEqual(edd_dict["sda"], 0x81)
+        lib.assertVerboseEqual(edd_dict["sdb"], 0x82)
+        lib.assertVerboseEqual(len(edd_dict), 3)


-- 
To view this commit on github, visit https://github.com/rhinstaller/blivet/commit/15b2e01bb52bc0d5594f1e15513e85d4b53b8a2a


More information about the anaconda-patches mailing list