Re: [PATCH] ravb: Fixed the problem that rmmod can not be done

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Yuusuke,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on ipvs/master]
[also build test ERROR on linus/master v5.8-rc7 next-20200729]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Yuusuke-Ashizuka/ravb-Fixed-the-problem-that-rmmod-can-not-be-done/20200730-120910
base:   https://git.kernel.org/pub/scm/linux/kernel/git/horms/ipvs.git master
config: xtensa-allyesconfig (attached as .config)
compiler: xtensa-linux-gcc (GCC) 9.3.0
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
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=xtensa 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

   In file included from include/linux/err.h:5,
                    from include/linux/clk.h:12,
                    from drivers/net/ethernet/renesas/ravb_main.c:12:
   include/linux/scatterlist.h: In function 'sg_set_buf':
   arch/xtensa/include/asm/page.h:193:9: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]
     193 |  ((pfn) >= ARCH_PFN_OFFSET && ((pfn) - ARCH_PFN_OFFSET) < max_mapnr)
         |         ^~
   include/linux/compiler.h:78:42: note: in definition of macro 'unlikely'
      78 | # define unlikely(x) __builtin_expect(!!(x), 0)
         |                                          ^
   include/linux/scatterlist.h:143:2: note: in expansion of macro 'BUG_ON'
     143 |  BUG_ON(!virt_addr_valid(buf));
         |  ^~~~~~
   arch/xtensa/include/asm/page.h:201:32: note: in expansion of macro 'pfn_valid'
     201 | #define virt_addr_valid(kaddr) pfn_valid(__pa(kaddr) >> PAGE_SHIFT)
         |                                ^~~~~~~~~
   include/linux/scatterlist.h:143:10: note: in expansion of macro 'virt_addr_valid'
     143 |  BUG_ON(!virt_addr_valid(buf));
         |          ^~~~~~~~~~~~~~~
   In file included from ./arch/xtensa/include/generated/asm/bug.h:1,
                    from include/linux/bug.h:5,
                    from include/linux/thread_info.h:12,
                    from arch/xtensa/include/asm/current.h:18,
                    from include/linux/mutex.h:14,
                    from include/linux/notifier.h:14,
                    from include/linux/clk.h:14,
                    from drivers/net/ethernet/renesas/ravb_main.c:12:
   include/linux/dma-mapping.h: In function 'dma_map_resource':
   arch/xtensa/include/asm/page.h:193:9: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]
     193 |  ((pfn) >= ARCH_PFN_OFFSET && ((pfn) - ARCH_PFN_OFFSET) < max_mapnr)
         |         ^~
   include/asm-generic/bug.h:144:27: note: in definition of macro 'WARN_ON_ONCE'
     144 |  int __ret_warn_once = !!(condition);   \
         |                           ^~~~~~~~~
   include/linux/dma-mapping.h:352:19: note: in expansion of macro 'pfn_valid'
     352 |  if (WARN_ON_ONCE(pfn_valid(PHYS_PFN(phys_addr))))
         |                   ^~~~~~~~~
   drivers/net/ethernet/renesas/ravb_main.c: In function 'ravb_open':
>> drivers/net/ethernet/renesas/ravb_main.c:1470:2: error: implicit declaration of function 'ravb_mdio_release' [-Werror=implicit-function-declaration]
    1470 |  ravb_mdio_release(priv);
         |  ^~~~~~~~~~~~~~~~~
   drivers/net/ethernet/renesas/ravb_main.c: At top level:
>> drivers/net/ethernet/renesas/ravb_main.c:1705:12: error: static declaration of 'ravb_mdio_release' follows non-static declaration
    1705 | static int ravb_mdio_release(struct ravb_private *priv)
         |            ^~~~~~~~~~~~~~~~~
   drivers/net/ethernet/renesas/ravb_main.c:1470:2: note: previous implicit declaration of 'ravb_mdio_release' was here
    1470 |  ravb_mdio_release(priv);
         |  ^~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors

