Patch "mwifiex: Do not use GFP_KERNEL in atomic context" has been added to the 5.9-stable tree

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

 



This is a note to let you know that I've just added the patch titled

    mwifiex: Do not use GFP_KERNEL in atomic context

to the 5.9-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     mwifiex-do-not-use-gfp_kernel-in-atomic-context.patch
and it can be found in the queue-5.9 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 7bf1f5740f3d05da9ffa41967a8c0959dfcb0d27
Author: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
Date:   Sun Aug 9 11:29:06 2020 +0200

    mwifiex: Do not use GFP_KERNEL in atomic context
    
    [ Upstream commit d2ab7f00f4321370a8ee14e5630d4349fdacc42e ]
    
    A possible call chain is as follow:
      mwifiex_sdio_interrupt                            (sdio.c)
        --> mwifiex_main_process                        (main.c)
          --> mwifiex_process_cmdresp                   (cmdevt.c)
            --> mwifiex_process_sta_cmdresp             (sta_cmdresp.c)
              --> mwifiex_ret_802_11_scan               (scan.c)
                --> mwifiex_parse_single_response_buf   (scan.c)
    
    'mwifiex_sdio_interrupt()' is an interrupt function.
    
    Also note that 'mwifiex_ret_802_11_scan()' already uses GFP_ATOMIC.
    
    So use GFP_ATOMIC instead of GFP_KERNEL when memory is allocated in
    'mwifiex_parse_single_response_buf()'.
    
    Fixes: 7c6fa2a843c5 ("mwifiex: use cfg80211 dynamic scan table and cfg80211_get_bss API")
    or
    Fixes: 601216e12c65e ("mwifiex: process RX packets in SDIO IRQ thread directly")
    Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
    Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20200809092906.744621-1-christophe.jaillet@xxxxxxxxxx
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/wireless/marvell/mwifiex/scan.c b/drivers/net/wireless/marvell/mwifiex/scan.c
index ff932627a46c1..2fb69a590bd8e 100644
--- a/drivers/net/wireless/marvell/mwifiex/scan.c
+++ b/drivers/net/wireless/marvell/mwifiex/scan.c
@@ -1889,7 +1889,7 @@ mwifiex_parse_single_response_buf(struct mwifiex_private *priv, u8 **bss_info,
 					    chan, CFG80211_BSS_FTYPE_UNKNOWN,
 					    bssid, timestamp,
 					    cap_info_bitmap, beacon_period,
-					    ie_buf, ie_len, rssi, GFP_KERNEL);
+					    ie_buf, ie_len, rssi, GFP_ATOMIC);
 			if (bss) {
 				bss_priv = (struct mwifiex_bss_priv *)bss->priv;
 				bss_priv->band = band;



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux