sheepdog: Fix error handling in sd_snapshot_delete()
commite25cad6921ef78c8e2b7a4f59b03545bd675a9ad
authorMarkus Armbruster <armbru@redhat.com>
Mon, 6 Mar 2017 19:00:36 +0000 (6 20:00 +0100)
committerKevin Wolf <kwolf@redhat.com>
Tue, 7 Mar 2017 13:53:28 +0000 (7 14:53 +0100)
tree95380ecebe5c10eeb5d0460c9e06cb5b8e85ab39
parentcbc488ee2aaad06e7ef69936788e0dbd204cf0a0
sheepdog: Fix error handling in sd_snapshot_delete()

As a bdrv_snapshot_delete() method, sd_snapshot_delete() must set an
error and return negative errno on failure.  It sometimes returns -1,
and sometimes neglects to set an error.  It also prints error messages
with error_report().  Fix all that.

Moreover, its handling of an attempt to delete a nonexistent snapshot
is wrong: it error_report()s and succeeds.  Fix it to set an error and
return -ENOENT instead.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
block/sheepdog.c