Subject: Re: [PATCH net-next 06/15] net: lan969x: add match data for lan969x

From: kernel test robot <[email-masked]>
Date: Thu, 24 Oct 2024 04:53:16 +0800

Hi Daniel,

kernel test robot noticed the following build errors:

[auto build test ERROR on 30d9d8f6a2d7e44a9f91737dd409dbc87ac6f6b7]

url:    https://github.com/intel-lab-lkp/linux/commits/Daniel-Machon/net-sparx5-add-support-for-lan969x-SKU-s-and-core-clock/20241021-220557
base:   30d9d8f6a2d7e44a9f91737dd409dbc87ac6f6b7
patch link:    https://lore.kernel.org/r/20241021-sparx5-lan969x-switch-driver-2-v1-6-c8c49ef21e0f%40microchip.com
patch subject: [PATCH net-next 06/15] net: lan969x: add match data for lan969x
config: arm64-randconfig-002-20241024 (https://download.01.org/0day-ci/archive/20241024/[email-masked]/config)
compiler: aarch64-linux-gcc (GCC) 14.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241024/[email-masked]/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email-masked]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email-masked]/

All errors (new ones prefixed by >>):

   drivers/net/ethernet/microchip/sparx5/sparx5_fdma.c: In function 'sparx5_fdma_rx_get_frame':
>> drivers/net/ethernet/microchip/sparx5/sparx5_fdma.c:178:20: error: 'struct sk_buff' has no member named 'offload_fwd_mark'
     178 |                 skb->offload_fwd_mark = 1;
         |                    ^~
--
   drivers/net/ethernet/microchip/sparx5/sparx5_packet.c: In function 'sparx5_xtr_grp':
>> drivers/net/ethernet/microchip/sparx5/sparx5_packet.c:154:20: error: 'struct sk_buff' has no member named 'offload_fwd_mark'
     154 |                 skb->offload_fwd_mark = 1;
         |                    ^~

Kconfig warnings: (for reference only)
   WARNING: unmet direct dependencies detected for SPARX5_SWITCH
   Depends on [n]: NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_MICROCHIP [=y] && NET_SWITCHDEV [=n] && HAS_IOMEM [=y] && OF [=y] && (ARCH_SPARX5 [=y] || COMPILE_TEST [=y]) && PTP_1588_CLOCK_OPTIONAL [=m] && (BRIDGE [=m] || BRIDGE [=m]=n [=n])
   Selected by [m]:
   - LAN969X_SWITCH [=m] && NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_MICROCHIP [=y]

vim +178 drivers/net/ethernet/microchip/sparx5/sparx5_fdma.c

10615907e9b51c Steen Hegelund 2021-08-19  141  
10615907e9b51c Steen Hegelund 2021-08-19  142  static bool sparx5_fdma_rx_get_frame(struct sparx5 *sparx5, struct sparx5_rx *rx)
10615907e9b51c Steen Hegelund 2021-08-19  143  {
e8218f7a9f4425 Daniel Machon  2024-09-02  144  	struct fdma *fdma = &rx->fdma;
10615907e9b51c Steen Hegelund 2021-08-19  145  	struct sparx5_port *port;
8fec1cea941d32 Daniel Machon  2024-09-02  146  	struct fdma_db *db_hw;
10615907e9b51c Steen Hegelund 2021-08-19  147  	struct frame_info fi;
10615907e9b51c Steen Hegelund 2021-08-19  148  	struct sk_buff *skb;
10615907e9b51c Steen Hegelund 2021-08-19  149  
10615907e9b51c Steen Hegelund 2021-08-19  150  	/* Check if the DCB is done */
4ff58c394715ee Daniel Machon  2024-09-02  151  	db_hw = fdma_db_next_get(fdma);
4ff58c394715ee Daniel Machon  2024-09-02  152  	if (unlikely(!fdma_db_is_done(db_hw)))
10615907e9b51c Steen Hegelund 2021-08-19  153  		return false;
e8218f7a9f4425 Daniel Machon  2024-09-02  154  	skb = rx->skb[fdma->dcb_index][fdma->db_index];
4ff58c394715ee Daniel Machon  2024-09-02  155  	skb_put(skb, fdma_db_len_get(db_hw));
10615907e9b51c Steen Hegelund 2021-08-19  156  	/* Now do the normal processing of the skb */
aa7dfc6611fae2 Daniel Machon  2024-10-21  157  	sparx5_ifh_parse(sparx5, (u32 *)skb->data, &fi);
10615907e9b51c Steen Hegelund 2021-08-19  158  	/* Map to port netdev */
3f9e46347a466a Daniel Machon  2024-10-04  159  	port = fi.src_port < sparx5->data->consts->n_ports ?
3f9e46347a466a Daniel Machon  2024-10-04  160  		       sparx5->ports[fi.src_port] :
3f9e46347a466a Daniel Machon  2024-10-04  161  		       NULL;
10615907e9b51c Steen Hegelund 2021-08-19  162  	if (!port || !port->ndev) {
10615907e9b51c Steen Hegelund 2021-08-19  163  		dev_err(sparx5->dev, "Data on inactive port %d\n", fi.src_port);
10615907e9b51c Steen Hegelund 2021-08-19  164  		sparx5_xtr_flush(sparx5, XTR_QUEUE);
10615907e9b51c Steen Hegelund 2021-08-19  165  		return false;
10615907e9b51c Steen Hegelund 2021-08-19  166  	}
10615907e9b51c Steen Hegelund 2021-08-19  167  	skb->dev = port->ndev;
10615907e9b51c Steen Hegelund 2021-08-19  168  	skb_pull(skb, IFH_LEN * sizeof(u32));
10615907e9b51c Steen Hegelund 2021-08-19  169  	if (likely(!(skb->dev->features & NETIF_F_RXFCS)))
10615907e9b51c Steen Hegelund 2021-08-19  170  		skb_trim(skb, skb->len - ETH_FCS_LEN);
70dfe25cd8666d Horatiu Vultur 2022-03-04  171  
70dfe25cd8666d Horatiu Vultur 2022-03-04  172  	sparx5_ptp_rxtstamp(sparx5, skb, fi.timestamp);
10615907e9b51c Steen Hegelund 2021-08-19  173  	skb->protocol = eth_type_trans(skb, skb->dev);
10615907e9b51c Steen Hegelund 2021-08-19  174  	/* Everything we see on an interface that is in the HW bridge
10615907e9b51c Steen Hegelund 2021-08-19  175  	 * has already been forwarded
10615907e9b51c Steen Hegelund 2021-08-19  176  	 */
10615907e9b51c Steen Hegelund 2021-08-19  177  	if (test_bit(port->portno, sparx5->bridge_mask))
10615907e9b51c Steen Hegelund 2021-08-19 @178  		skb->offload_fwd_mark = 1;
10615907e9b51c Steen Hegelund 2021-08-19  179  	skb->dev->stats.rx_bytes += skb->len;
10615907e9b51c Steen Hegelund 2021-08-19  180  	skb->dev->stats.rx_packets++;
10615907e9b51c Steen Hegelund 2021-08-19  181  	rx->packets++;
10615907e9b51c Steen Hegelund 2021-08-19  182  	netif_receive_skb(skb);
10615907e9b51c Steen Hegelund 2021-08-19  183  	return true;
10615907e9b51c Steen Hegelund 2021-08-19  184  }
10615907e9b51c Steen Hegelund 2021-08-19  185  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki