Re: [net-next v2 01/11] net: bridge: extend the process of special frames

From: kernel test robot
Date: Thu Oct 01 2020 - 14:36:39 EST


Hi Henrik,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on net-next/master]

url: https://github.com/0day-ci/linux/commits/Henrik-Bjoernlund/net-bridge-cfm-Add-support-for-Connectivity-Fault-Management-CFM/20201001-184031
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git f2e834694b0d92187d889172da842e27829df371
config: x86_64-randconfig-a003-20200930 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project bcd05599d0e53977a963799d6ee4f6e0bc21331b)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://github.com/0day-ci/linux/commit/1c0b81655468c16fd143f325138a856ca7727071
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Henrik-Bjoernlund/net-bridge-cfm-Add-support-for-Connectivity-Fault-Management-CFM/20201001-184031
git checkout 1c0b81655468c16fd143f325138a856ca7727071
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64

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

All error/warnings (new ones prefixed by >>):

In file included from net/atm/lec.c:36:
>> net/atm/../bridge/br_private.h:94:32: warning: declaration of 'struct net_bridge_port' will not be visible outside of this function [-Wvisibility]
int (*frame_handler)(struct net_bridge_port *port,
^
1 warning generated.
--
In file included from net/bridge/br_sysfs_if.c:18:
>> net/bridge/br_private.h:94:32: warning: declaration of 'struct net_bridge_port' will not be visible outside of this function [-Wvisibility]
int (*frame_handler)(struct net_bridge_port *port,
^
1 warning generated.
--
In file included from net/bridge/br_input.c:23:
>> net/bridge/br_private.h:94:32: warning: declaration of 'struct net_bridge_port' will not be visible outside of this function [-Wvisibility]
int (*frame_handler)(struct net_bridge_port *port,
^
>> net/bridge/br_input.c:267:30: error: incompatible pointer types passing 'struct net_bridge_port *' to parameter of type 'struct net_bridge_port *' [-Werror,-Wincompatible-pointer-types]
return tmp->frame_handler(p, skb);
^
1 warning and 1 error generated.
--
In file included from net/bridge/br_mrp.c:4:
In file included from net/bridge/br_private_mrp.h:6:
>> net/bridge/br_private.h:94:32: warning: declaration of 'struct net_bridge_port' will not be visible outside of this function [-Wvisibility]
int (*frame_handler)(struct net_bridge_port *port,
^
>> net/bridge/br_mrp.c:13:19: error: incompatible function pointer types initializing 'int (*)(struct net_bridge_port *, struct sk_buff *)' with an expression of type 'int (struct net_bridge_port *, struct sk_buff *)' [-Werror,-Wincompatible-function-pointer-types]
.frame_handler = br_mrp_process,
^~~~~~~~~~~~~~
1 warning and 1 error generated.
--
In file included from net/bridge/br_fdb.c:24:
In file included from include/trace/events/bridge.h:10:
>> include/trace/events/../../../net/bridge/br_private.h:94:32: warning: declaration of 'struct net_bridge_port' will not be visible outside of this function [-Wvisibility]
int (*frame_handler)(struct net_bridge_port *port,
^
1 warning generated.

vim +267 net/bridge/br_input.c

256
257 /* Return 0 if the frame was not processed otherwise 1
258 * note: already called with rcu_read_lock
259 */
260 static int br_process_frame_type(struct net_bridge_port *p,
261 struct sk_buff *skb)
262 {
263 struct br_frame_type *tmp;
264
265 hlist_for_each_entry_rcu(tmp, &p->br->frame_type_list, list)
266 if (unlikely(tmp->type == skb->protocol))
> 267 return tmp->frame_handler(p, skb);
268
269 return 0;
270 }
271

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

Attachment: .config.gz
Description: application/gzip