L0 devices may have subdevices (eg Xe tiles on PVC). Our helpers currently only return the "top-level" "root" hwloc device even when called on a subdevice.
For the core API, it's easy to fix by calling zeDeviceGetProperties() and using prop.subdeviceId if ze_device_property_flags_t & ZE_DEVICE_PROPERTY_FLAG_SUBDEVICE. For the sysman API, I don't see any way to fix this.