diff options
author | Brian Behlendorf <[email protected]> | 2015-01-06 16:54:57 -0800 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2015-01-08 16:09:41 -0800 |
commit | d958324f97f4668a2a6e4a6ce3e5ca09b71b31d9 (patch) | |
tree | ff652c74e1b174a2c67941fdea9ab1a136c3a619 /module/zfs/vdev_cache.c | |
parent | 33b6dbbc51c790fc8048e2e18cd9bc10be384233 (diff) |
Fix zfs_putpage() lock inversion (again)
This is a follow up commit to 74328ee which correctly resolved a lock
inversion between zfs_putpage() and zfs_free_range(). Unfortunately,
in the process it accidentally introduced another inversion between
zfs_putpage() and zfs_read(). The page must be unlocked before taking
the range lock. This patch corrects that issue.
In addition, because the locking rules here are subtle a block comment
has been added clearly explaining why the ordering here is critical.
Signed-off-by: Brian Behlendorf <[email protected]>
Signed-off-by: Ned Bass <[email protected]>
Issue #2976
Diffstat (limited to 'module/zfs/vdev_cache.c')
0 files changed, 0 insertions, 0 deletions