All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH AUTOSEL 4.4 01/23] mac80211_hwsim: fix module init error paths for netlink
@ 2018-12-13  4:32 Sasha Levin
  2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 02/23] scsi: libiscsi: Fix NULL pointer dereference in iscsi_eh_session_reset Sasha Levin
                   ` (21 more replies)
  0 siblings, 22 replies; 29+ messages in thread
From: Sasha Levin @ 2018-12-13  4:32 UTC (permalink / raw)
  To: linux-kernel, stable
  Cc: Alexey Khoroshilov, Johannes Berg, Sasha Levin, linux-wireless,
	netdev

From: Alexey Khoroshilov <khoroshilov@ispras.ru>

[ Upstream commit 05cc09de4c017663a217630682041066f2f9a5cd ]

There is no unregister netlink notifier and family on error paths
in init_mac80211_hwsim(). Also there is an error path where
hwsim_class is not destroyed.

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Fixes: 62759361eb49 ("mac80211-hwsim: Provide multicast event for HWSIM_CMD_NEW_RADIO")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/wireless/mac80211_hwsim.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c
index 05413176a5d6..aad5228e3ade 100644
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
@@ -3195,16 +3195,16 @@ static int __init init_mac80211_hwsim(void)
 	if (err)
 		return err;
 
+	err = hwsim_init_netlink();
+	if (err)
+		goto out_unregister_driver;
+
 	hwsim_class = class_create(THIS_MODULE, "mac80211_hwsim");
 	if (IS_ERR(hwsim_class)) {
 		err = PTR_ERR(hwsim_class);
-		goto out_unregister_driver;
+		goto out_exit_netlink;
 	}
 
-	err = hwsim_init_netlink();
-	if (err < 0)
-		goto out_unregister_driver;
-
 	for (i = 0; i < radios; i++) {
 		struct hwsim_new_radio_params param = { 0 };
 
@@ -3310,6 +3310,8 @@ static int __init init_mac80211_hwsim(void)
 	free_netdev(hwsim_mon);
 out_free_radios:
 	mac80211_hwsim_free();
+out_exit_netlink:
+	hwsim_exit_netlink();
 out_unregister_driver:
 	platform_driver_unregister(&mac80211_hwsim_driver);
 	return err;
-- 
2.19.1


^ permalink raw reply related	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2018-12-13  4:45 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-12-13  4:32 [PATCH AUTOSEL 4.4 01/23] mac80211_hwsim: fix module init error paths for netlink Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 02/23] scsi: libiscsi: Fix NULL pointer dereference in iscsi_eh_session_reset Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 03/23] scsi: vmw_pscsi: Rearrange code to avoid multiple calls to free_irq during unload Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 04/23] x86/earlyprintk/efi: Fix infinite loop on some screen widths Sasha Levin
2018-12-13  4:32   ` Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 05/23] drm/msm: Grab a vblank reference when waiting for commit_done Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 06/23] ARC: io.h: Implement reads{x}()/writes{x}() Sasha Levin
2018-12-13  4:32   ` Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 07/23] bonding: fix 802.3ad state sent to partner when unbinding slave Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 08/23] SUNRPC: Fix leak of krb5p encode pages Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 09/23] SUNRPC: Fix a potential race in xprt_connect() Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 10/23] sbus: char: add of_node_put() Sasha Levin
2018-12-13  4:32   ` Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 11/23] drivers/sbus/char: " Sasha Levin
2018-12-13  4:32   ` Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 12/23] drivers/tty: add missing of_node_put() Sasha Levin
2018-12-13  4:32   ` Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 13/23] ide: pmac: add of_node_put() Sasha Levin
2018-12-13  4:32   ` Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 14/23] clk: mmp: Off by one in mmp_clk_add() Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 15/23] Input: omap-keypad - fix keyboard debounce configuration Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 16/23] libata: whitelist all SAMSUNG MZ7KM* solid-state disks Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 17/23] net: phy: don't allow __set_phy_supported to add unsupported modes Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 18/23] net: 8139cp: fix a BUG triggered by changing mtu with network traffic Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 19/23] mv88e6060: disable hardware level MAC learning Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 20/23] ARM: 8814/1: mm: improve/fix ARM v7_dma_inv_range() unaligned address handling Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 21/23] cifs: In Kconfig CONFIG_CIFS_POSIX needs depends on legacy (insecure cifs) Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 22/23] i2c: axxia: properly handle master timeout Sasha Levin
2018-12-13  4:32 ` [PATCH AUTOSEL 4.4 23/23] i2c: scmi: Fix probe error on devices with an empty SMB0001 ACPI device node Sasha Levin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.