summaryrefslogtreecommitdiffstats
path: root/lib/libcalendar/calendar.h
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2013-03-24 10:14:25 +0000
committermav <mav@FreeBSD.org>2013-03-24 10:14:25 +0000
commit6cd6934fad2bb1e5222172d623c764679f7b186c (patch)
treead8fd6e02a6d3f87f11e58856a31bc5248bef759 /lib/libcalendar/calendar.h
parent8ce3236c14a8165ab3ad39cd54569a42282a7e3d (diff)
downloadFreeBSD-src-6cd6934fad2bb1e5222172d623c764679f7b186c.zip
FreeBSD-src-6cd6934fad2bb1e5222172d623c764679f7b186c.tar.gz
Fix long known deadlock between geom dev destruction and d_close() call.
Use destroy_dev_sched_cb() to not wait for device destruction while holding GEOM topology lock (that actually caused deadlock). Use request counting protected by mutex to properly wait for outstanding requests completion in cases of device closing and geom destruction. Unlike r227009, this code does not block taskqueue thread for indefinite time, waiting for completion.
Diffstat (limited to 'lib/libcalendar/calendar.h')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud