From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752765AbdC0QPF (ORCPT ); Mon, 27 Mar 2017 12:15:05 -0400 Received: from mail-it0-f41.google.com ([209.85.214.41]:38868 "EHLO mail-it0-f41.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751124AbdC0QO6 (ORCPT ); Mon, 27 Mar 2017 12:14:58 -0400 MIME-Version: 1.0 In-Reply-To: <851a0c99-db08-c3a8-f5c6-2e567971e2eb@au1.ibm.com> References: <1485894263-91051-1-git-send-email-keescook@chromium.org> <1485894263-91051-2-git-send-email-keescook@chromium.org> <851a0c99-db08-c3a8-f5c6-2e567971e2eb@au1.ibm.com> From: Kees Cook Date: Mon, 27 Mar 2017 09:14:36 -0700 X-Google-Sender-Auth: 811nLcBPmbyD2cRqFW8QpMyYk_Q Message-ID: Subject: Re: [kernel-hardening] [PATCH v5 1/4] gcc-plugins: Add the initify gcc plugin To: Andrew Donnellan Cc: LKML , Emese Revfy , Arnd Bergmann , Josh Triplett , PaX Team , Masahiro Yamada , minipli@ld-linux.so, Russell King , Catalin Marinas , Rasmus Villemoes , David Brown , "benh@kernel.crashing.org" , Thomas Gleixner , Andrew Morton , Jeff Layton , Sam Ravnborg , "kernel-hardening@lists.openwall.com" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Mar 27, 2017 at 12:38 AM, Andrew Donnellan wrote: > On 01/02/17 07:24, Kees Cook wrote: >> >> From: Emese Revfy >> >> The kernel already has a mechanism to free up code and data memory that >> is only used during kernel or module initialization. This plugin will >> teach the compiler to find more such code and data that can be freed >> after initialization. > > > Currently checking whether we can wire this up for powerpc without too many > problems... Cool, thanks. FWIW, note that this plugin is a bit back-burnered at the moment. I've got this in my -next tree still, but it needs some rather large changes to how it does its annotations before Linus will accept it. >> diff --git a/arch/x86/lib/Makefile b/arch/x86/lib/Makefile >> index 34a74131a12c..b98b8fdb7aaf 100644 >> --- a/arch/x86/lib/Makefile >> +++ b/arch/x86/lib/Makefile >> @@ -29,6 +29,10 @@ lib-$(CONFIG_RANDOMIZE_BASE) += kaslr.o >> obj-y += msr.o msr-reg.o msr-reg-export.o hweight.o >> >> ifeq ($(CONFIG_X86_32),y) >> + CFLAGS_strstr_32.o += >> $(INITIFY_DISABLE_VERIFIY_NOCAPTURE_FUNCTIONS) >> + CFLAGS_string_32.o += >> $(INITIFY_DISABLE_VERIFIY_NOCAPTURE_FUNCTIONS) >> + CFLAGS_memcpy_32.o += >> $(INITIFY_DISABLE_VERIFIY_NOCAPTURE_FUNCTIONS) > > > s/VERIFIY/VERIFY/g here + Makefile.gcc-plugins? Ah, thanks for catching that! I'll get that fixed. -Kees -- Kees Cook Pixel Security