Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
firmware: coreboot: Check size of table entry and use flex-array
The memcpy() of the data following a coreboot_table_entry couldn't be evaluated by the compiler under CONFIG_FORTIFY_SOURCE. To make it easier to reason about, add an explicit flexible array member to struct coreboot_device so the entire entry can be copied at once. Additionally, validate the sizes before copying. Avoids this run-time false positive warning: memcpy: detected field-spanning write (size 168) of single field "&device->entry" at drivers/firmware/google/coreboot_table.c:103 (size 8) Reported-by: Paul Menzel <pmenzel@molgen.mpg.de> Link: https://lore.kernel.org/all/03ae2704-8c30-f9f0-215b-7cdf4ad35a9a@molgen.mpg.de/ Cc: Jack Rosenthal <jrosenth@chromium.org> Cc: Guenter Roeck <groeck@chromium.org> Cc: Julius Werner <jwerner@chromium.org> Cc: Brian Norris <briannorris@chromium.org> Cc: Stephen Boyd <swboyd@chromium.org> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Kees Cook <keescook@chromium.org> Reviewed-by: Julius Werner <jwerner@chromium.org> Reviewed-by: Guenter Roeck <groeck@chromium.org> Link: https://lore.kernel.org/r/20230107031406.gonna.761-kees@kernel.org Reviewed-by: Stephen Boyd <swboyd@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Link: https://lore.kernel.org/r/20230112230312.give.446-kees@kernel.org
- linux-5.15.100-mpi
- linux-5.15.101-mpi
- linux-5.15.102-mpi
- linux-5.15.103-mpi
- linux-5.15.104-mpi
- linux-5.15.105-mpi
- linux-5.15.106-mpi
- linux-5.15.107-mpi
- linux-5.15.108-mpi
- linux-5.15.109-mpi
- linux-5.15.110-mpi
- linux-5.15.111-mpi
- linux-5.15.112-mpi
- linux-5.15.113-mpi
- linux-5.15.114-mpi
- linux-5.15.115-mpi
- linux-5.15.116-mpi
- linux-5.15.117-mpi
- linux-5.15.118-mpi
- linux-5.15.119-mpi
- linux-5.15.120-mpi
- linux-5.15.121-mpi
- linux-5.15.122-mpi
- linux-5.15.123-mpi
- linux-5.15.124-mpi
- linux-5.15.125-mpi
- linux-5.15.126-mpi
- linux-5.15.127-mpi
- linux-5.15.128-mpi
- linux-5.15.129-mpi
- linux-5.15.130-mpi
- linux-5.15.131-mpi
- linux-5.15.132-mpi
- linux-5.15.133-mpi
- linux-5.15.134-mpi
- linux-5.15.135-mpi
- linux-5.15.136-mpi
- linux-5.15.137-mpi
- linux-5.15.138-mpi
- linux-5.15.139-mpi
- linux-5.15.140-mpi
- linux-5.15.141-mpi
- linux-5.15.142-mpi
- linux-5.15.143-mpi
- linux-5.15.144-mpi
- linux-5.15.145-mpi
- linux-5.15.146-mpi
- linux-5.15.147-mpi
- linux-5.15.148-mpi
- linux-5.15.149-mpi
- linux-5.15.150-mpi
- linux-5.15.151-mpi
- linux-5.15.152-mpi
- linux-5.15.153-mpi
- linux-5.15.154-mpi
- linux-5.15.155-mpi
- linux-5.15.156-mpi
- linux-5.15.157-mpi
- linux-5.15.158-mpi
- linux-5.15.159-mpi
- linux-5.15.160-mpi
- linux-5.15.161-mpi
- linux-5.15.162-mpi
- linux-5.15.163-mpi
- linux-5.15.164-mpi
- linux-5.15.165-mpi
- linux-5.15.166-mpi
- linux-5.15.167-mpi
- linux-5.15.168-mpi
- linux-5.15.169-mpi
- linux-5.15.170-mpi
- linux-5.15.171-mpi
- linux-5.15.172-mpi
- linux-5.15.173-mpi
- linux-5.15.174-mpi
- linux-5.15.175-mpi
- linux-5.15.176-mpi
- linux-5.15.177-mpi
- linux-5.15.178-mpi
- linux-5.15.179-mpi
- linux-5.15.180-mpi
- linux-5.15.181-mpi
- linux-5.15.182-mpi
- linux-5.15.183-mpi
- linux-5.15.184-mpi
- linux-5.15.185-mpi
- linux-5.15.186-mpi
- linux-5.15.187-mpi
- linux-5.15.188-mpi
- linux-5.15.189-mpi
- linux-5.15.88-mpi
- linux-5.15.89-mpi
- linux-5.15.90-mpi
- linux-5.15.91-mpi
- linux-5.15.92-mpi
- linux-5.15.93-mpi
- linux-5.15.94-mpi
- linux-5.15.95-mpi
- linux-5.15.96-mpi
- linux-5.15.97-mpi
- linux-5.15.98-mpi
- linux-5.15.99-mpi