[PATCH] wifi: ath11k: skip status ring entry processing
kernel test robot
lkp at intel.com
Tue Mar 28 02:21:32 PDT 2023
Hi Tamizh,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on bea046575a2e6d7d1cf63cc7ab032647a3585de5]
url: https://github.com/intel-lab-lkp/linux/commits/Tamizh-Chelvam-Raja/wifi-ath11k-skip-status-ring-entry-processing/20230328-151947
base: bea046575a2e6d7d1cf63cc7ab032647a3585de5
patch link: https://lore.kernel.org/r/20230328071814.13018-1-quic_tamizhr%40quicinc.com
patch subject: [PATCH] wifi: ath11k: skip status ring entry processing
config: ia64-allyesconfig (https://download.01.org/0day-ci/archive/20230328/202303281719.CvnPkOiK-lkp@intel.com/config)
compiler: ia64-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel-lab-lkp/linux/commit/c6e8f81ccc1ac66cdf84bc9bbe71993ffd267677
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Tamizh-Chelvam-Raja/wifi-ath11k-skip-status-ring-entry-processing/20230328-151947
git checkout c6e8f81ccc1ac66cdf84bc9bbe71993ffd267677
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=ia64 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=ia64 SHELL=/bin/bash drivers/net/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp at intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202303281719.CvnPkOiK-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/net/wireless/ath/ath11k/dp_rx.c:2964:1: warning: no previous prototype for 'ath11k_dp_rx_mon_handle_status_buf_done' [-Wmissing-prototypes]
2964 | ath11k_dp_rx_mon_handle_status_buf_done(struct ath11k_base *ab, struct hal_srng *srng,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vim +/ath11k_dp_rx_mon_handle_status_buf_done +2964 drivers/net/wireless/ath/ath11k/dp_rx.c
2962
2963 enum dp_mon_status_buf_state
> 2964 ath11k_dp_rx_mon_handle_status_buf_done(struct ath11k_base *ab, struct hal_srng *srng,
2965 struct dp_rxdma_ring *rx_ring)
2966 {
2967 void *status_desc;
2968 struct sk_buff *skb;
2969 struct ath11k_skb_rxcb *rxcb;
2970 struct hal_tlv_hdr *tlv;
2971 dma_addr_t paddr;
2972 u32 cookie;
2973 int buf_id;
2974 u8 rbm;
2975
2976 status_desc = ath11k_hal_srng_src_next_peek(ab, srng);
2977 if (!status_desc)
2978 return DP_MON_STATUS_NO_DMA;
2979
2980 ath11k_hal_rx_buf_addr_info_get(status_desc, &paddr, &cookie, &rbm);
2981
2982 buf_id = FIELD_GET(DP_RXDMA_BUF_COOKIE_BUF_ID, cookie);
2983
2984 spin_lock_bh(&rx_ring->idr_lock);
2985 skb = idr_find(&rx_ring->bufs_idr, buf_id);
2986 spin_unlock_bh(&rx_ring->idr_lock);
2987
2988 if (!skb)
2989 return DP_MON_STATUS_NO_DMA;
2990
2991 rxcb = ATH11K_SKB_RXCB(skb);
2992 dma_sync_single_for_cpu(ab->dev, rxcb->paddr,
2993 skb->len + skb_tailroom(skb),
2994 DMA_FROM_DEVICE);
2995
2996 tlv = (struct hal_tlv_hdr *)skb->data;
2997 if (FIELD_GET(HAL_TLV_HDR_TAG, tlv->tl) != HAL_RX_STATUS_BUFFER_DONE)
2998 return DP_MON_STATUS_NO_DMA;
2999
3000 return DP_MON_STATUS_REPLINISH;
3001 }
3002
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
More information about the ath11k
mailing list