Commit 7c7f1bfd authored by Haoxiang Li's avatar Haoxiang Li Committed by Greg Kroah-Hartman
Browse files

mcb: fix a double free bug in chameleon_parse_gdd()



In chameleon_parse_gdd(), if mcb_device_register() fails, 'mdev'
would be released in mcb_device_register() via put_device().
Thus, goto 'err' label and free 'mdev' again causes a double free.
Just return if mcb_device_register() fails.

Fixes: 3764e82e ("drivers: Introduce MEN Chameleon Bus")
Cc: stable <stable@kernel.org>
Signed-off-by: default avatarHaoxiang Li <haoxiang_li2024@163.com>
Signed-off-by: default avatarJohannes Thumshirn <jth@kernel.org>
Link: https://lore.kernel.org/r/6201d09e2975ae5789879f79a6de4c38de9edd4a.1741596225.git.jth@kernel.org


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent e9d7748a
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -96,7 +96,7 @@ static int chameleon_parse_gdd(struct mcb_bus *bus,

	ret = mcb_device_register(bus, mdev);
	if (ret < 0)
		goto err;
		return ret;

	return 0;