From 6d0e6288e8036ae0c09a8e0d582b5afa67c5bd29 Mon Sep 17 00:00:00 2001 From: Xuehan Xu Date: Sun, 7 Nov 2021 15:47:02 +0800 Subject: [PATCH] crimson/os/seastore/segment_cleaner: initialize segments' avail_bytes with segments' sizes Currently, we initialize segments' avail_bytes with "segment_size * num_segments". Both segment_size and num_segments are 32 bits long, multiplying them would lead to overflow. Signed-off-by: Xuehan Xu --- src/crimson/os/seastore/segment_cleaner.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/crimson/os/seastore/segment_cleaner.h b/src/crimson/os/seastore/segment_cleaner.h index aaac218395c..c65dcd99c2e 100644 --- a/src/crimson/os/seastore/segment_cleaner.h +++ b/src/crimson/os/seastore/segment_cleaner.h @@ -38,7 +38,7 @@ class segment_info_set_t { block_size(block_size), empty_segments(empty_segments), size(size), - avail_bytes(segment_size * num_segments) + avail_bytes(size) {} device_id_t device_id = 0; -- 2.39.5