drivers/net/phy/mdio-cavium.c:21:16: note: in expansion of macro 'oct_mdio_readq'

From: kernel test robot
Date: Mon Jul 06 2020 - 13:26:07 EST


Hi Nathan,

First bad commit (maybe != root cause):

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: dcb7fd82c75ee2d6e6f9d8cc71c52519ed52e258
commit: b8fb640643fcdb3bca84137c4cec0c649b25e056 net: mdio-octeon: Fix Kconfig warnings and build errors
date: 11 months ago
config: m68k-randconfig-r015-20200706 (attached as .config)
compiler: m68k-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
git checkout b8fb640643fcdb3bca84137c4cec0c649b25e056
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=m68k

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

All warnings (new ones prefixed by >>):

In file included from include/linux/kernel.h:11,
from include/linux/delay.h:22,
from drivers/net/phy/mdio-cavium.c:6:
include/linux/scatterlist.h: In function 'sg_set_buf':
arch/m68k/include/asm/page_no.h:33:50: warning: ordered comparison of pointer with null pointer [-Wextra]
33 | #define virt_addr_valid(kaddr) (((void *)(kaddr) >= (void *)PAGE_OFFSET) && \
| ^~
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));
| ^~~~~~
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 drivers/net/phy/mdio-cavium.c:11:
drivers/net/phy/mdio-cavium.c: In function 'cavium_mdiobus_set_mode':
drivers/net/phy/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^
>> drivers/net/phy/mdio-cavium.c:21:16: note: in expansion of macro 'oct_mdio_readq'
21 | smi_clk.u64 = oct_mdio_readq(p->register_base + SMI_CLK);
| ^~~~~~~~~~~~~~
drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
>> drivers/net/phy/mdio-cavium.c:24:2: note: in expansion of macro 'oct_mdio_writeq'
24 | oct_mdio_writeq(smi_clk.u64, p->register_base + SMI_CLK);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio-cavium.c: In function 'cavium_mdiobus_c45_addr':
drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
drivers/net/phy/mdio-cavium.c:39:2: note: in expansion of macro 'oct_mdio_writeq'
39 | oct_mdio_writeq(smi_wr.u64, p->register_base + SMI_WR_DAT);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
drivers/net/phy/mdio-cavium.c:47:2: note: in expansion of macro 'oct_mdio_writeq'
47 | oct_mdio_writeq(smi_cmd.u64, p->register_base + SMI_CMD);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^
drivers/net/phy/mdio-cavium.c:54:16: note: in expansion of macro 'oct_mdio_readq'
54 | smi_wr.u64 = oct_mdio_readq(p->register_base + SMI_WR_DAT);
| ^~~~~~~~~~~~~~
drivers/net/phy/mdio-cavium.c: In function 'cavium_mdiobus_read':
drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
drivers/net/phy/mdio-cavium.c:86:2: note: in expansion of macro 'oct_mdio_writeq'
86 | oct_mdio_writeq(smi_cmd.u64, p->register_base + SMI_CMD);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^
drivers/net/phy/mdio-cavium.c:93:16: note: in expansion of macro 'oct_mdio_readq'
93 | smi_rd.u64 = oct_mdio_readq(p->register_base + SMI_RD_DAT);
| ^~~~~~~~~~~~~~
drivers/net/phy/mdio-cavium.c: In function 'cavium_mdiobus_write':
drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
drivers/net/phy/mdio-cavium.c:125:2: note: in expansion of macro 'oct_mdio_writeq'
125 | oct_mdio_writeq(smi_wr.u64, p->register_base + SMI_WR_DAT);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
drivers/net/phy/mdio-cavium.c:131:2: note: in expansion of macro 'oct_mdio_writeq'
131 | oct_mdio_writeq(smi_cmd.u64, p->register_base + SMI_CMD);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^
drivers/net/phy/mdio-cavium.c:138:16: note: in expansion of macro 'oct_mdio_readq'
138 | smi_wr.u64 = oct_mdio_readq(p->register_base + SMI_WR_DAT);
| ^~~~~~~~~~~~~~

vim +/oct_mdio_readq +21 drivers/net/phy/mdio-cavium.c

1eefee901fca02 David Daney 2016-03-11 10
1eefee901fca02 David Daney 2016-03-11 @11 #include "mdio-cavium.h"
1eefee901fca02 David Daney 2016-03-11 12
1eefee901fca02 David Daney 2016-03-11 13 static void cavium_mdiobus_set_mode(struct cavium_mdiobus *p,
1eefee901fca02 David Daney 2016-03-11 14 enum cavium_mdiobus_mode m)
1eefee901fca02 David Daney 2016-03-11 15 {
1eefee901fca02 David Daney 2016-03-11 16 union cvmx_smix_clk smi_clk;
1eefee901fca02 David Daney 2016-03-11 17
1eefee901fca02 David Daney 2016-03-11 18 if (m == p->mode)
1eefee901fca02 David Daney 2016-03-11 19 return;
1eefee901fca02 David Daney 2016-03-11 20
1eefee901fca02 David Daney 2016-03-11 @21 smi_clk.u64 = oct_mdio_readq(p->register_base + SMI_CLK);
1eefee901fca02 David Daney 2016-03-11 22 smi_clk.s.mode = (m == C45) ? 1 : 0;
1eefee901fca02 David Daney 2016-03-11 23 smi_clk.s.preamble = 1;
1eefee901fca02 David Daney 2016-03-11 @24 oct_mdio_writeq(smi_clk.u64, p->register_base + SMI_CLK);
1eefee901fca02 David Daney 2016-03-11 25 p->mode = m;
1eefee901fca02 David Daney 2016-03-11 26 }
1eefee901fca02 David Daney 2016-03-11 27

:::::: The code at line 21 was first introduced by commit
:::::: 1eefee901fca0208b8a56f20cdc134e2b8638ae7 phy: mdio-octeon: Refactor into two files/modules

:::::: TO: David Daney <david.daney@xxxxxxxxxx>
:::::: CC: David S. Miller <davem@xxxxxxxxxxxxx>

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

Attachment: .config.gz
Description: application/gzip