All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Markus Theil <markus.theil@tu-ilmenau.de>, johannes@sipsolutions.net
Cc: kbuild-all@lists.01.org, clang-built-linux@googlegroups.com,
	linux-wireless@vger.kernel.org,
	Markus Theil <markus.theil@tu-ilmenau.de>
Subject: Re: [PATCH] mac80211: enable QoS support for nl80211 ctrl port
Date: Fri, 11 Dec 2020 11:00:42 +0800	[thread overview]
Message-ID: <202012111032.QV7rmfJu-lkp@intel.com> (raw)
In-Reply-To: <20201209225214.127548-1-markus.theil@tu-ilmenau.de>

[-- Attachment #1: Type: text/plain, Size: 13521 bytes --]

Hi Markus,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on mac80211-next/master]
[also build test WARNING on mac80211/master v5.10-rc7 next-20201210]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Markus-Theil/mac80211-enable-QoS-support-for-nl80211-ctrl-port/20201210-065717
base:   https://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git master
config: riscv-randconfig-r003-20201210 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 1968804ac726e7674d5de22bc2204b45857da344)
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
        # install riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://github.com/0day-ci/linux/commit/514b314825e19f7075eb375b3effa93ff0f6a16e
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Markus-Theil/mac80211-enable-QoS-support-for-nl80211-ctrl-port/20201210-065717
        git checkout 514b314825e19f7075eb375b3effa93ff0f6a16e
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:556:9: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           return inb(addr);
                  ^~~~~~~~~
   arch/riscv/include/asm/io.h:55:76: note: expanded from macro 'inb'
   #define inb(c)          ({ u8  __v; __io_pbr(); __v = readb_cpu((void*)(PCI_IOBASE + (c))); __io_par(__v); __v; })
                                                                           ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:87:48: note: expanded from macro 'readb_cpu'
   #define readb_cpu(c)            ({ u8  __r = __raw_readb(c); __r; })
                                                            ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:564:9: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           return inw(addr);
                  ^~~~~~~~~
   arch/riscv/include/asm/io.h:56:76: note: expanded from macro 'inw'
   #define inw(c)          ({ u16 __v; __io_pbr(); __v = readw_cpu((void*)(PCI_IOBASE + (c))); __io_par(__v); __v; })
                                                                           ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:88:76: note: expanded from macro 'readw_cpu'
   #define readw_cpu(c)            ({ u16 __r = le16_to_cpu((__force __le16)__raw_readw(c)); __r; })
                                                                                        ^
   include/uapi/linux/byteorder/little_endian.h:36:51: note: expanded from macro '__le16_to_cpu'
   #define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
                                                     ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:572:9: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           return inl(addr);
                  ^~~~~~~~~
   arch/riscv/include/asm/io.h:57:76: note: expanded from macro 'inl'
   #define inl(c)          ({ u32 __v; __io_pbr(); __v = readl_cpu((void*)(PCI_IOBASE + (c))); __io_par(__v); __v; })
                                                                           ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:89:76: note: expanded from macro 'readl_cpu'
   #define readl_cpu(c)            ({ u32 __r = le32_to_cpu((__force __le32)__raw_readl(c)); __r; })
                                                                                        ^
   include/uapi/linux/byteorder/little_endian.h:34:51: note: expanded from macro '__le32_to_cpu'
   #define __le32_to_cpu(x) ((__force __u32)(__le32)(x))
                                                     ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:580:2: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           outb(value, addr);
           ^~~~~~~~~~~~~~~~~
   arch/riscv/include/asm/io.h:59:68: note: expanded from macro 'outb'
   #define outb(v,c)       ({ __io_pbw(); writeb_cpu((v),(void*)(PCI_IOBASE + (c))); __io_paw(); })
                                                                 ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:91:52: note: expanded from macro 'writeb_cpu'
   #define writeb_cpu(v, c)        ((void)__raw_writeb((v), (c)))
                                                             ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:588:2: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           outw(value, addr);
           ^~~~~~~~~~~~~~~~~
   arch/riscv/include/asm/io.h:60:68: note: expanded from macro 'outw'
   #define outw(v,c)       ({ __io_pbw(); writew_cpu((v),(void*)(PCI_IOBASE + (c))); __io_paw(); })
                                                                 ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:92:76: note: expanded from macro 'writew_cpu'
   #define writew_cpu(v, c)        ((void)__raw_writew((__force u16)cpu_to_le16(v), (c)))
                                                                                     ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:596:2: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           outl(value, addr);
           ^~~~~~~~~~~~~~~~~
   arch/riscv/include/asm/io.h:61:68: note: expanded from macro 'outl'
   #define outl(v,c)       ({ __io_pbw(); writel_cpu((v),(void*)(PCI_IOBASE + (c))); __io_paw(); })
                                                                 ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:93:76: note: expanded from macro 'writel_cpu'
   #define writel_cpu(v, c)        ((void)__raw_writel((__force u32)cpu_to_le32(v), (c)))
                                                                                     ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:1005:55: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
                                                     ~~~~~~~~~~ ^
