[linux-next:master 3800/3829] net/netfilter/nft_set_pipapo_avx2.c:1135:10: error: implicit declaration of function 'nft_pipapo_lookup'; did you mean 'nft_pipapo_avx2_lookup'?

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

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   9f24705effef8c3b9eca00d70594ef7e0364a6da
commit: 3b4f9530977112ddf177282e396d0715dc60b9a3 [3800/3829] fix up for merge involving nft_pipapo_lookup()
config: x86_64-randconfig-a001-20210520 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
        # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=3b4f9530977112ddf177282e396d0715dc60b9a3
        git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
        git fetch --no-tags linux-next master
        git checkout 3b4f9530977112ddf177282e396d0715dc60b9a3
        # save the attached .config to linux build tree
        make W=1 ARCH=x86_64 

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

All errors (new ones prefixed by >>):

   net/netfilter/nft_set_pipapo_avx2.c: In function 'nft_pipapo_avx2_lookup':
>> net/netfilter/nft_set_pipapo_avx2.c:1135:10: error: implicit declaration of function 'nft_pipapo_lookup'; did you mean 'nft_pipapo_avx2_lookup'? [-Werror=implicit-function-declaration]
    1135 |   return nft_pipapo_lookup(net, set, key, ext);
         |          ^~~~~~~~~~~~~~~~~
         |          nft_pipapo_avx2_lookup
   cc1: some warnings being treated as errors


vim +1135 net/netfilter/nft_set_pipapo_avx2.c

