summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorozaki-r <ozaki-r@NetBSD.org>2015-10-20 07:35:15 +0000
committerozaki-r <ozaki-r@NetBSD.org>2015-10-20 07:35:15 +0000
commit4fef7ea9d802194645618d3abe6667494f3a9f6c (patch)
treee376ff9a998aa02af779639f820b641e5ef7dfd9 /sys/dev
parentb04ddd48a19fef9342cb063aa9965500699dd821 (diff)
Stop using softnet_lock (fix possible deadlock)
Using softnet_lock for mutual exclusion between lltable_free and arptimer was wrong and had an issue causing a deadlock between them; lltable_free waits arptimer completion by calling callout_halt with softnet_lock that is held in arptimer, however lltable_free also holds llentry's lock that is also held in arptimer so arptimer never obtain the lock and both never go forward eventually. We have to pass llentry's lock to callout_halt instead.
Diffstat (limited to 'sys/dev')
0 files changed, 0 insertions, 0 deletions