>> net/mac80211/tx.c:1206:6: warning: logical not is only applied to the left hand side of this bitwise operator [-Wlogical-not-parentheses]
               !info->flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO) {
               ^            ~
   net/mac80211/tx.c:1206:6: note: add parentheses after the '!' to evaluate the bitwise operator first
               !info->flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO) {
               ^
                (                                              )
   net/mac80211/tx.c:1206:6: note: add parentheses around left hand side expression to silence this warning
               !info->flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO) {
               ^
               (           )
   8 warnings generated.
   /tmp/tx-d90b1d.s: Assembler messages:
   /tmp/tx-d90b1d.s:1816: Error: unrecognized opcode `zext.b a1,s11'
   /tmp/tx-d90b1d.s:1847: Error: unrecognized opcode `zext.b a3,a3'
   /tmp/tx-d90b1d.s:2975: Error: unrecognized opcode `zext.b a1,s5'
   /tmp/tx-d90b1d.s:3936: Error: unrecognized opcode `zext.b a2,a0'
   /tmp/tx-d90b1d.s:4278: Error: unrecognized opcode `zext.b a0,a0'
   /tmp/tx-d90b1d.s:4557: Error: unrecognized opcode `zext.b a1,a1'
   /tmp/tx-d90b1d.s:5316: Error: unrecognized opcode `zext.b a0,a0'
   /tmp/tx-d90b1d.s:9203: Error: unrecognized opcode `zext.b a0,s1'
   /tmp/tx-d90b1d.s:9251: Error: unrecognized opcode `zext.b a0,s1'
   /tmp/tx-d90b1d.s:9912: Error: unrecognized opcode `zext.b a1,a0'
   /tmp/tx-d90b1d.s:9985: Error: unrecognized opcode `zext.b a1,a0'
   clang-12: error: assembler command failed with exit code 1 (use -v to see invocation)

vim +1206 net/mac80211/tx.c

  1156	
  1157	/*
  1158	 * initialises @tx
  1159	 * pass %NULL for the station if unknown, a valid pointer if known
  1160	 * or an ERR_PTR() if the station is known not to exist
  1161	 */
  1162	static ieee80211_tx_result
  1163	ieee80211_tx_prepare(struct ieee80211_sub_if_data *sdata,
  1164			     struct ieee80211_tx_data *tx,
  1165			     struct sta_info *sta, struct sk_buff *skb)
  1166	{
  1167		struct ieee80211_local *local = sdata->local;
  1168		struct ieee80211_hdr *hdr;
  1169		struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
  1170		int tid;
  1171	
  1172		memset(tx, 0, sizeof(*tx));
  1173		tx->skb = skb;
  1174		tx->local = local;
  1175		tx->sdata = sdata;
  1176		__skb_queue_head_init(&tx->skbs);
  1177	
  1178		/*
  1179		 * If this flag is set to true anywhere, and we get here,
  1180		 * we are doing the needed processing, so remove the flag
  1181		 * now.
  1182		 */
  1183		info->control.flags &= ~IEEE80211_TX_INTCFL_NEED_TXPROCESSING;
  1184	
  1185		hdr = (struct ieee80211_hdr *) skb->data;
  1186	
  1187		if (likely(sta)) {
  1188			if (!IS_ERR(sta))
  1189				tx->sta = sta;
  1190		} else {
  1191			if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN) {
  1192				tx->sta = rcu_dereference(sdata->u.vlan.sta);
  1193				if (!tx->sta && sdata->wdev.use_4addr)
  1194					return TX_DROP;
  1195			} else if (tx->sdata->control_port_protocol == tx->skb->protocol) {
  1196				tx->sta = sta_info_get_bss(sdata, hdr->addr1);
  1197			}
  1198			if (!tx->sta && !is_multicast_ether_addr(hdr->addr1))
  1199				tx->sta = sta_info_get(sdata, hdr->addr1);
  1200		}
  1201	
  1202		if (tx->sta && ieee80211_is_data_qos(hdr->frame_control) &&
  1203		    !ieee80211_is_qos_nullfunc(hdr->frame_control) &&
  1204		    ieee80211_hw_check(&local->hw, AMPDU_AGGREGATION) &&
  1205		    !ieee80211_hw_check(&local->hw, TX_AMPDU_SETUP_IN_HW) &&
> 1206		    !info->flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO) {
  1207			struct tid_ampdu_tx *tid_tx;
  1208	
  1209			tid = ieee80211_get_tid(hdr);
  1210	
  1211			tid_tx = rcu_dereference(tx->sta->ampdu_mlme.tid_tx[tid]);
  1212			if (tid_tx) {
  1213				bool queued;
  1214	
  1215				queued = ieee80211_tx_prep_agg(tx, skb, info,
  1216							       tid_tx, tid);
  1217	
  1218				if (unlikely(queued))
  1219					return TX_QUEUED;
  1220			}
  1221		}
  1222	
  1223		if (is_multicast_ether_addr(hdr->addr1)) {
  1224			tx->flags &= ~IEEE80211_TX_UNICAST;
  1225			info->flags |= IEEE80211_TX_CTL_NO_ACK;
  1226		} else
  1227			tx->flags |= IEEE80211_TX_UNICAST;
  1228	
  1229		if (!(info->flags & IEEE80211_TX_CTL_DONTFRAG)) {
  1230			if (!(tx->flags & IEEE80211_TX_UNICAST) ||
  1231			    skb->len + FCS_LEN <= local->hw.wiphy->frag_threshold ||
  1232			    info->flags & IEEE80211_TX_CTL_AMPDU)
  1233				info->flags |= IEEE80211_TX_CTL_DONTFRAG;
  1234		}
  1235	
  1236		if (!tx->sta)
  1237			info->flags |= IEEE80211_TX_CTL_CLEAR_PS_FILT;
  1238		else if (test_and_clear_sta_flag(tx->sta, WLAN_STA_CLEAR_PS_FILT)) {
  1239			info->flags |= IEEE80211_TX_CTL_CLEAR_PS_FILT;
  1240			ieee80211_check_fast_xmit(tx->sta);
  1241		}
  1242	
  1243		info->flags |= IEEE80211_TX_CTL_FIRST_FRAGMENT;
  1244	
  1245		return TX_CONTINUE;
  1246	}
  1247	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 36230 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH] mac80211: enable QoS support for nl80211 ctrl port
Date: Fri, 11 Dec 2020 11:00:42 +0800	[thread overview]
Message-ID: <202012111032.QV7rmfJu-lkp@intel.com> (raw)
In-Reply-To: <20201209225214.127548-1-markus.theil@tu-ilmenau.de>

[-- Attachment #1: Type: text/plain, Size: 13776 bytes --]

Hi Markus,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on mac80211-next/master]
[also build test WARNING on mac80211/master v5.10-rc7 next-20201210]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Markus-Theil/mac80211-enable-QoS-support-for-nl80211-ctrl-port/20201210-065717
base:   https://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git master
config: riscv-randconfig-r003-20201210 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 1968804ac726e7674d5de22bc2204b45857da344)
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
        # install riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://github.com/0day-ci/linux/commit/514b314825e19f7075eb375b3effa93ff0f6a16e
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Markus-Theil/mac80211-enable-QoS-support-for-nl80211-ctrl-port/20201210-065717
        git checkout 514b314825e19f7075eb375b3effa93ff0f6a16e
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:556:9: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           return inb(addr);
                  ^~~~~~~~~
   arch/riscv/include/asm/io.h:55:76: note: expanded from macro 'inb'
   #define inb(c)          ({ u8  __v; __io_pbr(); __v = readb_cpu((void*)(PCI_IOBASE + (c))); __io_par(__v); __v; })
                                                                           ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:87:48: note: expanded from macro 'readb_cpu'
   #define readb_cpu(c)            ({ u8  __r = __raw_readb(c); __r; })
                                                            ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:564:9: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           return inw(addr);
                  ^~~~~~~~~
   arch/riscv/include/asm/io.h:56:76: note: expanded from macro 'inw'
   #define inw(c)          ({ u16 __v; __io_pbr(); __v = readw_cpu((void*)(PCI_IOBASE + (c))); __io_par(__v); __v; })
                                                                           ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:88:76: note: expanded from macro 'readw_cpu'
   #define readw_cpu(c)            ({ u16 __r = le16_to_cpu((__force __le16)__raw_readw(c)); __r; })
                                                                                        ^
   include/uapi/linux/byteorder/little_endian.h:36:51: note: expanded from macro '__le16_to_cpu'
   #define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
                                                     ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:572:9: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           return inl(addr);
                  ^~~~~~~~~
   arch/riscv/include/asm/io.h:57:76: note: expanded from macro 'inl'
   #define inl(c)          ({ u32 __v; __io_pbr(); __v = readl_cpu((void*)(PCI_IOBASE + (c))); __io_par(__v); __v; })
                                                                           ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:89:76: note: expanded from macro 'readl_cpu'
   #define readl_cpu(c)            ({ u32 __r = le32_to_cpu((__force __le32)__raw_readl(c)); __r; })
                                                                                        ^
   include/uapi/linux/byteorder/little_endian.h:34:51: note: expanded from macro '__le32_to_cpu'
   #define __le32_to_cpu(x) ((__force __u32)(__le32)(x))
                                                     ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:580:2: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           outb(value, addr);
           ^~~~~~~~~~~~~~~~~
   arch/riscv/include/asm/io.h:59:68: note: expanded from macro 'outb'
   #define outb(v,c)       ({ __io_pbw(); writeb_cpu((v),(void*)(PCI_IOBASE + (c))); __io_paw(); })
                                                                 ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:91:52: note: expanded from macro 'writeb_cpu'
   #define writeb_cpu(v, c)        ((void)__raw_writeb((v), (c)))
                                                             ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:588:2: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           outw(value, addr);
           ^~~~~~~~~~~~~~~~~
   arch/riscv/include/asm/io.h:60:68: note: expanded from macro 'outw'
   #define outw(v,c)       ({ __io_pbw(); writew_cpu((v),(void*)(PCI_IOBASE + (c))); __io_paw(); })
                                                                 ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:92:76: note: expanded from macro 'writew_cpu'
   #define writew_cpu(v, c)        ((void)__raw_writew((__force u16)cpu_to_le16(v), (c)))
                                                                                     ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:596:2: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           outl(value, addr);
           ^~~~~~~~~~~~~~~~~
   arch/riscv/include/asm/io.h:61:68: note: expanded from macro 'outl'
   #define outl(v,c)       ({ __io_pbw(); writel_cpu((v),(void*)(PCI_IOBASE + (c))); __io_paw(); })
                                                                 ~~~~~~~~~~ ^
   arch/riscv/include/asm/mmio.h:93:76: note: expanded from macro 'writel_cpu'
   #define writel_cpu(v, c)        ((void)__raw_writel((__force u32)cpu_to_le32(v), (c)))
                                                                                     ^
   In file included from net/mac80211/tx.c:15:
   In file included from include/linux/skbuff.h:31:
   In file included from include/linux/dma-mapping.h:10:
   In file included from include/linux/scatterlist.h:9:
   In file included from arch/riscv/include/asm/io.h:149:
   include/asm-generic/io.h:1005:55: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
                                                     ~~~~~~~~~~ ^
>> net/mac80211/tx.c:1206:6: warning: logical not is only applied to the left hand side of this bitwise operator [-Wlogical-not-parentheses]
               !info->flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO) {
               ^            ~
   net/mac80211/tx.c:1206:6: note: add parentheses after the '!' to evaluate the bitwise operator first
               !info->flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO) {
               ^
                (                                              )
   net/mac80211/tx.c:1206:6: note: add parentheses around left hand side expression to silence this warning
               !info->flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO) {
               ^
               (           )
   8 warnings generated.
   /tmp/tx-d90b1d.s: Assembler messages:
   /tmp/tx-d90b1d.s:1816: Error: unrecognized opcode `zext.b a1,s11'
   /tmp/tx-d90b1d.s:1847: Error: unrecognized opcode `zext.b a3,a3'
   /tmp/tx-d90b1d.s:2975: Error: unrecognized opcode `zext.b a1,s5'
   /tmp/tx-d90b1d.s:3936: Error: unrecognized opcode `zext.b a2,a0'
   /tmp/tx-d90b1d.s:4278: Error: unrecognized opcode `zext.b a0,a0'
   /tmp/tx-d90b1d.s:4557: Error: unrecognized opcode `zext.b a1,a1'
   /tmp/tx-d90b1d.s:5316: Error: unrecognized opcode `zext.b a0,a0'
   /tmp/tx-d90b1d.s:9203: Error: unrecognized opcode `zext.b a0,s1'
   /tmp/tx-d90b1d.s:9251: Error: unrecognized opcode `zext.b a0,s1'
   /tmp/tx-d90b1d.s:9912: Error: unrecognized opcode `zext.b a1,a0'
   /tmp/tx-d90b1d.s:9985: Error: unrecognized opcode `zext.b a1,a0'
   clang-12: error: assembler command failed with exit code 1 (use -v to see invocation)

vim +1206 net/mac80211/tx.c

  1156	
  1157	/*
  1158	 * initialises @tx
  1159	 * pass %NULL for the station if unknown, a valid pointer if known
  1160	 * or an ERR_PTR() if the station is known not to exist
  1161	 */
  1162	static ieee80211_tx_result
  1163	ieee80211_tx_prepare(struct ieee80211_sub_if_data *sdata,
  1164			     struct ieee80211_tx_data *tx,
  1165			     struct sta_info *sta, struct sk_buff *skb)
  1166	{
  1167		struct ieee80211_local *local = sdata->local;
  1168		struct ieee80211_hdr *hdr;
  1169		struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
  1170		int tid;
  1171	
  1172		memset(tx, 0, sizeof(*tx));
  1173		tx->skb = skb;
  1174		tx->local = local;
  1175		tx->sdata = sdata;
  1176		__skb_queue_head_init(&tx->skbs);
  1177	
  1178		/*
  1179		 * If this flag is set to true anywhere, and we get here,
  1180		 * we are doing the needed processing, so remove the flag
  1181		 * now.
  1182		 */
  1183		info->control.flags &= ~IEEE80211_TX_INTCFL_NEED_TXPROCESSING;
  1184	
  1185		hdr = (struct ieee80211_hdr *) skb->data;
  1186	
  1187		if (likely(sta)) {
  1188			if (!IS_ERR(sta))
  1189				tx->sta = sta;
  1190		} else {
  1191			if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN) {
  1192				tx->sta = rcu_dereference(sdata->u.vlan.sta);
  1193				if (!tx->sta && sdata->wdev.use_4addr)
  1194					return TX_DROP;
  1195			} else if (tx->sdata->control_port_protocol == tx->skb->protocol) {
  1196				tx->sta = sta_info_get_bss(sdata, hdr->addr1);
  1197			}
  1198			if (!tx->sta && !is_multicast_ether_addr(hdr->addr1))
  1199				tx->sta = sta_info_get(sdata, hdr->addr1);
  1200		}
  1201	
  1202		if (tx->sta && ieee80211_is_data_qos(hdr->frame_control) &&
  1203		    !ieee80211_is_qos_nullfunc(hdr->frame_control) &&
  1204		    ieee80211_hw_check(&local->hw, AMPDU_AGGREGATION) &&
  1205		    !ieee80211_hw_check(&local->hw, TX_AMPDU_SETUP_IN_HW) &&
> 1206		    !info->flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO) {
  1207			struct tid_ampdu_tx *tid_tx;
  1208	
  1209			tid = ieee80211_get_tid(hdr);
  1210	
  1211			tid_tx = rcu_dereference(tx->sta->ampdu_mlme.tid_tx[tid]);
  1212			if (tid_tx) {
  1213				bool queued;
  1214	
  1215				queued = ieee80211_tx_prep_agg(tx, skb, info,
  1216							       tid_tx, tid);
  1217	
  1218				if (unlikely(queued))
  1219					return TX_QUEUED;
  1220			}
  1221		}
  1222	
  1223		if (is_multicast_ether_addr(hdr->addr1)) {
  1224			tx->flags &= ~IEEE80211_TX_UNICAST;
  1225			info->flags |= IEEE80211_TX_CTL_NO_ACK;
  1226		} else
  1227			tx->flags |= IEEE80211_TX_UNICAST;
  1228	
  1229		if (!(info->flags & IEEE80211_TX_CTL_DONTFRAG)) {
  1230			if (!(tx->flags & IEEE80211_TX_UNICAST) ||
  1231			    skb->len + FCS_LEN <= local->hw.wiphy->frag_threshold ||
  1232			    info->flags & IEEE80211_TX_CTL_AMPDU)
  1233				info->flags |= IEEE80211_TX_CTL_DONTFRAG;
  1234		}
  1235	
  1236		if (!tx->sta)
  1237			info->flags |= IEEE80211_TX_CTL_CLEAR_PS_FILT;
  1238		else if (test_and_clear_sta_flag(tx->sta, WLAN_STA_CLEAR_PS_FILT)) {
  1239			info->flags |= IEEE80211_TX_CTL_CLEAR_PS_FILT;
  1240			ieee80211_check_fast_xmit(tx->sta);
  1241		}
  1242	
  1243		info->flags |= IEEE80211_TX_CTL_FIRST_FRAGMENT;
  1244	
  1245		return TX_CONTINUE;
  1246	}
  1247	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 36230 bytes --]

  parent reply	other threads:[~2020-12-11  3:02 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-09 22:52 [PATCH] mac80211: enable QoS support for nl80211 ctrl port Markus Theil
2020-12-10 11:04 ` Dan Carpenter
2020-12-10 11:04   ` [kbuild] " Dan Carpenter
2020-12-10 11:04   ` Dan Carpenter
2020-12-12 10:53   ` Markus Theil
2020-12-12 10:53     ` Markus Theil
2020-12-10 13:59 ` Johannes Berg
2020-12-11  3:00 ` kernel test robot [this message]
2020-12-11  3:00   ` kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2020-12-10 10:28 kernel test robot
2020-12-10 13:02 kernel test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202012111032.QV7rmfJu-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=clang-built-linux@googlegroups.com \
    --cc=johannes@sipsolutions.net \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=markus.theil@tu-ilmenau.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.