lkml.org 
[lkml]   [2018]   [Dec]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 36/72] mac80211_hwsim: fix module init error paths for netlink
    Date
    4.14-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    [ 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 670224be3c8b..8f57ca969c9f 100644
    --- a/drivers/net/wireless/mac80211_hwsim.c
    +++ b/drivers/net/wireless/mac80211_hwsim.c
    @@ -3472,16 +3472,16 @@ static int __init init_mac80211_hwsim(void)
    if (err)
    goto out_unregister_pernet;

    + 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 };

    @@ -3587,6 +3587,8 @@ out_free_mon:
    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);
    out_unregister_pernet:
    --
    2.19.1


    \
     
     \ /
      Last update: 2018-12-20 10:38    [W:4.872 / U:0.000 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site