dm thin: fix missing out-of-data-space to write mode transition if blocks are released
authorJoe Thornber <ejt@redhat.com>
Thu, 11 Dec 2014 11:12:19 +0000 (11:12 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Jan 2015 18:00:49 +0000 (10:00 -0800)
commit1b210c873eba5ef3b84f46e1a51c360b7ffa9156
tree9cf3395f1dd2af802bd037146824a608c67bf218
parent3b2caa87bacb066e5c27228032c3aa9738692061
dm thin: fix missing out-of-data-space to write mode transition if blocks are released

commit 2c43fd26e46734430122b8d2ad3024bb532df3ef upstream.

Discard bios and thin device deletion have the potential to release data
blocks.  If the thin-pool is in out-of-data-space mode, and blocks were
released, transition the thin-pool back to full write mode.

The correct time to do this is just after the thin-pool metadata commit.
It cannot be done before the commit because the space maps will not
allow immediate reuse of the data blocks in case there's a rollback
following power failure.

Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/md/dm-thin.c