summaryrefslogtreecommitdiff
path: root/arch/hexagon
diff options
context:
space:
mode:
authorJoe Thornber <ejt@redhat.com>2018-09-10 16:50:09 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-10-10 08:54:25 +0200
commit1484d4ff277007f1a852e4c02f4edc5eb3e1e7d6 (patch)
treef5058d285dd7b0523581cef5d133b7cbc8861b0c /arch/hexagon
parent1e9054e75d22d9c3087d100397cc4eae9be53bf7 (diff)
dm thin metadata: try to avoid ever aborting transactions
[ Upstream commit 3ab91828166895600efd9cdc3a0eb32001f7204a ] Committing a transaction can consume some metadata of it's own, we now reserve a small amount of metadata to cover this. Free metadata reported by the kernel will not include this reserve. If any of the reserve has been used after a commit we enter a new internal state PM_OUT_OF_METADATA_SPACE. This is reported as PM_READ_ONLY, so no userland changes are needed. If the metadata device is resized the pool will move back to PM_WRITE. These changes mean we never need to abort and rollback a transaction due to running out of metadata space. This is particularly important because there have been a handful of reports of data corruption against DM thin-provisioning that can all be attributed to the thin-pool having ran out of metadata space. Signed-off-by: Joe Thornber <ejt@redhat.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/hexagon')
0 files changed, 0 insertions, 0 deletions