I was running a test that exercised this code and AddressSanatizer flagged this line as a 8-byte-read-stack-buffer-overflow-far-from-bounds. I believe the issue is that the iterator returned from allSystemNodes.lower_bound(device_uuid) is dereferenced unconditionally.
Looks like we pulled in the same patch from someone else... even though you were the first to find the issue! Sorry!
https://github.com/ROCm/amdsmi/pull/44
I was running a test that exercised this code and AddressSanatizer flagged this line as a 8-byte-read-stack-buffer-overflow-far-from-bounds. I believe the issue is that the iterator returned from allSystemNodes.lower_bound(device_uuid) is dereferenced unconditionally.