diff options
author | Tim Chase <[email protected]> | 2016-09-19 11:28:35 -0500 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2016-09-19 09:28:35 -0700 |
commit | 25e2ab16be74cb37934e6736a1dc10fd50a00c56 (patch) | |
tree | 7f0b1ae07d7e91bdfafb829a3a6c396a8593b2ba /module/zfs/arc.c | |
parent | a34f7ab332a66c2857b212abb6082fcc0e762519 (diff) |
Fix arc_adjust_meta_balanced()
The type of "adjustmnt" was erroneously changed to unsigned when the compressed
ARC code was ported in d3c2ae1c0806b183a315e3d43cc8018cfdca79b5.
As a result of it being unsigned, the balanced metadata eviction logic
would evict all of the non-metadata.
Reviewed-by: Chris Severance <[email protected]>
Reviewed-by: Brian Behlendorf <[email protected]>
Reviewed by: David Quigley <[email protected]>
Signed-off-by: Tim Chase <[email protected]>
Closes #5128
Closes #5129
Diffstat (limited to 'module/zfs/arc.c')
-rwxr-xr-x | module/zfs/arc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/module/zfs/arc.c b/module/zfs/arc.c index 2bf7a9883..f848c4c09 100755 --- a/module/zfs/arc.c +++ b/module/zfs/arc.c @@ -3520,8 +3520,8 @@ arc_adjust_impl(arc_state_t *state, uint64_t spa, int64_t bytes, static uint64_t arc_adjust_meta_balanced(void) { - int64_t delta, prune = 0; - uint64_t adjustmnt, total_evicted = 0; + int64_t delta, prune = 0, adjustmnt; + uint64_t total_evicted = 0; arc_buf_contents_t type = ARC_BUFC_DATA; int restarts = MAX(zfs_arc_meta_adjust_restarts, 0); |