⬢ DragonFlyBSD Kernel Audit
DF-5605 / fix.diff
← back to finding ↓ download raw
--- a/sys/bus/u4b/audio/uaudio_pcm.c
+++ b/sys/bus/u4b/audio/uaudio_pcm.c
@@ -136,7 +136,7 @@
 	struct lock *lock = mixer_get_lock(m);
 	uint8_t do_unlock;
 
-	if (lockowned(lock)) {
+	if (lockstatus(lock, curthread) == LK_EXCLUSIVE) {
 		do_unlock = 0;
 	} else {
 		do_unlock = 1;
@@ -156,7 +156,7 @@
 	int retval;
 	uint8_t do_unlock;
 
-	if (lockowned(lock)) {
+	if (lockstatus(lock, curthread) == LK_EXCLUSIVE) {
 		do_unlock = 0;
 	} else {
 		do_unlock = 1;