vim +/ravb_mdio_release +1470 drivers/net/ethernet/renesas/ravb_main.c

  1377	
  1378	/* Network device open function for Ethernet AVB */
  1379	static int ravb_open(struct net_device *ndev)
  1380	{
  1381		struct ravb_private *priv = netdev_priv(ndev);
  1382		struct platform_device *pdev = priv->pdev;
  1383		struct device *dev = &pdev->dev;
  1384		int error;
  1385	
  1386		/* MDIO bus init */
  1387		error = ravb_mdio_init(priv);
  1388		if (error) {
  1389			netdev_err(ndev, "failed to initialize MDIO\n");
  1390			return error;
  1391		}
  1392	
  1393		napi_enable(&priv->napi[RAVB_BE]);
  1394		napi_enable(&priv->napi[RAVB_NC]);
  1395	
  1396		if (priv->chip_id == RCAR_GEN2) {
  1397			error = request_irq(ndev->irq, ravb_interrupt, IRQF_SHARED,
  1398					    ndev->name, ndev);
  1399			if (error) {
  1400				netdev_err(ndev, "cannot request IRQ\n");
  1401				goto out_napi_off;
  1402			}
  1403		} else {
  1404			error = ravb_hook_irq(ndev->irq, ravb_multi_interrupt, ndev,
  1405					      dev, "ch22:multi");
  1406			if (error)
  1407				goto out_napi_off;
  1408			error = ravb_hook_irq(priv->emac_irq, ravb_emac_interrupt, ndev,
  1409					      dev, "ch24:emac");
  1410			if (error)
  1411				goto out_free_irq;
  1412			error = ravb_hook_irq(priv->rx_irqs[RAVB_BE], ravb_be_interrupt,
  1413					      ndev, dev, "ch0:rx_be");
  1414			if (error)
  1415				goto out_free_irq_emac;
  1416			error = ravb_hook_irq(priv->tx_irqs[RAVB_BE], ravb_be_interrupt,
  1417					      ndev, dev, "ch18:tx_be");
  1418			if (error)
  1419				goto out_free_irq_be_rx;
  1420			error = ravb_hook_irq(priv->rx_irqs[RAVB_NC], ravb_nc_interrupt,
  1421					      ndev, dev, "ch1:rx_nc");
  1422			if (error)
  1423				goto out_free_irq_be_tx;
  1424			error = ravb_hook_irq(priv->tx_irqs[RAVB_NC], ravb_nc_interrupt,
  1425					      ndev, dev, "ch19:tx_nc");
  1426			if (error)
  1427				goto out_free_irq_nc_rx;
  1428		}
  1429	
  1430		/* Device init */
  1431		error = ravb_dmac_init(ndev);
  1432		if (error)
  1433			goto out_free_irq_nc_tx;
  1434		ravb_emac_init(ndev);
  1435	
  1436		/* Initialise PTP Clock driver */
  1437		if (priv->chip_id == RCAR_GEN2)
  1438			ravb_ptp_init(ndev, priv->pdev);
  1439	
  1440		netif_tx_start_all_queues(ndev);
  1441	
  1442		/* PHY control start */
  1443		error = ravb_phy_start(ndev);
  1444		if (error)
  1445			goto out_ptp_stop;
  1446	
  1447		return 0;
  1448	
  1449	out_ptp_stop:
  1450		/* Stop PTP Clock driver */
  1451		if (priv->chip_id == RCAR_GEN2)
  1452			ravb_ptp_stop(ndev);
  1453	out_free_irq_nc_tx:
  1454		if (priv->chip_id == RCAR_GEN2)
  1455			goto out_free_irq;
  1456		free_irq(priv->tx_irqs[RAVB_NC], ndev);
  1457	out_free_irq_nc_rx:
  1458		free_irq(priv->rx_irqs[RAVB_NC], ndev);
  1459	out_free_irq_be_tx:
  1460		free_irq(priv->tx_irqs[RAVB_BE], ndev);
  1461	out_free_irq_be_rx:
  1462		free_irq(priv->rx_irqs[RAVB_BE], ndev);
  1463	out_free_irq_emac:
  1464		free_irq(priv->emac_irq, ndev);
  1465	out_free_irq:
  1466		free_irq(ndev->irq, ndev);
  1467	out_napi_off:
  1468		napi_disable(&priv->napi[RAVB_NC]);
  1469		napi_disable(&priv->napi[RAVB_BE]);
> 1470		ravb_mdio_release(priv);
  1471		return error;
  1472	}
  1473	

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

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux Samsung SOC]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux