Simplify device map locking using RAII

This commit is contained in:
2026-08-06 18:48:23 +02:00
parent d05990a812
commit ba6b22f160

View File

@@ -28,8 +28,9 @@ OB::DeviceMap::GetGlobalDevicesDirectory(IN POBJECT_DIRECTORY Directory)
/* Assume no mapping exists */
GlobalDevicesDirectory = NULLPTR;
/* Acquire the device map lock */
KE::PushLock::AcquireExclusivePushLock(&DeviceMapLock);
/* Enter guarded region and acquire the device map lock */
KE::GuardedRegionGuard GuardedRegion;
KE::PushLockExclusiveGuard PushLock(&DeviceMapLock);
/* Check if the directory has an associated device map */
if(Directory->DeviceMap)
@@ -38,9 +39,6 @@ OB::DeviceMap::GetGlobalDevicesDirectory(IN POBJECT_DIRECTORY Directory)
GlobalDevicesDirectory = Directory->DeviceMap->GlobalDevicesDirectory;
}
/* Release the device map lock */
KE::PushLock::ReleaseExclusivePushLock(&DeviceMapLock);
/* Return the resolved directory */
return GlobalDevicesDirectory;
}