dm table: fix missing dm_put_target_type() in dm_table_add_target()
authortang.junhui <tang.junhui@zte.com.cn>
Fri, 21 Oct 2016 01:35:32 +0000 (09:35 +0800)
committerMike Snitzer <snitzer@redhat.com>
Mon, 24 Oct 2016 15:17:46 +0000 (11:17 -0400)
commitdafa724bf582181d9a7d54f5cb4ca0bf8ef29269
tree952048cd64778adb6b20056b57912f19ca1eb6a1
parent937fa62e8a00d0b4bc2c0a40567d7c88ab2b2e8d
dm table: fix missing dm_put_target_type() in dm_table_add_target()

dm_get_target_type() was previously called so any error returned from
dm_table_add_target() must first call dm_put_target_type().  Otherwise
the DM target module's reference count will leak and the associated
kernel module will be unable to be removed.

Also, leverage the fact that r is already -EINVAL and remove an extra
newline.

Fixes: 36a0456 ("dm table: add immutable feature")
Fixes: cc6cbe1 ("dm table: add always writeable feature")
Fixes: 3791e2f ("dm table: add singleton feature")
Cc: stable@vger.kernel.org # 3.2+
Signed-off-by: tang.junhui <tang.junhui@zte.com.cn>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
drivers/md/dm-table.c