lkml.org 
[lkml]   [2018]   [Dec]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.19 112/118] mac80211_hwsim: Timer should be initialized before device registered
    Date
    4.19-stable review patch.  If anyone has any objections, please let me know.

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

    From: Vasyl Vavrychuk <vasyl.vavrychuk@globallogic.com>

    commit a1881c9b8a1edef0a5ae1d5c1b61406fe3402114 upstream.

    Otherwise if network manager starts configuring Wi-Fi interface
    immidiatelly after getting notification of its creation, we will get
    NULL pointer dereference:

    BUG: unable to handle kernel NULL pointer dereference at (null)
    IP: [<ffffffff95ae94c8>] hrtimer_active+0x28/0x50
    ...
    Call Trace:
    [<ffffffff95ae9997>] ? hrtimer_try_to_cancel+0x27/0x110
    [<ffffffff95ae9a95>] ? hrtimer_cancel+0x15/0x20
    [<ffffffffc0803bf0>] ? mac80211_hwsim_config+0x140/0x1c0 [mac80211_hwsim]

    Cc: stable@vger.kernel.org
    Signed-off-by: Vasyl Vavrychuk <vasyl.vavrychuk@globallogic.com>
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/net/wireless/mac80211_hwsim.c | 8 ++++----
    1 file changed, 4 insertions(+), 4 deletions(-)

    --- a/drivers/net/wireless/mac80211_hwsim.c
    +++ b/drivers/net/wireless/mac80211_hwsim.c
    @@ -2889,6 +2889,10 @@ static int mac80211_hwsim_new_radio(stru

    wiphy_ext_feature_set(hw->wiphy, NL80211_EXT_FEATURE_CQM_RSSI_LIST);

    + tasklet_hrtimer_init(&data->beacon_timer,
    + mac80211_hwsim_beacon,
    + CLOCK_MONOTONIC, HRTIMER_MODE_ABS);
    +
    err = ieee80211_register_hw(hw);
    if (err < 0) {
    pr_debug("mac80211_hwsim: ieee80211_register_hw failed (%d)\n",
    @@ -2913,10 +2917,6 @@ static int mac80211_hwsim_new_radio(stru
    data->debugfs,
    data, &hwsim_simulate_radar);

    - tasklet_hrtimer_init(&data->beacon_timer,
    - mac80211_hwsim_beacon,
    - CLOCK_MONOTONIC, HRTIMER_MODE_ABS);
    -
    spin_lock_bh(&hwsim_radio_lock);
    err = rhashtable_insert_fast(&hwsim_radios_rht, &data->rht,
    hwsim_rht_params);

    \
     
     \ /
      Last update: 2018-12-11 16:59    [W:4.347 / U:0.268 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site