]> git.baikalelectronics.ru Git - kernel.git/commit
latent_entropy: Fix wrong gcc code generation with 64 bit variables
authorKees Cook <keescook@chromium.org>
Tue, 18 Oct 2016 22:08:04 +0000 (00:08 +0200)
committerKees Cook <keescook@chromium.org>
Mon, 31 Oct 2016 18:30:41 +0000 (11:30 -0700)
commitb08819651e07b21f27a1c9bc3769cdc28c20d794
tree01256e5ed4f34f736e83b841ca5ef9893cc479f8
parent6d3c7660a322fb634aa47ba1f3b5e98950af6421
latent_entropy: Fix wrong gcc code generation with 64 bit variables

The stack frame size could grow too large when the plugin used long long
on 32-bit architectures when the given function had too many basic blocks.

The gcc warning was:

drivers/pci/hotplug/ibmphp_ebda.c: In function 'ibmphp_access_ebda':
drivers/pci/hotplug/ibmphp_ebda.c:409:1: warning: the frame size of 1108 bytes is larger than 1024 bytes [-Wframe-larger-than=]

This switches latent_entropy from u64 to unsigned long.

Thanks to PaX Team and Emese Revfy for the patch.

Signed-off-by: Kees Cook <keescook@chromium.org>
mm/page_alloc.c
scripts/gcc-plugins/latent_entropy_plugin.c