tests/qtest/hd-geo-test: fix incorrect pcie-root-port usage and simplify test
The test attaches a SCSI controller to a non-zero slot and a pcie-to-pci bridge on slot 0 on the same pcie-root-port. Since a downstream device can be attached to a pcie-root-port only on slot 0, the above test configuration is not allowed. Additionally using pcie.0 as id for pcie-to-pci bridge is incorrect as that id is reserved only for the root bus. In the test scenario, there is no need to attach a pcie-root-port to the root complex. A SCSI controller can be attached to a pcie-to-pci bridge which can then be directly attached to the root bus (pcie.0). Fix the test and simplify it. CC: mst@redhat.com CC: imammedo@redhat.com CC: Michael Labiuk <michael.labiuk@virtuozzo.com> Acked-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Igor Mammedov <imammedo@redhat.com> Signed-off-by: Ani Sinha <anisinha@redhat.com> Message-Id: <20230705115925.5339-5-anisinha@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
bac4711b07
commit
579edbd459
@ -784,14 +784,12 @@ static void test_override_scsi(void)
|
||||
test_override(args, "pc", expected);
|
||||
}
|
||||
|
||||
static void setup_pci_bridge(TestArgs *args, const char *id, const char *rootid)
|
||||
static void setup_pci_bridge(TestArgs *args, const char *id)
|
||||
{
|
||||
|
||||
char *root, *br;
|
||||
root = g_strdup_printf("-device pcie-root-port,id=%s", rootid);
|
||||
br = g_strdup_printf("-device pcie-pci-bridge,bus=%s,id=%s", rootid, id);
|
||||
char *br;
|
||||
br = g_strdup_printf("-device pcie-pci-bridge,bus=pcie.0,id=%s", id);
|
||||
|
||||
args->argc = append_arg(args->argc, args->argv, ARGV_SIZE, root);
|
||||
args->argc = append_arg(args->argc, args->argv, ARGV_SIZE, br);
|
||||
}
|
||||
|
||||
@ -811,8 +809,8 @@ static void test_override_scsi_q35(void)
|
||||
add_drive_with_mbr(args, empty_mbr, 1);
|
||||
add_drive_with_mbr(args, empty_mbr, 1);
|
||||
add_drive_with_mbr(args, empty_mbr, 1);
|
||||
setup_pci_bridge(args, "pcie.0", "br");
|
||||
add_scsi_controller(args, "lsi53c895a", "br", 3);
|
||||
setup_pci_bridge(args, "pcie-pci-br");
|
||||
add_scsi_controller(args, "lsi53c895a", "pcie-pci-br", 3);
|
||||
add_scsi_disk(args, 0, 0, 0, 0, 0, 10000, 120, 30);
|
||||
add_scsi_disk(args, 1, 0, 0, 1, 0, 9000, 120, 30);
|
||||
add_scsi_disk(args, 2, 0, 0, 2, 0, 1, 0, 0);
|
||||
@ -868,9 +866,9 @@ static void test_override_virtio_blk_q35(void)
|
||||
};
|
||||
add_drive_with_mbr(args, empty_mbr, 1);
|
||||
add_drive_with_mbr(args, empty_mbr, 1);
|
||||
setup_pci_bridge(args, "pcie.0", "br");
|
||||
add_virtio_disk(args, 0, "br", 3, 10000, 120, 30);
|
||||
add_virtio_disk(args, 1, "br", 4, 9000, 120, 30);
|
||||
setup_pci_bridge(args, "pcie-pci-br");
|
||||
add_virtio_disk(args, 0, "pcie-pci-br", 3, 10000, 120, 30);
|
||||
add_virtio_disk(args, 1, "pcie-pci-br", 4, 9000, 120, 30);
|
||||
test_override(args, "q35", expected);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user