Re: [PATCH] lkdtm: Fix targets for objcopy usage

From: Kees Cook
Date: Mon Aug 01 2016 - 17:48:12 EST


On Fri, Jul 29, 2016 at 2:37 AM, Mark Rutland <mark.rutland@xxxxxxx> wrote:
> Hi,
>
> On Thu, Jul 28, 2016 at 07:30:39PM -0700, Kees Cook wrote:
>> The targets for lkdtm's objcopy were missing which caused them to always
>> be rebuilt. This corrects the problem.
>>
>> Additionally, commit f8fa70f392fa ("arm64: localise Image objcopy flags")
>> has landed now, so this removes the work-around for the global OBJCOPY
>> flag setting.
>>
>> Reported-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
>> Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
>
> With this applied, LKDTM builds fine for me on arm64, the redundant
> rebuilds are gone, and the result appears to work. So FWIW:
>
> Tested-by: Mark Rutland <mark.rutland@xxxxxxx>

Argh, it looks like ARM suffers the same global OBJCOPY problem, so
I'm going to leave that change out. :(

-Kees

>
> Thanks,
> Mark.
>
>> ---
>> drivers/misc/Makefile | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/misc/Makefile b/drivers/misc/Makefile
>> index 4387ccb79e64..132f4e3462ba 100644
>> --- a/drivers/misc/Makefile
>> +++ b/drivers/misc/Makefile
>> @@ -65,9 +65,9 @@ lkdtm-$(CONFIG_LKDTM) += lkdtm_perms.o
>> lkdtm-$(CONFIG_LKDTM) += lkdtm_rodata_objcopy.o
>> lkdtm-$(CONFIG_LKDTM) += lkdtm_usercopy.o
>>
>> -OBJCOPYFLAGS :=
>> OBJCOPYFLAGS_lkdtm_rodata_objcopy.o := \
>> --set-section-flags .text=alloc,readonly \
>> --rename-section .text=.rodata
>> -$(obj)/lkdtm_rodata_objcopy.o: $(obj)/lkdtm_rodata.o
>> +targets += lkdtm_rodata.o lkdtm_rodata_objcopy.o
>> +$(obj)/lkdtm_rodata_objcopy.o: $(obj)/lkdtm_rodata.o FORCE
>> $(call if_changed,objcopy)
>> --
>> 2.7.4
>>
>>
>> --
>> Kees Cook
>> Brillo & Chrome OS Security
>>



--
Kees Cook
Chrome OS & Brillo Security