#5005: Reversed Locking Order in legacy_drivers.cpp ---------------------------+------------------------------------------------ Reporter: bonefish | Owner: axeld Type: bug | Status: new Priority: normal | Milestone: R1 Component: System/Kernel | Version: R1/Development Keywords: | Blockedby: Platform: All | Blocking: ---------------------------+------------------------------------------------ legacy_drivers.cpp calls {add,remove}_node_listener() for sDriverWatcher with sLock held. DriverWatcher::EventOccured() acquires sLock, too. Since the node monitoring service has an internal lock it acquires in {add,remove}_node_listener() and also holds when calling the listeners' EventOccurred(), we have contradicting locking orders for the two cases. -- Ticket URL: <http://dev.haiku-os.org/ticket/5005> Haiku <http://dev.haiku-os.org> Haiku - the operating system.