All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <202202011757.Azj3HHCb-lkp@intel.com>

diff --git a/a/1.txt b/N1/1.txt
index 113aa89..332fcc5 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -1,15 +1,6 @@
-CC: kbuild-all(a)lists.01.org
-CC: linux-kernel(a)vger.kernel.org
-TO: Steen Hegelund <steen.hegelund@microchip.com>
-CC: Bjarni Jonasson <bjarni.jonasson@microchip.com>
-CC: Lars Povlsen <lars.povlsen@microchip.com>
-
 tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
 head:   26291c54e111ff6ba87a164d85d4a4e134b7315c
 commit: f3cad2611a77f0229dc16aa7bd2ef63e35ea9fb6 net: sparx5: add hostmode with phylink support
-date:   7 months ago
-:::::: branch date: 2 days ago
-:::::: commit date: 7 months ago
 config: nios2-randconfig-m031-20220130 (https://download.01.org/0day-ci/archive/20220201/202202011757.Azj3HHCb-lkp(a)intel.com/config)
 compiler: nios2-linux-gcc (GCC) 11.2.0
 
@@ -22,88 +13,6 @@ drivers/net/ethernet/microchip/sparx5/sparx5_packet.c:147 sparx5_xtr_grp() error
 
 vim +/skb +147 drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
 
-f3cad2611a77f0 Steen Hegelund 2021-06-24   52  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   53  static void sparx5_xtr_grp(struct sparx5 *sparx5, u8 grp, bool byte_swap)
-f3cad2611a77f0 Steen Hegelund 2021-06-24   54  {
-f3cad2611a77f0 Steen Hegelund 2021-06-24   55  	bool eof_flag = false, pruned_flag = false, abort_flag = false;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   56  	struct net_device *netdev;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   57  	struct sparx5_port *port;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   58  	struct frame_info fi;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   59  	int i, byte_cnt = 0;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   60  	struct sk_buff *skb;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   61  	u32 ifh[IFH_LEN];
-f3cad2611a77f0 Steen Hegelund 2021-06-24   62  	u32 *rxbuf;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   63  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   64  	/* Get IFH */
-f3cad2611a77f0 Steen Hegelund 2021-06-24   65  	for (i = 0; i < IFH_LEN; i++)
-f3cad2611a77f0 Steen Hegelund 2021-06-24   66  		ifh[i] = spx5_rd(sparx5, QS_XTR_RD(grp));
-f3cad2611a77f0 Steen Hegelund 2021-06-24   67  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   68  	/* Decode IFH (whats needed) */
-f3cad2611a77f0 Steen Hegelund 2021-06-24   69  	sparx5_ifh_parse(ifh, &fi);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   70  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   71  	/* Map to port netdev */
-f3cad2611a77f0 Steen Hegelund 2021-06-24   72  	port = fi.src_port < SPX5_PORTS ?
-f3cad2611a77f0 Steen Hegelund 2021-06-24   73  		sparx5->ports[fi.src_port] : NULL;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   74  	if (!port || !port->ndev) {
-f3cad2611a77f0 Steen Hegelund 2021-06-24   75  		dev_err(sparx5->dev, "Data on inactive port %d\n", fi.src_port);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   76  		sparx5_xtr_flush(sparx5, grp);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   77  		return;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   78  	}
-f3cad2611a77f0 Steen Hegelund 2021-06-24   79  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   80  	/* Have netdev, get skb */
-f3cad2611a77f0 Steen Hegelund 2021-06-24   81  	netdev = port->ndev;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   82  	skb = netdev_alloc_skb(netdev, netdev->mtu + ETH_HLEN);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   83  	if (!skb) {
-f3cad2611a77f0 Steen Hegelund 2021-06-24   84  		sparx5_xtr_flush(sparx5, grp);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   85  		dev_err(sparx5->dev, "No skb allocated\n");
-f3cad2611a77f0 Steen Hegelund 2021-06-24   86  		netdev->stats.rx_dropped++;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   87  		return;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   88  	}
-f3cad2611a77f0 Steen Hegelund 2021-06-24   89  	rxbuf = (u32 *)skb->data;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   90  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   91  	/* Now, pull frame data */
-f3cad2611a77f0 Steen Hegelund 2021-06-24   92  	while (!eof_flag) {
-f3cad2611a77f0 Steen Hegelund 2021-06-24   93  		u32 val = spx5_rd(sparx5, QS_XTR_RD(grp));
-f3cad2611a77f0 Steen Hegelund 2021-06-24   94  		u32 cmp = val;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   95  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   96  		if (byte_swap)
-f3cad2611a77f0 Steen Hegelund 2021-06-24   97  			cmp = ntohl((__force __be32)val);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   98  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   99  		switch (cmp) {
-f3cad2611a77f0 Steen Hegelund 2021-06-24  100  		case XTR_NOT_READY:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  101  			break;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  102  		case XTR_ABORT:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  103  			/* No accompanying data */
-f3cad2611a77f0 Steen Hegelund 2021-06-24  104  			abort_flag = true;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  105  			eof_flag = true;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  106  			break;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  107  		case XTR_EOF_0:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  108  		case XTR_EOF_1:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  109  		case XTR_EOF_2:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  110  		case XTR_EOF_3:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  111  			/* This assumes STATUS_WORD_POS == 1, Status
-f3cad2611a77f0 Steen Hegelund 2021-06-24  112  			 * just after last data
-f3cad2611a77f0 Steen Hegelund 2021-06-24  113  			 */
-f3cad2611a77f0 Steen Hegelund 2021-06-24  114  			byte_cnt -= (4 - XTR_VALID_BYTES(val));
-f3cad2611a77f0 Steen Hegelund 2021-06-24  115  			eof_flag = true;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  116  			break;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  117  		case XTR_PRUNED:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  118  			/* But get the last 4 bytes as well */
-f3cad2611a77f0 Steen Hegelund 2021-06-24  119  			eof_flag = true;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  120  			pruned_flag = true;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  121  			fallthrough;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  122  		case XTR_ESCAPE:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  123  			*rxbuf = spx5_rd(sparx5, QS_XTR_RD(grp));
-f3cad2611a77f0 Steen Hegelund 2021-06-24  124  			byte_cnt += 4;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  125  			rxbuf++;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  126  			break;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  127  		default:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  128  			*rxbuf = val;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  129  			byte_cnt += 4;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  130  			rxbuf++;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  131  		}
-f3cad2611a77f0 Steen Hegelund 2021-06-24  132  	}
-f3cad2611a77f0 Steen Hegelund 2021-06-24  133  
 f3cad2611a77f0 Steen Hegelund 2021-06-24  134  	if (abort_flag || pruned_flag || !eof_flag) {
 f3cad2611a77f0 Steen Hegelund 2021-06-24  135  		netdev_err(netdev, "Discarded frame: abort:%d pruned:%d eof:%d\n",
 f3cad2611a77f0 Steen Hegelund 2021-06-24  136  			   abort_flag, pruned_flag, eof_flag);
@@ -118,9 +27,11 @@ f3cad2611a77f0 Steen Hegelund 2021-06-24  144  	eth_skb_pad(skb);
 f3cad2611a77f0 Steen Hegelund 2021-06-24  145  	skb->protocol = eth_type_trans(skb, netdev);
 f3cad2611a77f0 Steen Hegelund 2021-06-24  146  	netif_rx(skb);
 f3cad2611a77f0 Steen Hegelund 2021-06-24 @147  	netdev->stats.rx_bytes += skb->len;
+                                                                          ^^^^^^^^
+The netif_rx() function will free the skb.
+
 f3cad2611a77f0 Steen Hegelund 2021-06-24  148  	netdev->stats.rx_packets++;
 f3cad2611a77f0 Steen Hegelund 2021-06-24  149  }
-f3cad2611a77f0 Steen Hegelund 2021-06-24  150  
 
 ---
 0-DAY CI Kernel Test Service, Intel Corporation
diff --git a/a/content_digest b/N1/content_digest
index dbe54c3..5e4fa72 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -1,21 +1,12 @@
- "From\0kernel test robot <lkp@intel.com>\0"
+ "From\0Dan Carpenter <dan.carpenter@oracle.com>\0"
  "Subject\0drivers/net/ethernet/microchip/sparx5/sparx5_packet.c:147 sparx5_xtr_grp() error: dereferencing freed memory 'skb'\0"
- "Date\0Tue, 01 Feb 2022 17:14:38 +0800\0"
- "To\0kbuild@lists.01.org\0"
+ "Date\0Tue, 01 Feb 2022 12:25:29 +0300\0"
+ "To\0kbuild-all@lists.01.org\0"
  "\01:1\0"
  "b\0"
- "CC: kbuild-all(a)lists.01.org\n"
- "CC: linux-kernel(a)vger.kernel.org\n"
- "TO: Steen Hegelund <steen.hegelund@microchip.com>\n"
- "CC: Bjarni Jonasson <bjarni.jonasson@microchip.com>\n"
- "CC: Lars Povlsen <lars.povlsen@microchip.com>\n"
- "\n"
  "tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master\n"
  "head:   26291c54e111ff6ba87a164d85d4a4e134b7315c\n"
  "commit: f3cad2611a77f0229dc16aa7bd2ef63e35ea9fb6 net: sparx5: add hostmode with phylink support\n"
- "date:   7 months ago\n"
- ":::::: branch date: 2 days ago\n"
- ":::::: commit date: 7 months ago\n"
  "config: nios2-randconfig-m031-20220130 (https://download.01.org/0day-ci/archive/20220201/202202011757.Azj3HHCb-lkp(a)intel.com/config)\n"
  "compiler: nios2-linux-gcc (GCC) 11.2.0\n"
  "\n"
@@ -28,88 +19,6 @@
  "\n"
  "vim +/skb +147 drivers/net/ethernet/microchip/sparx5/sparx5_packet.c\n"
  "\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   52  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   53  static void sparx5_xtr_grp(struct sparx5 *sparx5, u8 grp, bool byte_swap)\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   54  {\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   55  \tbool eof_flag = false, pruned_flag = false, abort_flag = false;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   56  \tstruct net_device *netdev;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   57  \tstruct sparx5_port *port;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   58  \tstruct frame_info fi;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   59  \tint i, byte_cnt = 0;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   60  \tstruct sk_buff *skb;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   61  \tu32 ifh[IFH_LEN];\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   62  \tu32 *rxbuf;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   63  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   64  \t/* Get IFH */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   65  \tfor (i = 0; i < IFH_LEN; i++)\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   66  \t\tifh[i] = spx5_rd(sparx5, QS_XTR_RD(grp));\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   67  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   68  \t/* Decode IFH (whats needed) */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   69  \tsparx5_ifh_parse(ifh, &fi);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   70  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   71  \t/* Map to port netdev */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   72  \tport = fi.src_port < SPX5_PORTS ?\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   73  \t\tsparx5->ports[fi.src_port] : NULL;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   74  \tif (!port || !port->ndev) {\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   75  \t\tdev_err(sparx5->dev, \"Data on inactive port %d\\n\", fi.src_port);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   76  \t\tsparx5_xtr_flush(sparx5, grp);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   77  \t\treturn;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   78  \t}\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   79  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   80  \t/* Have netdev, get skb */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   81  \tnetdev = port->ndev;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   82  \tskb = netdev_alloc_skb(netdev, netdev->mtu + ETH_HLEN);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   83  \tif (!skb) {\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   84  \t\tsparx5_xtr_flush(sparx5, grp);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   85  \t\tdev_err(sparx5->dev, \"No skb allocated\\n\");\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   86  \t\tnetdev->stats.rx_dropped++;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   87  \t\treturn;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   88  \t}\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   89  \trxbuf = (u32 *)skb->data;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   90  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   91  \t/* Now, pull frame data */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   92  \twhile (!eof_flag) {\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   93  \t\tu32 val = spx5_rd(sparx5, QS_XTR_RD(grp));\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   94  \t\tu32 cmp = val;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   95  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   96  \t\tif (byte_swap)\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   97  \t\t\tcmp = ntohl((__force __be32)val);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   98  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   99  \t\tswitch (cmp) {\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  100  \t\tcase XTR_NOT_READY:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  101  \t\t\tbreak;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  102  \t\tcase XTR_ABORT:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  103  \t\t\t/* No accompanying data */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  104  \t\t\tabort_flag = true;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  105  \t\t\teof_flag = true;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  106  \t\t\tbreak;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  107  \t\tcase XTR_EOF_0:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  108  \t\tcase XTR_EOF_1:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  109  \t\tcase XTR_EOF_2:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  110  \t\tcase XTR_EOF_3:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  111  \t\t\t/* This assumes STATUS_WORD_POS == 1, Status\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  112  \t\t\t * just after last data\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  113  \t\t\t */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  114  \t\t\tbyte_cnt -= (4 - XTR_VALID_BYTES(val));\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  115  \t\t\teof_flag = true;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  116  \t\t\tbreak;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  117  \t\tcase XTR_PRUNED:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  118  \t\t\t/* But get the last 4 bytes as well */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  119  \t\t\teof_flag = true;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  120  \t\t\tpruned_flag = true;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  121  \t\t\tfallthrough;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  122  \t\tcase XTR_ESCAPE:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  123  \t\t\t*rxbuf = spx5_rd(sparx5, QS_XTR_RD(grp));\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  124  \t\t\tbyte_cnt += 4;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  125  \t\t\trxbuf++;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  126  \t\t\tbreak;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  127  \t\tdefault:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  128  \t\t\t*rxbuf = val;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  129  \t\t\tbyte_cnt += 4;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  130  \t\t\trxbuf++;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  131  \t\t}\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  132  \t}\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  133  \n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  134  \tif (abort_flag || pruned_flag || !eof_flag) {\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  135  \t\tnetdev_err(netdev, \"Discarded frame: abort:%d pruned:%d eof:%d\\n\",\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  136  \t\t\t   abort_flag, pruned_flag, eof_flag);\n"
@@ -124,12 +33,14 @@
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  145  \tskb->protocol = eth_type_trans(skb, netdev);\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  146  \tnetif_rx(skb);\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24 @147  \tnetdev->stats.rx_bytes += skb->len;\n"
+ "                                                                          ^^^^^^^^\n"
+ "The netif_rx() function will free the skb.\n"
+ "\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  148  \tnetdev->stats.rx_packets++;\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  149  }\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  150  \n"
  "\n"
  "---\n"
  "0-DAY CI Kernel Test Service, Intel Corporation\n"
  https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
 
-7de78d06b3492426dd56408c100cd2590d899e5809d029e4058c6c4cd4343fff
+bb82ca115f5fe279f93b9ca15c50ad1d38e8bbf1488899213bca62895a7bc06d

diff --git a/a/1.txt b/N2/1.txt
index 113aa89..9bfab8e 100644
--- a/a/1.txt
+++ b/N2/1.txt
@@ -1,16 +1,7 @@
-CC: kbuild-all(a)lists.01.org
-CC: linux-kernel(a)vger.kernel.org
-TO: Steen Hegelund <steen.hegelund@microchip.com>
-CC: Bjarni Jonasson <bjarni.jonasson@microchip.com>
-CC: Lars Povlsen <lars.povlsen@microchip.com>
-
 tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
 head:   26291c54e111ff6ba87a164d85d4a4e134b7315c
 commit: f3cad2611a77f0229dc16aa7bd2ef63e35ea9fb6 net: sparx5: add hostmode with phylink support
-date:   7 months ago
-:::::: branch date: 2 days ago
-:::::: commit date: 7 months ago
-config: nios2-randconfig-m031-20220130 (https://download.01.org/0day-ci/archive/20220201/202202011757.Azj3HHCb-lkp(a)intel.com/config)
+config: nios2-randconfig-m031-20220130 (https://download.01.org/0day-ci/archive/20220201/202202011757.Azj3HHCb-lkp@intel.com/config)
 compiler: nios2-linux-gcc (GCC) 11.2.0
 
 If you fix the issue, kindly add following tag as appropriate
@@ -22,88 +13,6 @@ drivers/net/ethernet/microchip/sparx5/sparx5_packet.c:147 sparx5_xtr_grp() error
 
 vim +/skb +147 drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
 
-f3cad2611a77f0 Steen Hegelund 2021-06-24   52  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   53  static void sparx5_xtr_grp(struct sparx5 *sparx5, u8 grp, bool byte_swap)
-f3cad2611a77f0 Steen Hegelund 2021-06-24   54  {
-f3cad2611a77f0 Steen Hegelund 2021-06-24   55  	bool eof_flag = false, pruned_flag = false, abort_flag = false;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   56  	struct net_device *netdev;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   57  	struct sparx5_port *port;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   58  	struct frame_info fi;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   59  	int i, byte_cnt = 0;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   60  	struct sk_buff *skb;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   61  	u32 ifh[IFH_LEN];
-f3cad2611a77f0 Steen Hegelund 2021-06-24   62  	u32 *rxbuf;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   63  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   64  	/* Get IFH */
-f3cad2611a77f0 Steen Hegelund 2021-06-24   65  	for (i = 0; i < IFH_LEN; i++)
-f3cad2611a77f0 Steen Hegelund 2021-06-24   66  		ifh[i] = spx5_rd(sparx5, QS_XTR_RD(grp));
-f3cad2611a77f0 Steen Hegelund 2021-06-24   67  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   68  	/* Decode IFH (whats needed) */
-f3cad2611a77f0 Steen Hegelund 2021-06-24   69  	sparx5_ifh_parse(ifh, &fi);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   70  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   71  	/* Map to port netdev */
-f3cad2611a77f0 Steen Hegelund 2021-06-24   72  	port = fi.src_port < SPX5_PORTS ?
-f3cad2611a77f0 Steen Hegelund 2021-06-24   73  		sparx5->ports[fi.src_port] : NULL;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   74  	if (!port || !port->ndev) {
-f3cad2611a77f0 Steen Hegelund 2021-06-24   75  		dev_err(sparx5->dev, "Data on inactive port %d\n", fi.src_port);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   76  		sparx5_xtr_flush(sparx5, grp);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   77  		return;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   78  	}
-f3cad2611a77f0 Steen Hegelund 2021-06-24   79  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   80  	/* Have netdev, get skb */
-f3cad2611a77f0 Steen Hegelund 2021-06-24   81  	netdev = port->ndev;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   82  	skb = netdev_alloc_skb(netdev, netdev->mtu + ETH_HLEN);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   83  	if (!skb) {
-f3cad2611a77f0 Steen Hegelund 2021-06-24   84  		sparx5_xtr_flush(sparx5, grp);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   85  		dev_err(sparx5->dev, "No skb allocated\n");
-f3cad2611a77f0 Steen Hegelund 2021-06-24   86  		netdev->stats.rx_dropped++;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   87  		return;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   88  	}
-f3cad2611a77f0 Steen Hegelund 2021-06-24   89  	rxbuf = (u32 *)skb->data;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   90  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   91  	/* Now, pull frame data */
-f3cad2611a77f0 Steen Hegelund 2021-06-24   92  	while (!eof_flag) {
-f3cad2611a77f0 Steen Hegelund 2021-06-24   93  		u32 val = spx5_rd(sparx5, QS_XTR_RD(grp));
-f3cad2611a77f0 Steen Hegelund 2021-06-24   94  		u32 cmp = val;
-f3cad2611a77f0 Steen Hegelund 2021-06-24   95  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   96  		if (byte_swap)
-f3cad2611a77f0 Steen Hegelund 2021-06-24   97  			cmp = ntohl((__force __be32)val);
-f3cad2611a77f0 Steen Hegelund 2021-06-24   98  
-f3cad2611a77f0 Steen Hegelund 2021-06-24   99  		switch (cmp) {
-f3cad2611a77f0 Steen Hegelund 2021-06-24  100  		case XTR_NOT_READY:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  101  			break;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  102  		case XTR_ABORT:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  103  			/* No accompanying data */
-f3cad2611a77f0 Steen Hegelund 2021-06-24  104  			abort_flag = true;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  105  			eof_flag = true;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  106  			break;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  107  		case XTR_EOF_0:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  108  		case XTR_EOF_1:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  109  		case XTR_EOF_2:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  110  		case XTR_EOF_3:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  111  			/* This assumes STATUS_WORD_POS == 1, Status
-f3cad2611a77f0 Steen Hegelund 2021-06-24  112  			 * just after last data
-f3cad2611a77f0 Steen Hegelund 2021-06-24  113  			 */
-f3cad2611a77f0 Steen Hegelund 2021-06-24  114  			byte_cnt -= (4 - XTR_VALID_BYTES(val));
-f3cad2611a77f0 Steen Hegelund 2021-06-24  115  			eof_flag = true;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  116  			break;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  117  		case XTR_PRUNED:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  118  			/* But get the last 4 bytes as well */
-f3cad2611a77f0 Steen Hegelund 2021-06-24  119  			eof_flag = true;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  120  			pruned_flag = true;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  121  			fallthrough;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  122  		case XTR_ESCAPE:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  123  			*rxbuf = spx5_rd(sparx5, QS_XTR_RD(grp));
-f3cad2611a77f0 Steen Hegelund 2021-06-24  124  			byte_cnt += 4;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  125  			rxbuf++;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  126  			break;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  127  		default:
-f3cad2611a77f0 Steen Hegelund 2021-06-24  128  			*rxbuf = val;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  129  			byte_cnt += 4;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  130  			rxbuf++;
-f3cad2611a77f0 Steen Hegelund 2021-06-24  131  		}
-f3cad2611a77f0 Steen Hegelund 2021-06-24  132  	}
-f3cad2611a77f0 Steen Hegelund 2021-06-24  133  
 f3cad2611a77f0 Steen Hegelund 2021-06-24  134  	if (abort_flag || pruned_flag || !eof_flag) {
 f3cad2611a77f0 Steen Hegelund 2021-06-24  135  		netdev_err(netdev, "Discarded frame: abort:%d pruned:%d eof:%d\n",
 f3cad2611a77f0 Steen Hegelund 2021-06-24  136  			   abort_flag, pruned_flag, eof_flag);
@@ -118,10 +27,12 @@ f3cad2611a77f0 Steen Hegelund 2021-06-24  144  	eth_skb_pad(skb);
 f3cad2611a77f0 Steen Hegelund 2021-06-24  145  	skb->protocol = eth_type_trans(skb, netdev);
 f3cad2611a77f0 Steen Hegelund 2021-06-24  146  	netif_rx(skb);
 f3cad2611a77f0 Steen Hegelund 2021-06-24 @147  	netdev->stats.rx_bytes += skb->len;
+                                                                          ^^^^^^^^
+The netif_rx() function will free the skb.
+
 f3cad2611a77f0 Steen Hegelund 2021-06-24  148  	netdev->stats.rx_packets++;
 f3cad2611a77f0 Steen Hegelund 2021-06-24  149  }
-f3cad2611a77f0 Steen Hegelund 2021-06-24  150  
 
 ---
 0-DAY CI Kernel Test Service, Intel Corporation
-https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
+https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
diff --git a/a/content_digest b/N2/content_digest
index dbe54c3..98daf34 100644
--- a/a/content_digest
+++ b/N2/content_digest
@@ -1,22 +1,19 @@
- "From\0kernel test robot <lkp@intel.com>\0"
+ "From\0Dan Carpenter <dan.carpenter@oracle.com>\0"
  "Subject\0drivers/net/ethernet/microchip/sparx5/sparx5_packet.c:147 sparx5_xtr_grp() error: dereferencing freed memory 'skb'\0"
- "Date\0Tue, 01 Feb 2022 17:14:38 +0800\0"
- "To\0kbuild@lists.01.org\0"
- "\01:1\0"
+ "Date\0Tue, 1 Feb 2022 12:25:29 +0300\0"
+ "To\0kbuild@lists.01.org"
+ " Steen Hegelund <steen.hegelund@microchip.com>\0"
+ "Cc\0lkp@intel.com"
+  kbuild-all@lists.01.org
+  linux-kernel@vger.kernel.org
+  Bjarni Jonasson <bjarni.jonasson@microchip.com>
+ " Lars Povlsen <lars.povlsen@microchip.com>\0"
+ "\00:1\0"
  "b\0"
- "CC: kbuild-all(a)lists.01.org\n"
- "CC: linux-kernel(a)vger.kernel.org\n"
- "TO: Steen Hegelund <steen.hegelund@microchip.com>\n"
- "CC: Bjarni Jonasson <bjarni.jonasson@microchip.com>\n"
- "CC: Lars Povlsen <lars.povlsen@microchip.com>\n"
- "\n"
  "tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master\n"
  "head:   26291c54e111ff6ba87a164d85d4a4e134b7315c\n"
  "commit: f3cad2611a77f0229dc16aa7bd2ef63e35ea9fb6 net: sparx5: add hostmode with phylink support\n"
- "date:   7 months ago\n"
- ":::::: branch date: 2 days ago\n"
- ":::::: commit date: 7 months ago\n"
- "config: nios2-randconfig-m031-20220130 (https://download.01.org/0day-ci/archive/20220201/202202011757.Azj3HHCb-lkp(a)intel.com/config)\n"
+ "config: nios2-randconfig-m031-20220130 (https://download.01.org/0day-ci/archive/20220201/202202011757.Azj3HHCb-lkp@intel.com/config)\n"
  "compiler: nios2-linux-gcc (GCC) 11.2.0\n"
  "\n"
  "If you fix the issue, kindly add following tag as appropriate\n"
@@ -28,88 +25,6 @@
  "\n"
  "vim +/skb +147 drivers/net/ethernet/microchip/sparx5/sparx5_packet.c\n"
  "\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   52  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   53  static void sparx5_xtr_grp(struct sparx5 *sparx5, u8 grp, bool byte_swap)\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   54  {\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   55  \tbool eof_flag = false, pruned_flag = false, abort_flag = false;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   56  \tstruct net_device *netdev;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   57  \tstruct sparx5_port *port;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   58  \tstruct frame_info fi;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   59  \tint i, byte_cnt = 0;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   60  \tstruct sk_buff *skb;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   61  \tu32 ifh[IFH_LEN];\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   62  \tu32 *rxbuf;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   63  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   64  \t/* Get IFH */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   65  \tfor (i = 0; i < IFH_LEN; i++)\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   66  \t\tifh[i] = spx5_rd(sparx5, QS_XTR_RD(grp));\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   67  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   68  \t/* Decode IFH (whats needed) */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   69  \tsparx5_ifh_parse(ifh, &fi);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   70  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   71  \t/* Map to port netdev */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   72  \tport = fi.src_port < SPX5_PORTS ?\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   73  \t\tsparx5->ports[fi.src_port] : NULL;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   74  \tif (!port || !port->ndev) {\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   75  \t\tdev_err(sparx5->dev, \"Data on inactive port %d\\n\", fi.src_port);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   76  \t\tsparx5_xtr_flush(sparx5, grp);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   77  \t\treturn;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   78  \t}\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   79  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   80  \t/* Have netdev, get skb */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   81  \tnetdev = port->ndev;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   82  \tskb = netdev_alloc_skb(netdev, netdev->mtu + ETH_HLEN);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   83  \tif (!skb) {\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   84  \t\tsparx5_xtr_flush(sparx5, grp);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   85  \t\tdev_err(sparx5->dev, \"No skb allocated\\n\");\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   86  \t\tnetdev->stats.rx_dropped++;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   87  \t\treturn;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   88  \t}\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   89  \trxbuf = (u32 *)skb->data;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   90  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   91  \t/* Now, pull frame data */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   92  \twhile (!eof_flag) {\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   93  \t\tu32 val = spx5_rd(sparx5, QS_XTR_RD(grp));\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   94  \t\tu32 cmp = val;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   95  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   96  \t\tif (byte_swap)\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   97  \t\t\tcmp = ntohl((__force __be32)val);\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   98  \n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24   99  \t\tswitch (cmp) {\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  100  \t\tcase XTR_NOT_READY:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  101  \t\t\tbreak;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  102  \t\tcase XTR_ABORT:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  103  \t\t\t/* No accompanying data */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  104  \t\t\tabort_flag = true;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  105  \t\t\teof_flag = true;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  106  \t\t\tbreak;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  107  \t\tcase XTR_EOF_0:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  108  \t\tcase XTR_EOF_1:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  109  \t\tcase XTR_EOF_2:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  110  \t\tcase XTR_EOF_3:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  111  \t\t\t/* This assumes STATUS_WORD_POS == 1, Status\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  112  \t\t\t * just after last data\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  113  \t\t\t */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  114  \t\t\tbyte_cnt -= (4 - XTR_VALID_BYTES(val));\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  115  \t\t\teof_flag = true;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  116  \t\t\tbreak;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  117  \t\tcase XTR_PRUNED:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  118  \t\t\t/* But get the last 4 bytes as well */\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  119  \t\t\teof_flag = true;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  120  \t\t\tpruned_flag = true;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  121  \t\t\tfallthrough;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  122  \t\tcase XTR_ESCAPE:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  123  \t\t\t*rxbuf = spx5_rd(sparx5, QS_XTR_RD(grp));\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  124  \t\t\tbyte_cnt += 4;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  125  \t\t\trxbuf++;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  126  \t\t\tbreak;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  127  \t\tdefault:\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  128  \t\t\t*rxbuf = val;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  129  \t\t\tbyte_cnt += 4;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  130  \t\t\trxbuf++;\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  131  \t\t}\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  132  \t}\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  133  \n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  134  \tif (abort_flag || pruned_flag || !eof_flag) {\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  135  \t\tnetdev_err(netdev, \"Discarded frame: abort:%d pruned:%d eof:%d\\n\",\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  136  \t\t\t   abort_flag, pruned_flag, eof_flag);\n"
@@ -124,12 +39,14 @@
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  145  \tskb->protocol = eth_type_trans(skb, netdev);\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  146  \tnetif_rx(skb);\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24 @147  \tnetdev->stats.rx_bytes += skb->len;\n"
+ "                                                                          ^^^^^^^^\n"
+ "The netif_rx() function will free the skb.\n"
+ "\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  148  \tnetdev->stats.rx_packets++;\n"
  "f3cad2611a77f0 Steen Hegelund 2021-06-24  149  }\n"
- "f3cad2611a77f0 Steen Hegelund 2021-06-24  150  \n"
  "\n"
  "---\n"
  "0-DAY CI Kernel Test Service, Intel Corporation\n"
- https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
+ https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
 
-7de78d06b3492426dd56408c100cd2590d899e5809d029e4058c6c4cd4343fff
+75c6e420b301b55703579a18e24729d4ca9fb85a1ff9bc658ff04261c25557ac

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.