HomeFreeBSD

Fix zvol deadlock

Description

Fix zvol deadlock

It's possible for a zvol_write thread to enter direct memory reclaim
while holding open a transaction group. This results in the system
attempting to write out data to the disk to free memory. Unfortunately,
this can't succeed because the the thread doing reclaim is holding open
the txg which must be closed to be synced to disk. To prevent this
the offending allocation is marked KM_PUSHPAGE which will prevent it
from attempting writeback.

Closes #191

Details

Provenance
Brian Behlendorf <behlendorf1@llnl.gov>Authored on Apr 26 2011, 7:56 PM
Parents
rGa1cc0b3290dc: Fix 32-bit MAXOFFSET_T definition
Branches
Unknown
Tags
Unknown

Event Timeline

Brian Behlendorf <behlendorf1@llnl.gov> committed rG701b1f8168eb: Fix zvol deadlock (authored by Brian Behlendorf <behlendorf1@llnl.gov>).Apr 26 2011, 7:56 PM