mirror of
https://github.com/torvalds/linux.git
synced 2025-11-01 00:58:39 +02:00
The randstruct GCC plugin gets upset when it sees struct path (which is randomized) being assigned from a "void *" (which it cannot type-check). There's no need for these casts, as the entire internal payload use is following a normal struct layout. Convert the enum-based void * offset dereferencing to the new big_key_payload struct. No meaningful machine code changes result after this change, and source readability is improved. Drop the randstruct exception now that there is no "confusing" cross-type assignment. Cc: David Howells <dhowells@redhat.com> Cc: Eric Biggers <ebiggers@kernel.org> Cc: Christoph Hellwig <hch@infradead.org> Cc: Jarkko Sakkinen <jarkko@kernel.org> Cc: James Morris <jmorris@namei.org> Cc: "Serge E. Hallyn" <serge@hallyn.com> Cc: linux-hardening@vger.kernel.org Cc: keyrings@vger.kernel.org Cc: linux-security-module@vger.kernel.org Signed-off-by: Kees Cook <keescook@chromium.org> |
||
|---|---|---|
| .. | ||
| .gitignore | ||
| arm_ssp_per_task_plugin.c | ||
| gcc-common.h | ||
| gcc-generate-gimple-pass.h | ||
| gcc-generate-ipa-pass.h | ||
| gcc-generate-rtl-pass.h | ||
| gcc-generate-simple_ipa-pass.h | ||
| Kconfig | ||
| latent_entropy_plugin.c | ||
| Makefile | ||
| randomize_layout_plugin.c | ||
| sancov_plugin.c | ||
| stackleak_plugin.c | ||
| structleak_plugin.c | ||