Thread (32 messages) 32 messages, 12 authors, 2021-09-28

RE: [PATCH 02/11] x86: tboot: avoid Wstringop-overread-warning

From: David Laight <hidden>
Date: 2021-03-24 10:40:36
Also in: ath11k, cgroups, dri-devel, intel-gfx, linux-arm-kernel, linux-scsi, linux-wireless, lkml, netdev

From: David Laight
Sent: 24 March 2021 09:12

From: Martin Sebor
quoted
Sent: 22 March 2021 22:08
...
quoted
In GCC 11, all access warnings expect objects to be either declared
or allocated.  Pointers with constant values are taken to point to
nothing valid (as Arnd mentioned above, this is to detect invalid
accesses to members of structs at address zero).

One possible solution to the known address problem is to extend GCC
attributes address and io that pin an object to a hardwired address
to all targets (at the moment they're supported on just one or two
targets).  I'm not sure this can still happen before GCC 11 releases
sometime in April or May.
A different solution is to define a normal C external data item
and then assign a fixed address with an asm statement or in
the linker script.
Or stop gcc tracking the value by using:
	struct foo *foo = (void *)xxxxx;
	asm ("", "+r" (foo));

If the address is used more than once forcing it into
a register is also likely to generate better code.

	David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help