dmthin: express low_water in cluster_size not sector size

I noticed that thin-pool sent out "reached low water mark for data
device" event even before thin-pool device was mounted in
generic/347, this is because low water mark was set to a too high
value.

According to kernel thin-provisioning.txt documentation, low water
mark should be expressed in blocks of $cluster_size, not in sectors.

"$low_water_mark is expressed in blocks of size $data_block_size."

Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
This commit is contained in:
Eryu Guan
2016-06-17 18:54:28 +08:00
parent a173f8e66d
commit 3832affdc9
+2
View File
@@ -91,6 +91,8 @@ _dmthin_init()
if [ -z "$low_water" ]; then
low_water=204800 # 100M, in sectors
fi
# low_water is expressed in blocks of size $cluster_size
low_water=$((low_water / cluster_size))
# Need to make linear metadata and data devs. From kernel docs:
# As a guide, we suggest you calculate the number of bytes to use in the