blob: 1a5d4276f3747a86ca3d5b317669d725bc045110 [file] [log] [blame]
# Copyright 2015 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
STATEFUL="/mnt/stateful_partition"
get_stateful_df_data() {
local bs="${1:-1K}"
df --block-size "${bs}" -P "${STATEFUL}" | grep -m 1 "${STATEFUL}"
}
# Get the lifetime writes from the stateful partition.
get_stateful_lifetime_writes() {
local stateful_dev="$(get_stateful_df_data | awk '{print $1}' | \
sed -e 's#^/dev/##')"
local lifetime_writes="$(cat \
/sys/fs/ext4/${stateful_dev}/lifetime_write_kbytes)"
: "${lifetime_writes:=0}"
echo "${lifetime_writes}"
}
# Get the percentage of space used on the stateful partition.
get_stateful_usage_percent() {
local stateful_space="$(get_stateful_df_data)"
# Remove everything after and including the "%"
stateful_space="${stateful_space%%%*}"
# Remove all fields except the last one.
stateful_space="${stateful_space##* }"
echo "${stateful_space}"
}
# Get the free space on the stateful partition.
#
# inputs:
# bs -- size of block as understood by strosize (suffixes allowed)
get_stateful_free_space_blocks() {
local bs="${1:-1K}"
get_stateful_df_data "${bs}" | awk '{print $4}'
}
# Get the total space on the stateful partition.
#
# inputs:
# bs -- size of block as understood by strosize (suffixes allowed)
get_stateful_total_space_blocks() {
local bs="${1:-1K}"
get_stateful_df_data "${bs}" | awk '{print $2}'
}