Re: Linux 4.18-rc6

From: Kees Cook
Date: Wed Jul 25 2018 - 15:40:30 EST


On Tue, Jul 24, 2018 at 12:24 AM, Martin Schwidefsky
<schwidefsky@xxxxxxxxxx> wrote:
> On Tue, 24 Jul 2018 09:15:58 +0200
> Christian Borntraeger <borntraeger@xxxxxxxxxx> wrote:
>
>> On 07/24/2018 08:18 AM, Martin Schwidefsky wrote:
>> > On Mon, 23 Jul 2018 16:17:22 -0700
>> > Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
>> >
>> >> On Mon, Jul 23, 2018 at 2:23 PM Guenter Roeck <linux@xxxxxxxxxxxx> wrote:
>> >>>
>> >>>>
>> >>>> Martin - can we just remove the
>> >>>>
>> >>>> select HAVE_GCC_PLUGINS
>> >>>>
>> >>>> from the s390 Kconfig file (or perhaps add "if BROKEN" or something to
>> >>>> disable it).
>> >>>>
>> >>>> Because if it's not getting fixed, it shouldn't be exposed.
>> >>>>
>> >>> The problem only affects 4.18 - the code has been rearranged in -next.
>> >>> Only, in my builders, I can't disable a flag for individual releases,
>> >>> so I just disabled it completely for s390.
>> >>
>> >> Well, I'm not going to release a 4.18 with a known problem, so in 4.18
>> >> this *will* be disabled if it's not fixed.
>> >>
>> >> The fact that it might be fixed in linux-next is entirely immaterial
>> >> to the release of 4.18.
>> >
>> > Ok, if gcc with the plugins and an allmodconfig is considered to be
>> > important enough to warrant a fix, it can be pulled from here:
>> >
>> > git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux.git for-linus
>> >
>> > Martin Schwidefsky (1):
>> > s390: disable gcc plugins
>> >
>> > Once that is in I will create another patch to undo this one and place
>> > it after the early boot rework.
>>
>> On the list a different fix was proposed about 2 weeks ago,

https://lkml.kernel.org/r/CAGXu5jKyESyPD1MyM7BrVFPKDY9+HqRCpXcKG5ikCZwdGZLaSw@xxxxxxxxxxxxxx

>>
>> something like
>>
>> CFLAGS_als.o += $(DISABLE_LATENT_ENTROPY_PLUGIN)
>>
>> and I prefer that. Because your patch disables all gcc plugins.
>
> This change would cause trouble with patch dependencies as als.c is moved
> to a different directory. I would prefer to disable all gcc plugins for
> 4.18.

I don't understand why not just add it to the Makefile. For -next and
4.19, just drop the line again once you merge with 4.18? A CFLAGS_*.o
entry for a file that doesn't exist should be harmless...

Of course, if no one is actually using the gcc plugins on s390, then
okay, disabling them isn't a problem. :) But since it's been working
on s390 since 4.15, it seems weird to turn all of them off just for
4.18 when a trivial fix is available.

-Kees

--
Kees Cook
Pixel Security