tree a44e2fe5ccc5950b87a1d31849e5f0ac24fdcc16
parent d460c65a6a9ec9e0d284864ec3a9a2d1b73f0e43
author Mikulas Patocka <mpatocka@redhat.com> 1231211098 +0000
committer Alasdair G Kergon <agk@redhat.com> 1231211098 +0000

dm: consolidate target deregistration error handling

Change dm_unregister_target to return void and use BUG() for error
reporting.

dm_unregister_target can only fail because of programming bug in the
target driver. It can't fail because of user's behavior or disk errors.

This patch changes unregister_target to return void and use BUG if
someone tries to unregister non-registered target or unregister target
that is in use.

This patch removes code duplication (testing of error codes in all dm
targets) and reports bugs in just one place, in dm_unregister_target. In
some target drivers, these return codes were ignored, which could lead
to a situation where bugs could be missed.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
