Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix a race condition in dbuf_dirty().
We need to wait for pending I/O to finish before trying to clear the dirty record's override state. This problem occurs when multiple threads call dbuf_dirty() for the same dbuf object while it is currently being synced via dmu_sync() but hasn't reached dmu_sync_done() yet: zfs: allocating allocated segment(offset=323629568 size=78336) SPLError: 2283:0:(spl-err.c:48:vpanic()) SPL PANIC Issue #541
- Loading branch information