Opened 14 years ago

Closed 14 years ago

#199 closed defect (fixed)

Potential deadlock in icmp_echo()

Reported by: Jakub Jermář Owned by:
Priority: major Milestone: 0.4.2
Component: helenos/net/icmp Version: mainline
Keywords: Cc:
Blocker for: Depends on:
See also:

Description

This is a similar problem as in tickets #195 and #196.

In icmp_echo(), icmp_globals.lock is locked. Then we acquire reply→mutex.

Before fibril_condvar_wait_timeout(), we must unlock icmp_globals.lock. After fibril_condvar_wait_timeout(), we should reacquire it, but not before we drop reply→mutex, which is still held.

We currently don't drop reply→mutex and therefore have two different locking schemes which may lead to a deadlock.

Change History (1)

comment:1 by Jakub Jermář, 14 years ago

Resolution: fixed
Status: newclosed

Fixed in changeset:head,310.

Note: See TracTickets for help on using tickets.