mbox series

[0/4] Introduce and use absolute_pointer macro

Message ID 20210912160149.2227137-1-linux@roeck-us.net (mailing list archive)
Headers show
Series Introduce and use absolute_pointer macro | expand

Message

Guenter Roeck Sept. 12, 2021, 4:01 p.m. UTC
Kernel test builds currently fail for several architectures with error
messages such as the following.

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]

Such warnings may be reported by gcc 11.x for string and memory operations
on fixed addresses.

This patch series introduces absolute_pointer() to fix the problem.
absolute_pointer() disassociates a pointer from its originating symbol
type and context, and thus prevents gcc from making assumptions about
pointers passed to memory operations.

----------------------------------------------------------------
Guenter Roeck (4):
      compiler.h: Introduce absolute_pointer macro
      net: i825xx: Use absolute_pointer for memcpy on fixed memory location
      parisc: Use absolute_pointer for memcmp on fixed memory location
      alpha: Use absolute_pointer for strcmp on fixed memory location

 arch/alpha/kernel/setup.c           | 2 +-
 arch/parisc/kernel/setup.c          | 2 +-
 drivers/net/ethernet/i825xx/82596.c | 2 +-
 include/linux/compiler.h            | 2 ++
 4 files changed, 5 insertions(+), 3 deletions(-)