From: Mikulas Patocka mpatocka@redhat.com
commit 5424a0b867e65f1ecf34ffe88d091a4fcbb35bc1 upstream.
When a DM device is first created it doesn't yet have an established capacity, therefore the use of set_capacity_and_notify() should be conditional given the potential for needless pr_info "detected capacity change" noise even if capacity is 0.
One could argue that the pr_info() in set_capacity_and_notify() is misplaced, but that position is not held uniformly.
Signed-off-by: Mikulas Patocka mpatocka@redhat.com Fixes: f64d9b2eacb9 ("dm: use set_capacity_and_notify") Cc: stable@vger.kernel.org Signed-off-by: Mike Snitzer snitzer@redhat.com Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org --- drivers/md/dm.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
--- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -2016,7 +2016,10 @@ static struct dm_table *__bind(struct ma if (size != dm_get_size(md)) memset(&md->geometry, 0, sizeof(md->geometry));
- set_capacity_and_notify(md->disk, size); + if (!get_capacity(md->disk)) + set_capacity(md->disk, size); + else + set_capacity_and_notify(md->disk, size);
dm_table_event_callback(t, event_callback, md);