Subject: Re: [PATCH v3 net-next 03/12] net: dsa: inherit the actual bridge port flags at join time

From: kernel test robot <[email-masked]>
Date: Sun, 21 Mar 2021 08:59:08 +0800

Hi Vladimir,

I love your patch! Perhaps something to improve:

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

url:    https://github.com/0day-ci/linux/commits/Vladimir-Oltean/Better-support-for-sandwiched-LAGs-with-bridge-and-DSA/20210321-063842
base:   https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git d773b7957e4fd7b732a163df0e59d31ad4237302
config: arm64-randconfig-r021-20210321 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 14696baaf4c43fe53f738bc292bbe169eed93d5d)
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 arm64 cross compiling tool for clang build
        # apt-get install binutils-aarch64-linux-gnu
        # https://github.com/0day-ci/linux/commit/3aac17167e3de0aeaf5287f9d586725bdc7495a5
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Vladimir-Oltean/Better-support-for-sandwiched-LAGs-with-bridge-and-DSA/20210321-063842
        git checkout 3aac17167e3de0aeaf5287f9d586725bdc7495a5
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email-masked]>

All warnings (new ones prefixed by >>):

>> net/dsa/port.c:167:5: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat]
                                   flags.val, err, ERR_PTR(err));
                                   ^~~~~~~~~
   include/linux/dev_printk.h:112:32: note: expanded from macro 'dev_err'
           _dev_err(dev, dev_fmt(fmt), ##__VA_ARGS__)
                                 ~~~     ^~~~~~~~~~~
   1 warning generated.

vim +167 net/dsa/port.c

   148	
   149	static void dsa_port_clear_brport_flags(struct dsa_port *dp,
   150						struct netlink_ext_ack *extack)
   151	{
   152		const unsigned long val = BR_FLOOD | BR_MCAST_FLOOD | BR_BCAST_FLOOD;
   153		const unsigned long mask = BR_LEARNING | BR_FLOOD | BR_MCAST_FLOOD |
   154					   BR_BCAST_FLOOD;
   155		int flag, err;
   156	
   157		for_each_set_bit(flag, &mask, 32) {
   158			struct switchdev_brport_flags flags = {0};
   159	
   160			flags.mask = BIT(flag);
   161			flags.val = val & BIT(flag);
   162	
   163			err = dsa_port_bridge_flags(dp, flags, extack);
   164			if (err && err != -EOPNOTSUPP)
   165				dev_err(dp->ds->dev,
   166					"failed to clear bridge port flag %d: %d (%pe)\n",
 > 167					flags.val, err, ERR_PTR(err));
   168		}
   169	}
   170	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email-masked]