tree:   https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 
master
head:   3752404a68e86d82b97a61aba78f6d6afae48549
commit: 955062b03fa62b802a1ee34fbb04e39f7a70ae73 [38/46] net: bridge: mcast: 
add support for raw L2 multicast groups
config: i386-randconfig-m021-20201101 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
        # 
https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git/commit/?id=955062b03fa62b802a1ee34fbb04e39f7a70ae73
        git remote add net-next 
https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git
        git fetch --no-tags net-next master
        git checkout 955062b03fa62b802a1ee34fbb04e39f7a70ae73
        # save the attached .config to linux build tree
        make W=1 ARCH=i386 

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

All errors (new ones prefixed by >>):

   net/bridge/br_device.c: In function 'br_dev_xmit':
>> net/bridge/br_device.c:96:7: error: too many arguments to function 
>> 'br_multicast_querier_exists'
      96 |       br_multicast_querier_exists(br, eth_hdr(skb), mdst))
         |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from net/bridge/br_device.c:19:
   net/bridge/br_private.h:1015:20: note: declared here
    1015 | static inline bool br_multicast_querier_exists(struct net_bridge *br,
         |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~
--
   net/bridge/br_input.c: In function 'br_handle_frame_finish':
>> net/bridge/br_input.c:137:7: error: too many arguments to function 
>> 'br_multicast_querier_exists'
     137 |       br_multicast_querier_exists(br, eth_hdr(skb), mdst)) {
         |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from net/bridge/br_input.c:23:
   net/bridge/br_private.h:1015:20: note: declared here
    1015 | static inline bool br_multicast_querier_exists(struct net_bridge *br,
         |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~

vim +/br_multicast_querier_exists +96 net/bridge/br_device.c

    26  
    27  /* net device transmit always called with BH disabled */
    28  netdev_tx_t br_dev_xmit(struct sk_buff *skb, struct net_device *dev)
    29  {
    30          struct net_bridge *br = netdev_priv(dev);
    31          struct net_bridge_fdb_entry *dst;
    32          struct net_bridge_mdb_entry *mdst;
    33          struct pcpu_sw_netstats *brstats = this_cpu_ptr(br->stats);
    34          const struct nf_br_ops *nf_ops;
    35          u8 state = BR_STATE_FORWARDING;
    36          const unsigned char *dest;
    37          u16 vid = 0;
    38  
    39          memset(skb->cb, 0, sizeof(struct br_input_skb_cb));
    40  
    41          rcu_read_lock();
    42          nf_ops = rcu_dereference(nf_br_ops);
    43          if (nf_ops && nf_ops->br_dev_xmit_hook(skb)) {
    44                  rcu_read_unlock();
    45                  return NETDEV_TX_OK;
    46          }
    47  
    48          u64_stats_update_begin(&brstats->syncp);
    49          brstats->tx_packets++;
    50          brstats->tx_bytes += skb->len;
    51          u64_stats_update_end(&brstats->syncp);
    52  
    53          br_switchdev_frame_unmark(skb);
    54          BR_INPUT_SKB_CB(skb)->brdev = dev;
    55          BR_INPUT_SKB_CB(skb)->frag_max_size = 0;
    56  
    57          skb_reset_mac_header(skb);
    58          skb_pull(skb, ETH_HLEN);
    59  
    60          if (!br_allowed_ingress(br, br_vlan_group_rcu(br), skb, &vid, 
&state))
    61                  goto out;
    62  
    63          if (IS_ENABLED(CONFIG_INET) &&
    64              (eth_hdr(skb)->h_proto == htons(ETH_P_ARP) ||
    65               eth_hdr(skb)->h_proto == htons(ETH_P_RARP)) &&
    66              br_opt_get(br, BROPT_NEIGH_SUPPRESS_ENABLED)) {
    67                  br_do_proxy_suppress_arp(skb, br, vid, NULL);
    68          } else if (IS_ENABLED(CONFIG_IPV6) &&
    69                     skb->protocol == htons(ETH_P_IPV6) &&
    70                     br_opt_get(br, BROPT_NEIGH_SUPPRESS_ENABLED) &&
    71                     pskb_may_pull(skb, sizeof(struct ipv6hdr) +
    72                                   sizeof(struct nd_msg)) &&
    73                     ipv6_hdr(skb)->nexthdr == IPPROTO_ICMPV6) {
    74                          struct nd_msg *msg, _msg;
    75  
    76                          msg = br_is_nd_neigh_msg(skb, &_msg);
    77                          if (msg)
    78                                  br_do_suppress_nd(skb, br, vid, NULL, 
msg);
    79          }
    80  
    81          dest = eth_hdr(skb)->h_dest;
    82          if (is_broadcast_ether_addr(dest)) {
    83                  br_flood(br, skb, BR_PKT_BROADCAST, false, true);
    84          } else if (is_multicast_ether_addr(dest)) {
    85                  if (unlikely(netpoll_tx_running(dev))) {
    86                          br_flood(br, skb, BR_PKT_MULTICAST, false, 
true);
    87                          goto out;
    88                  }
    89                  if (br_multicast_rcv(br, NULL, skb, vid)) {
    90                          kfree_skb(skb);
    91                          goto out;
    92                  }
    93  
    94                  mdst = br_mdb_get(br, skb, vid);
    95                  if ((mdst || BR_INPUT_SKB_CB_MROUTERS_ONLY(skb)) &&
  > 96                      br_multicast_querier_exists(br, eth_hdr(skb), mdst))
    97                          br_multicast_flood(mdst, skb, false, true);
    98                  else
    99                          br_flood(br, skb, BR_PKT_MULTICAST, false, 
true);
   100          } else if ((dst = br_fdb_find_rcu(br, dest, vid)) != NULL) {
   101                  br_forward(dst->dst, skb, false, true);
   102          } else {
   103                  br_flood(br, skb, BR_PKT_UNICAST, false, true);
   104          }
   105  out:
   106          rcu_read_unlock();
   107          return NETDEV_TX_OK;
   108  }
   109  

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

Attachment: .config.gz
Description: application/gzip

Reply via email to