Search Linux Wireless

Re: [PATCH] mac80211_hwsim: Timer should be initialized before device registered

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Does anyone have some feedback about this?

On Thu, Oct 18, 2018 at 1:02 AM Vasyl Vavrychuk
<vasyl.vavrychuk@xxxxxxxxxxxxxxx> wrote:
>
> From: Vasyl Vavrychuk <vasyl.vavrychuk@xxxxxxxxxxxxxxx>
>
> 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]
>
> Signed-off-by: Vasyl Vavrychuk <vasyl.vavrychuk@xxxxxxxxxxxxxxx>
> ---
>  drivers/net/wireless/mac80211_hwsim.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c
> index 1068757ec42e..d0e0a9f5bf98 100644
> --- a/drivers/net/wireless/mac80211_hwsim.c
> +++ b/drivers/net/wireless/mac80211_hwsim.c
> @@ -2890,6 +2890,10 @@ static int mac80211_hwsim_new_radio(struct genl_info *info,
>
>         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",
> @@ -2914,10 +2918,6 @@ static int mac80211_hwsim_new_radio(struct genl_info *info,
>                                     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);
> --
> 2.19.1
>


-- 
Vasyl Vavrychuk  | Software Engineer
GlobalLogic L'viv
Skype: vasyl.vavrychuk
www.globallogic.com

http://www.globallogic.com/email_disclaimer.txt



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux