HomeFreeBSD

Fix comparison signedness in arc_is_overflowing()

Description

Fix comparison signedness in arc_is_overflowing()

When ARC size is very small, aggsum_lower_bound(&arc_size) may return
negative values, that due to unsigned comparison caused delays, waiting
for arc_adjust() to "fix" it by calling aggsum_value(&arc_size). Use
of signed comparison there fixes the problem.

Reviewed-by: Matt Ahrens <mahrens@delphix.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: George Melikov <mail@gmelikov.ru>
Signed-off-by: Alexander Motin <mav@FreeBSD.org>
Closes #8873

Details

Provenance
mavAuthored on Jun 10 2019, 4:52 PM
Brian Behlendorf <behlendorf1@llnl.gov>Committed on Jun 10 2019, 4:52 PM
Parents
rGc08c30ed1318: Fix incorrect error message for raw receive
Branches
Unknown
Tags
Unknown

Event Timeline