lkml.org 
[lkml]   [2021]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.15 360/917] mac80211: twt: dont use potentially unaligned pointer
    Date
    From: Johannes Berg <johannes.berg@intel.com>

    [ Upstream commit 7ff379ba2d4b7b205240e666601fe302207d73f8 ]

    Since we're pointing into a frame, the pointer to the
    twt_agrt->req_type struct member is potentially not
    aligned properly. Open-code le16p_replace_bits() to
    avoid passing an unaligned pointer.

    Reported-by: kernel test robot <lkp@intel.com>
    Fixes: f5a4c24e689f ("mac80211: introduce individual TWT support in AP mode")
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Link: https://lore.kernel.org/r/20210927115124.e1208694f37b.Ie3de9bcc5dde5a79e3ac81f3185beafe4d214e57@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    net/mac80211/s1g.c | 8 +++++---
    1 file changed, 5 insertions(+), 3 deletions(-)

    diff --git a/net/mac80211/s1g.c b/net/mac80211/s1g.c
    index 7e35ab5b61664..4141bc80cdfd6 100644
    --- a/net/mac80211/s1g.c
    +++ b/net/mac80211/s1g.c
    @@ -104,9 +104,11 @@ ieee80211_s1g_rx_twt_setup(struct ieee80211_sub_if_data *sdata,

    /* broadcast TWT not supported yet */
    if (twt->control & IEEE80211_TWT_CONTROL_NEG_TYPE_BROADCAST) {
    - le16p_replace_bits(&twt_agrt->req_type,
    - TWT_SETUP_CMD_REJECT,
    - IEEE80211_TWT_REQTYPE_SETUP_CMD);
    + twt_agrt->req_type &=
    + ~cpu_to_le16(IEEE80211_TWT_REQTYPE_SETUP_CMD);
    + twt_agrt->req_type |=
    + le16_encode_bits(TWT_SETUP_CMD_REJECT,
    + IEEE80211_TWT_REQTYPE_SETUP_CMD);
    goto out;
    }

    --
    2.33.0


    \
     
     \ /
      Last update: 2021-11-16 00:38    [W:4.034 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site