BCC: [email protected] CC: [email protected] CC: [email protected] TO: Cai Huoqing <[email protected]>
Hi Cai, First bad commit (maybe != root cause): tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 6614a3c3164a5df2b54abb0b3559f51041cf705b commit: fbcf8a340150abd20bf44fc706362b0827157fe8 net: ethernet: actions: Add helper dependency on COMPILE_TEST date: 12 months ago :::::: branch date: 18 hours ago :::::: commit date: 12 months ago config: openrisc-randconfig-m031-20220801 (https://download.01.org/0day-ci/archive/20220807/[email protected]/config) compiler: or1k-linux-gcc (GCC) 12.1.0 If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <[email protected]> Reported-by: Dan Carpenter <[email protected]> smatch warnings: drivers/net/ethernet/actions/owl-emac.c:210 owl_emac_ring_prepare_rx() error: potentially dereferencing uninitialized 'desc'. drivers/net/ethernet/actions/owl-emac.c:233 owl_emac_ring_prepare_tx() error: potentially dereferencing uninitialized 'desc'. vim +/desc +210 drivers/net/ethernet/actions/owl-emac.c de6e0b19823985 Cristian Ciocaltea 2021-03-22 178 de6e0b19823985 Cristian Ciocaltea 2021-03-22 179 static int owl_emac_ring_prepare_rx(struct owl_emac_priv *priv) de6e0b19823985 Cristian Ciocaltea 2021-03-22 180 { de6e0b19823985 Cristian Ciocaltea 2021-03-22 181 struct owl_emac_ring *ring = &priv->rx_ring; de6e0b19823985 Cristian Ciocaltea 2021-03-22 182 struct device *dev = owl_emac_get_dev(priv); de6e0b19823985 Cristian Ciocaltea 2021-03-22 183 struct net_device *netdev = priv->netdev; de6e0b19823985 Cristian Ciocaltea 2021-03-22 184 struct owl_emac_ring_desc *desc; de6e0b19823985 Cristian Ciocaltea 2021-03-22 185 struct sk_buff *skb; de6e0b19823985 Cristian Ciocaltea 2021-03-22 186 dma_addr_t dma_addr; de6e0b19823985 Cristian Ciocaltea 2021-03-22 187 int i; de6e0b19823985 Cristian Ciocaltea 2021-03-22 188 de6e0b19823985 Cristian Ciocaltea 2021-03-22 189 for (i = 0; i < ring->size; i++) { de6e0b19823985 Cristian Ciocaltea 2021-03-22 190 skb = owl_emac_alloc_skb(netdev); de6e0b19823985 Cristian Ciocaltea 2021-03-22 191 if (!skb) de6e0b19823985 Cristian Ciocaltea 2021-03-22 192 return -ENOMEM; de6e0b19823985 Cristian Ciocaltea 2021-03-22 193 de6e0b19823985 Cristian Ciocaltea 2021-03-22 194 dma_addr = owl_emac_dma_map_rx(priv, skb); de6e0b19823985 Cristian Ciocaltea 2021-03-22 195 if (dma_mapping_error(dev, dma_addr)) { de6e0b19823985 Cristian Ciocaltea 2021-03-22 196 dev_kfree_skb(skb); de6e0b19823985 Cristian Ciocaltea 2021-03-22 197 return -ENOMEM; de6e0b19823985 Cristian Ciocaltea 2021-03-22 198 } de6e0b19823985 Cristian Ciocaltea 2021-03-22 199 de6e0b19823985 Cristian Ciocaltea 2021-03-22 200 desc = &ring->descs[i]; de6e0b19823985 Cristian Ciocaltea 2021-03-22 201 desc->status = OWL_EMAC_BIT_RDES0_OWN; de6e0b19823985 Cristian Ciocaltea 2021-03-22 202 desc->control = skb_tailroom(skb) & OWL_EMAC_MSK_RDES1_RBS1; de6e0b19823985 Cristian Ciocaltea 2021-03-22 203 desc->buf_addr = dma_addr; de6e0b19823985 Cristian Ciocaltea 2021-03-22 204 desc->reserved = 0; de6e0b19823985 Cristian Ciocaltea 2021-03-22 205 de6e0b19823985 Cristian Ciocaltea 2021-03-22 206 ring->skbs[i] = skb; de6e0b19823985 Cristian Ciocaltea 2021-03-22 207 ring->skbs_dma[i] = dma_addr; de6e0b19823985 Cristian Ciocaltea 2021-03-22 208 } de6e0b19823985 Cristian Ciocaltea 2021-03-22 209 de6e0b19823985 Cristian Ciocaltea 2021-03-22 @210 desc->control |= OWL_EMAC_BIT_RDES1_RER; de6e0b19823985 Cristian Ciocaltea 2021-03-22 211 de6e0b19823985 Cristian Ciocaltea 2021-03-22 212 ring->head = 0; de6e0b19823985 Cristian Ciocaltea 2021-03-22 213 ring->tail = 0; de6e0b19823985 Cristian Ciocaltea 2021-03-22 214 de6e0b19823985 Cristian Ciocaltea 2021-03-22 215 return 0; de6e0b19823985 Cristian Ciocaltea 2021-03-22 216 } de6e0b19823985 Cristian Ciocaltea 2021-03-22 217 de6e0b19823985 Cristian Ciocaltea 2021-03-22 218 static void owl_emac_ring_prepare_tx(struct owl_emac_priv *priv) de6e0b19823985 Cristian Ciocaltea 2021-03-22 219 { de6e0b19823985 Cristian Ciocaltea 2021-03-22 220 struct owl_emac_ring *ring = &priv->tx_ring; de6e0b19823985 Cristian Ciocaltea 2021-03-22 221 struct owl_emac_ring_desc *desc; de6e0b19823985 Cristian Ciocaltea 2021-03-22 222 int i; de6e0b19823985 Cristian Ciocaltea 2021-03-22 223 de6e0b19823985 Cristian Ciocaltea 2021-03-22 224 for (i = 0; i < ring->size; i++) { de6e0b19823985 Cristian Ciocaltea 2021-03-22 225 desc = &ring->descs[i]; de6e0b19823985 Cristian Ciocaltea 2021-03-22 226 de6e0b19823985 Cristian Ciocaltea 2021-03-22 227 desc->status = 0; de6e0b19823985 Cristian Ciocaltea 2021-03-22 228 desc->control = OWL_EMAC_BIT_TDES1_IC; de6e0b19823985 Cristian Ciocaltea 2021-03-22 229 desc->buf_addr = 0; de6e0b19823985 Cristian Ciocaltea 2021-03-22 230 desc->reserved = 0; de6e0b19823985 Cristian Ciocaltea 2021-03-22 231 } de6e0b19823985 Cristian Ciocaltea 2021-03-22 232 de6e0b19823985 Cristian Ciocaltea 2021-03-22 @233 desc->control |= OWL_EMAC_BIT_TDES1_TER; de6e0b19823985 Cristian Ciocaltea 2021-03-22 234 de6e0b19823985 Cristian Ciocaltea 2021-03-22 235 memset(ring->skbs_dma, 0, sizeof(dma_addr_t) * ring->size); de6e0b19823985 Cristian Ciocaltea 2021-03-22 236 de6e0b19823985 Cristian Ciocaltea 2021-03-22 237 ring->head = 0; de6e0b19823985 Cristian Ciocaltea 2021-03-22 238 ring->tail = 0; de6e0b19823985 Cristian Ciocaltea 2021-03-22 239 } de6e0b19823985 Cristian Ciocaltea 2021-03-22 240 :::::: The code at line 210 was first introduced by commit :::::: de6e0b198239857943db395377dc1d2ddd6c05df net: ethernet: actions: Add Actions Semi Owl Ethernet MAC driver :::::: TO: Cristian Ciocaltea <[email protected]> :::::: CC: David S. Miller <[email protected]> -- 0-DAY CI Kernel Test Service https://01.org/lkp _______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
