lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 8 Dec 2021 22:41:45 +0800
From:   kernel test robot <lkp@...el.com>
To:     Joseph CHANG <josright123@...il.com>,
        "David S . Miller" <davem@...emloft.net>,
        Jakub Kicinski <kuba@...nel.org>,
        Rob Herring <robh+dt@...nel.org>
Cc:     kbuild-all@...ts.01.org, netdev@...r.kernel.org,
        devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/2] net: Add DM9051 driver

Hi Joseph,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on ce83278f313ce65a9bbd780a3e07fa3f62d82525]

url:    https://github.com/0day-ci/linux/commits/Joseph-CHANG/ADD-DM9051-NET-DEVICE/20211208-193833
base:   ce83278f313ce65a9bbd780a3e07fa3f62d82525
config: arc-allyesconfig (https://download.01.org/0day-ci/archive/20211208/202112082228.stoSxUom-lkp@intel.com/config)
compiler: arceb-elf-gcc (GCC) 11.2.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
        # https://github.com/0day-ci/linux/commit/9ee7a9a16698431c764b4b21a0839e87f3692078
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Joseph-CHANG/ADD-DM9051-NET-DEVICE/20211208-193833
        git checkout 9ee7a9a16698431c764b4b21a0839e87f3692078
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arc SHELL=/bin/bash drivers/net/ethernet/davicom/

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

All warnings (new ones prefixed by >>):

   drivers/net/ethernet/davicom/dm9051.c: In function 'dm9051_read_mac_to_dev':
   drivers/net/ethernet/davicom/dm9051.c:255:35: error: assignment of read-only location '*(ndev->dev_addr + (sizetype)i)'
     255 |                 ndev->dev_addr[i] = ior(db, DM9051_PAR + i);
         |                                   ^
   drivers/net/ethernet/davicom/dm9051.c:260:43: error: assignment of read-only location '*(ndev->dev_addr + (sizetype)i)'
     260 |                         ndev->dev_addr[i] = ior(db, DM9051_PAR + i);
         |                                           ^
   drivers/net/ethernet/davicom/dm9051.c: In function 'dm_set_mac_lock':
>> drivers/net/ethernet/davicom/dm9051.c:341:57: warning: passing argument 3 of 'dm_write_eeprom_func' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     341 |                         dm_write_eeprom_func(db, i / 2, &ndev->dev_addr[i]);
         |                                                         ^~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/davicom/dm9051.c:156:73: note: expected 'u8 *' {aka 'unsigned char *'} but argument is of type 'const unsigned char *'
     156 | static void dm_write_eeprom_func(struct board_info *db, int offset, u8 *data)
         |                                                                     ~~~~^~~~


vim +341 drivers/net/ethernet/davicom/dm9051.c

   318	
   319	/* set mac permanently
   320	 */
   321	static void dm_set_mac_lock(struct board_info *db)
   322	{
   323		struct net_device *ndev = db->ndev;
   324	
   325		if (db->enter_setmac) {
   326			int i, oft;
   327	
   328			db->enter_setmac = 0;
   329			netdev_info(ndev, "set_mac_address %02x %02x %02x  %02x %02x %02x\n",
   330				    ndev->dev_addr[0], ndev->dev_addr[1], ndev->dev_addr[2],
   331				    ndev->dev_addr[3], ndev->dev_addr[4], ndev->dev_addr[5]);
   332	
   333			/* write to net device and chip */
   334			ADDR_LOCK_HEAD_ESSENTIAL(db); //mutex_lock
   335			for (i = 0, oft = DM9051_PAR; i < ETH_ALEN; i++, oft++)
   336				iow(db, oft, ndev->dev_addr[i]);
   337			ADDR_LOCK_TAIL_ESSENTIAL(db); //mutex_unlock
   338	
   339			/* write to EEPROM */
   340			for (i = 0; i < ETH_ALEN; i += 2)
 > 341				dm_write_eeprom_func(db, i / 2, &ndev->dev_addr[i]);
   342		}
   343	}
   344	

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