Opened 6 years ago

Closed 6 years ago

#1674 closed defect (fixed)

Deadlock when third party media employs external lock and ICE is active

Reported by: nanang Owned by: nanang
Priority: normal Milestone: release-2.2
Component: pjmedia Version: trunk
Keywords: Cc:
Backport to 1.x milestone: Backported: no

Description

ICE transport holds mutex, i.e: group lock, in sending operation and invoking receiving callbacks. If application (e.g: third party media implementation) employs its own mutex, deadlock will potentially occur when the lock order between app mutex and ICE group lock is not uniform.

As described in Group Lock wiki page, external mutex can be synchronized by chaining the external mutex to the group lock. However, currently ICE group lock is not exported so application cannot chain its mutex into ICE group lock.

Change History (1)

comment:1 Changed 6 years ago by ming

  • Resolution set to fixed
  • Status changed from new to closed

In 4606:

Fixed #1674: Deadlock when third party media employs external lock and ICE is active

Note: See TracTickets for help on using tickets.