Message ID | 20210912160149.2227137-3-linux@roeck-us.net (mailing list archive) |
---|---|
State | Not Applicable, archived |
Headers | show |
Series | Introduce and use absolute_pointer macro | expand |
On Sun, 12 Sep 2021 09:01:47 -0700 Guenter Roeck <linux@roeck-us.net> wrote: > gcc 11.x reports the following compiler warning/error. > > drivers/net/ethernet/i825xx/82596.c: In function 'i82596_probe': > ./arch/m68k/include/asm/string.h:72:25: error: > '__builtin_memcpy' reading 6 bytes from a region of size 0 > [-Werror=stringop-overread] > > Use absolute_address() to work around the problem. => absolute_pointer() > Cc: Geert Uytterhoeven <geert@linux-m68k.org> > Signed-off-by: Guenter Roeck <linux@roeck-us.net> > --- > drivers/net/ethernet/i825xx/82596.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/i825xx/82596.c > b/drivers/net/ethernet/i825xx/82596.c index > b8a40146b895..b482f6f633bd 100644 --- > a/drivers/net/ethernet/i825xx/82596.c +++ > b/drivers/net/ethernet/i825xx/82596.c @@ -1144,7 +1144,7 @@ static > struct net_device * __init i82596_probe(void) err = -ENODEV; > goto out; > } > - memcpy(eth_addr, (void *) 0xfffc1f2c, > ETH_ALEN); /* YUCK! Get addr from NOVRAM */ > + memcpy(eth_addr, absolute_pointer(0xfffc1f2c), > ETH_ALEN); /* YUCK! Get addr from NOVRAM */ dev->base_addr = > MVME_I596_BASE; dev->irq = (unsigned) MVME16x_IRQ_I596; > goto found; Regards, jer
On 9/12/21 9:11 AM, Jeroen Roovers wrote: > On Sun, 12 Sep 2021 09:01:47 -0700 > Guenter Roeck <linux@roeck-us.net> wrote: > >> gcc 11.x reports the following compiler warning/error. >> >> drivers/net/ethernet/i825xx/82596.c: In function 'i82596_probe': >> ./arch/m68k/include/asm/string.h:72:25: error: >> '__builtin_memcpy' reading 6 bytes from a region of size 0 >> [-Werror=stringop-overread] >> >> Use absolute_address() to work around the problem. > > => absolute_pointer() > Oopsie. Thanks! Guenter >> Cc: Geert Uytterhoeven <geert@linux-m68k.org> >> Signed-off-by: Guenter Roeck <linux@roeck-us.net> >> --- >> drivers/net/ethernet/i825xx/82596.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/net/ethernet/i825xx/82596.c >> b/drivers/net/ethernet/i825xx/82596.c index >> b8a40146b895..b482f6f633bd 100644 --- >> a/drivers/net/ethernet/i825xx/82596.c +++ >> b/drivers/net/ethernet/i825xx/82596.c @@ -1144,7 +1144,7 @@ static >> struct net_device * __init i82596_probe(void) err = -ENODEV; >> goto out; >> } >> - memcpy(eth_addr, (void *) 0xfffc1f2c, >> ETH_ALEN); /* YUCK! Get addr from NOVRAM */ >> + memcpy(eth_addr, absolute_pointer(0xfffc1f2c), >> ETH_ALEN); /* YUCK! Get addr from NOVRAM */ dev->base_addr = >> MVME_I596_BASE; dev->irq = (unsigned) MVME16x_IRQ_I596; >> goto found; > > > Regards, > jer >
diff --git a/drivers/net/ethernet/i825xx/82596.c b/drivers/net/ethernet/i825xx/82596.c index b8a40146b895..b482f6f633bd 100644 --- a/drivers/net/ethernet/i825xx/82596.c +++ b/drivers/net/ethernet/i825xx/82596.c @@ -1144,7 +1144,7 @@ static struct net_device * __init i82596_probe(void) err = -ENODEV; goto out; } - memcpy(eth_addr, (void *) 0xfffc1f2c, ETH_ALEN); /* YUCK! Get addr from NOVRAM */ + memcpy(eth_addr, absolute_pointer(0xfffc1f2c), ETH_ALEN); /* YUCK! Get addr from NOVRAM */ dev->base_addr = MVME_I596_BASE; dev->irq = (unsigned) MVME16x_IRQ_I596; goto found;
gcc 11.x reports the following compiler warning/error. drivers/net/ethernet/i825xx/82596.c: In function 'i82596_probe': ./arch/m68k/include/asm/string.h:72:25: error: '__builtin_memcpy' reading 6 bytes from a region of size 0 [-Werror=stringop-overread] Use absolute_address() to work around the problem. Cc: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Guenter Roeck <linux@roeck-us.net> --- drivers/net/ethernet/i825xx/82596.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)