7400b063969bdca Stefano Brivio 2020-03-07  1107  
7400b063969bdca Stefano Brivio 2020-03-07  1108  /**
7400b063969bdca Stefano Brivio 2020-03-07  1109   * nft_pipapo_avx2_lookup() - Lookup function for AVX2 implementation
7400b063969bdca Stefano Brivio 2020-03-07  1110   * @net:	Network namespace
7400b063969bdca Stefano Brivio 2020-03-07  1111   * @set:	nftables API set representation
7400b063969bdca Stefano Brivio 2020-03-07  1112   * @elem:	nftables API element representation containing key data
7400b063969bdca Stefano Brivio 2020-03-07  1113   * @ext:	nftables API extension pointer, filled with matching reference
7400b063969bdca Stefano Brivio 2020-03-07  1114   *
7400b063969bdca Stefano Brivio 2020-03-07  1115   * For more details, see DOC: Theory of Operation in nft_set_pipapo.c.
7400b063969bdca Stefano Brivio 2020-03-07  1116   *
7400b063969bdca Stefano Brivio 2020-03-07  1117   * This implementation exploits the repetitive characteristic of the algorithm
7400b063969bdca Stefano Brivio 2020-03-07  1118   * to provide a fast, vectorised version using the AVX2 SIMD instruction set.
7400b063969bdca Stefano Brivio 2020-03-07  1119   *
7400b063969bdca Stefano Brivio 2020-03-07  1120   * Return: true on match, false otherwise.
7400b063969bdca Stefano Brivio 2020-03-07  1121   */
7400b063969bdca Stefano Brivio 2020-03-07  1122  bool nft_pipapo_avx2_lookup(const struct net *net, const struct nft_set *set,
7400b063969bdca Stefano Brivio 2020-03-07  1123  			    const u32 *key, const struct nft_set_ext **ext)
7400b063969bdca Stefano Brivio 2020-03-07  1124  {
7400b063969bdca Stefano Brivio 2020-03-07  1125  	struct nft_pipapo *priv = nft_set_priv(set);
7400b063969bdca Stefano Brivio 2020-03-07  1126  	unsigned long *res, *fill, *scratch;
7400b063969bdca Stefano Brivio 2020-03-07  1127  	u8 genmask = nft_genmask_cur(net);
7400b063969bdca Stefano Brivio 2020-03-07  1128  	const u8 *rp = (const u8 *)key;
7400b063969bdca Stefano Brivio 2020-03-07  1129  	struct nft_pipapo_match *m;
7400b063969bdca Stefano Brivio 2020-03-07  1130  	struct nft_pipapo_field *f;
7400b063969bdca Stefano Brivio 2020-03-07  1131  	bool map_index;
7400b063969bdca Stefano Brivio 2020-03-07  1132  	int i, ret = 0;
7400b063969bdca Stefano Brivio 2020-03-07  1133  
f0b3d338064e1fe Stefano Brivio 2021-05-10  1134  	if (unlikely(!irq_fpu_usable()))
f0b3d338064e1fe Stefano Brivio 2021-05-10 @1135  		return nft_pipapo_lookup(net, set, key, ext);
f0b3d338064e1fe Stefano Brivio 2021-05-10  1136  
7400b063969bdca Stefano Brivio 2020-03-07  1137  	m = rcu_dereference(priv->match);
7400b063969bdca Stefano Brivio 2020-03-07  1138  
0dc0f088e7314e0 Stefano Brivio 2021-05-10  1139  	/* This also protects access to all data related to scratch maps.
0dc0f088e7314e0 Stefano Brivio 2021-05-10  1140  	 *
0dc0f088e7314e0 Stefano Brivio 2021-05-10  1141  	 * Note that we don't need a valid MXCSR state for any of the
0dc0f088e7314e0 Stefano Brivio 2021-05-10  1142  	 * operations we use here, so pass 0 as mask and spare a LDMXCSR
0dc0f088e7314e0 Stefano Brivio 2021-05-10  1143  	 * instruction.
0dc0f088e7314e0 Stefano Brivio 2021-05-10  1144  	 */
0dc0f088e7314e0 Stefano Brivio 2021-05-10  1145  	kernel_fpu_begin_mask(0);
7400b063969bdca Stefano Brivio 2020-03-07  1146  
7400b063969bdca Stefano Brivio 2020-03-07  1147  	scratch = *raw_cpu_ptr(m->scratch_aligned);
7400b063969bdca Stefano Brivio 2020-03-07  1148  	if (unlikely(!scratch)) {
7400b063969bdca Stefano Brivio 2020-03-07  1149  		kernel_fpu_end();
7400b063969bdca Stefano Brivio 2020-03-07  1150  		return false;
7400b063969bdca Stefano Brivio 2020-03-07  1151  	}
7400b063969bdca Stefano Brivio 2020-03-07  1152  	map_index = raw_cpu_read(nft_pipapo_avx2_scratch_index);
7400b063969bdca Stefano Brivio 2020-03-07  1153  
7400b063969bdca Stefano Brivio 2020-03-07  1154  	res  = scratch + (map_index ? m->bsize_max : 0);
7400b063969bdca Stefano Brivio 2020-03-07  1155  	fill = scratch + (map_index ? 0 : m->bsize_max);
7400b063969bdca Stefano Brivio 2020-03-07  1156  
7400b063969bdca Stefano Brivio 2020-03-07  1157  	/* Starting map doesn't need to be set for this implementation */
7400b063969bdca Stefano Brivio 2020-03-07  1158  
7400b063969bdca Stefano Brivio 2020-03-07  1159  	nft_pipapo_avx2_prepare();
7400b063969bdca Stefano Brivio 2020-03-07  1160  
7400b063969bdca Stefano Brivio 2020-03-07  1161  next_match:
7400b063969bdca Stefano Brivio 2020-03-07  1162  	nft_pipapo_for_each_field(f, i, m) {
7400b063969bdca Stefano Brivio 2020-03-07  1163  		bool last = i == m->field_count - 1, first = !i;
7400b063969bdca Stefano Brivio 2020-03-07  1164  

:::::: The code at line 1135 was first introduced by commit
:::::: f0b3d338064e1fe7531f0d2977e35f3b334abfb4 netfilter: nft_set_pipapo_avx2: Add irq_fpu_usable() check, fallback to non-AVX2 version

:::::: TO: Stefano Brivio <sbrivio@xxxxxxxxxx>
:::::: CC: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

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

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux