Re: [PATCH 4.14 17/89] futex: Prevent overflow by strengthen input validation

From: Jiri Slaby
Date: Thu Jan 25 2018 - 10:22:00 EST


On 01/25/2018, 04:12 PM, Greg Kroah-Hartman wrote:
> On Thu, Jan 25, 2018 at 03:47:32PM +0100, Jiri Slaby wrote:
>> On 01/25/2018, 03:30 PM, Thomas Gleixner wrote:
>>> So what's the problem?
>>
>> The problem I see is that every stable kernel now requires updated
>> strace with their commit from yesterday to build correctly. In
>> particular, the new stable kernels cause rpm build failures of strace in
>> all our distros (based on those stable kernels). Sure, we can patch
>> strace in every distro every nth kernel update, but it's mere
>> impractical. Kernel should not break userspace, right?
>
> Well, when userspace is doing something stupid... :)

No doubt... But does that mean we no longer maintain the "no userspace
breakage even if it is stupid" rule?

>> BTW why was the patch applied to stable? We actually do pass
>> -fno-strict-overflow.
>
> The same reason it was applied upstream, it fixes a reported
> issue.
>
> Does that mean that all UBSAN overflow error reports are not valid
> because of how we build the kernel?

IMO yes, because with the option, signed overflow is not undefined.

In the long term, it would be nice to get rid of *all* signed integer
overflows and kill the compiler option from Makefile. Therefore the
fixes are indeed very valid in upstream.

thanks,
--
js
suse labs