drivers/net/ethernet/apple/mace.c:170:34: error: assignment of read-only location '*(dev->dev_addr + (sizetype)j)'

From: Naresh Kamboju
Date: Tue Nov 23 2021 - 03:33:25 EST


While building Linux next 20211123 tag for powerpc with gcc-11
following warnings / errors noticed.

make --silent --keep-going --jobs=8
O=/home/tuxbuild/.cache/tuxmake/builds/current ARCH=powerpc
CROSS_COMPILE=powerpc64le-linux-gnu- 'CC=sccache
powerpc64le-linux-gnu-gcc' 'HOSTCC=sccache gcc'
<stdin>:1559:2: warning: #warning syscall futex_waitv not implemented [-Wcpp]
drivers/net/ethernet/apple/mace.c: In function 'mace_probe':
drivers/net/ethernet/apple/mace.c:170:34: error: assignment of
read-only location '*(dev->dev_addr + (sizetype)j)'
170 | dev->dev_addr[j] = rev ? bitrev8(addr[j]): addr[j];
| ^
drivers/net/ethernet/apple/mace.c: In function 'mace_reset':
drivers/net/ethernet/apple/mace.c:349:32: warning: passing argument 2
of '__mace_set_address' discards 'const' qualifier from pointer target
type [-Wdiscarded-qualifiers]
349 | __mace_set_address(dev, dev->dev_addr);
| ~~~^~~~~~~~~~
drivers/net/ethernet/apple/mace.c:93:62: note: expected 'void *' but
argument is of type 'const unsigned char *'
93 | static void __mace_set_address(struct net_device *dev, void *addr);
| ~~~~~~^~~~
drivers/net/ethernet/apple/mace.c: In function '__mace_set_address':
drivers/net/ethernet/apple/mace.c:388:43: error: assignment of
read-only location '*(dev->dev_addr + (sizetype)i)'
388 | out_8(&mb->padr, dev->dev_addr[i] = p[i]);
| ^
make[5]: *** [scripts/Makefile.build:288:
drivers/net/ethernet/apple/mace.o] Error 1
drivers/net/ethernet/apple/bmac.c: In function 'bmac_probe':
drivers/net/ethernet/apple/bmac.c:1287:34: error: assignment of
read-only location '*(dev->dev_addr + (sizetype)j)'
1287 | dev->dev_addr[j] = rev ? bitrev8(addr[j]): addr[j];
| ^
make[5]: *** [scripts/Makefile.build:288:
drivers/net/ethernet/apple/bmac.o] Error 1
make[5]: Target '__build' not remade because of errors.
make[4]: *** [scripts/Makefile.build:571: drivers/net/ethernet/apple] Error 2
drivers/net/ethernet/freescale/fec_mpc52xx.c: In function 'mpc52xx_fec_start':
drivers/net/ethernet/freescale/fec_mpc52xx.c:659:39: warning: passing
argument 2 of 'mpc52xx_fec_set_paddr' discards 'const' qualifier from
pointer target type [-Wdiscarded-qualifiers]
659 | mpc52xx_fec_set_paddr(dev, dev->dev_addr);
| ~~~^~~~~~~~~~
drivers/net/ethernet/freescale/fec_mpc52xx.c:102:63: note: expected
'u8 *' {aka 'unsigned char *'} but argument is of type 'const unsigned
char *'
102 | static void mpc52xx_fec_set_paddr(struct net_device *dev, u8 *mac)
| ~~~~^~~
make[4]: Target '__build' not remade because of errors.
make[3]: *** [scripts/Makefile.build:571: drivers/net/ethernet] Error 2


Build config:
https://builds.tuxbuild.com/21J9lNXArf0rGC2zEytrVxfwmQP/config


Reported-by: Linux Kernel Functional Testing <lkft@xxxxxxxxxx>

meta data:
-----------
git describe: next-20211123
git_repo: https://gitlab.com/Linaro/lkft/mirrors/next/linux-next
git_sha: aacdecce8147c20b01f865b4e214bb8dbe8c4af1
git_short_log: aacdecce8147 (\"Add linux-next specific files for 20211123\")
target_arch: powerpc
toolchain: gcc-11

steps to reproduce:
tuxmake --runtime podman --target-arch powerpc --toolchain gcc-11
--kconfig ppc6xx_defconfig

https://builds.tuxbuild.com/21J9lNXArf0rGC2zEytrVxfwmQP/tuxmake_reproducer.sh

--
Linaro LKFT
https://lkft.linaro.org