Skip to content

Commit a339a68

Browse files
authored
Fix SysMan driver get testing (#83)
Signed-off-by: Neil R. Spruit <[email protected]>
1 parent b2d1710 commit a339a68

File tree

5 files changed

+20
-6
lines changed

5 files changed

+20
-6
lines changed

conformance_tests/sysman/test_sysman_device/src/test_sysman_device_helper.cpp

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,18 @@ int main(int argc, char **argv) {
9696
exit(1);
9797
}
9898
LOG_INFO << "Child Process : Sysman initialized";
99-
100-
auto sysman_devices = lzt::get_zes_devices();
99+
// We must retrieve the SysMan Drivers on the system, then verify that the driver has valid devices.
100+
// The first driver with valid devices will be used.
101+
auto zes_drivers = lzt::get_all_zes_driver_handles();
102+
zes_driver_handle_t zes_driver_used;
103+
for (const auto &zes_driver : zes_drivers) {
104+
auto device_count = lzt::get_zes_device_count(zes_driver);
105+
if (device_count > 0) {
106+
zes_driver_used = zes_driver;
107+
break;
108+
}
109+
}
110+
auto sysman_devices = lzt::get_zes_devices(lzt::get_zes_device_count(zes_driver_used), zes_driver_used);
101111
EXPECT_FALSE(sysman_devices.empty());
102112

103113
std::vector<UUID> sysman_device_uuids{};

conformance_tests/sysman/test_sysman_init/src/test_init_sysman_after_core.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ TEST(
2727
}
2828
ASSERT_EQ(ZE_RESULT_SUCCESS, zeInit(0));
2929
uint32_t zeInitCount = 0;
30-
ASSERT_EQ(ZE_RESULT_SUCCESS, zeDriverGet(&zeInitCount, nullptr));
31-
ASSERT_GT(zeInitCount, 0);
3230
ASSERT_EQ(ZE_RESULT_SUCCESS, zesInit(0));
3331
uint32_t zesInitCount = 0;
32+
ASSERT_EQ(ZE_RESULT_SUCCESS, zeDriverGet(&zeInitCount, nullptr));
33+
ASSERT_GT(zeInitCount, 0);
3434
ASSERT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&zesInitCount, nullptr));
3535
ASSERT_GT(zesInitCount, 0);
3636
if (is_sysman_enabled != nullptr && strcmp(is_sysman_enabled, "1") == 0) {

conformance_tests/sysman/test_sysman_init/src/test_init_sysman_before_core.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ namespace {
1919
TEST(SysmanInitTests, GivenSysmanInitializedThenCallingCoreInitSucceeds) {
2020
ASSERT_EQ(ZE_RESULT_SUCCESS, zesInit(0));
2121
uint32_t zesInitCount = 0;
22-
ASSERT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&zesInitCount, nullptr));
23-
ASSERT_GT(zesInitCount, 0);
2422
ASSERT_EQ(ZE_RESULT_SUCCESS, zeInit(0));
2523
uint32_t zeInitCount = 0;
24+
ASSERT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&zesInitCount, nullptr));
25+
ASSERT_GT(zesInitCount, 0);
2626
ASSERT_EQ(ZE_RESULT_SUCCESS, zeDriverGet(&zeInitCount, nullptr));
2727
ASSERT_GT(zeInitCount, 0);
2828
}

utils/test_harness/sysman/include/test_harness_sysman_device.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@ get_sysman_device_properties(zes_device_handle_t device);
2121

2222
zes_uuid_t get_sysman_device_uuid(zes_device_handle_t device);
2323

24+
uint32_t get_zes_device_count(zes_driver_handle_t driver);
25+
std::vector<zes_device_handle_t> get_zes_devices(uint32_t count,
26+
zes_driver_handle_t driver);
2427
std::vector<zes_subdevice_exp_properties_t>
2528
get_sysman_subdevice_properties(zes_device_handle_t device, uint32_t &count);
2629

utils/utils/include/utils/utils.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ namespace level_zero_tests {
2323
zes_driver_handle_t get_default_zes_driver();
2424

2525
ze_context_handle_t get_default_context();
26+
std::vector<zes_driver_handle_t> get_all_zes_driver_handles();
2627
ze_device_handle_t get_default_device(ze_driver_handle_t driver);
2728
ze_device_handle_t find_device(ze_driver_handle_t &driver,
2829
const char *device_id, bool sub_device);

0 commit comments

Comments
 (0)