Re: [PATCH 1/4] x86: entry.S: tidy up several suboptimal insns

H. Peter Anvin
2015-02-24T23:02:01Z

On 02/24/2015 02:56 PM, Andy Lutomirski wrote:
> On Tue, Feb 24, 2015 at 2:52 PM, H. Peter Anvin <hpa@zytor.com> wrote:
>> On 02/24/2015 02:25 PM, Andy Lutomirski wrote:
>>> On Tue, Feb 24, 2015 at 10:51 AM, Denys Vlasenko <dvlasenk@redhat.com> wrote:
>>>> In all three 32-bit entry points, %eax is zero-extended to %rax.
>>>> It is safe to do 32-bit compare when checking that syscall#
>>>> is not too large.
>>>
>>> Applied. Thanks!
>>>
>>
>> NAK NAK NAK NAK NAK!!!!
>>
>> We have already had this turn into a security issue not just once but
>> TWICE, because someone decided to "optimize" the path by taking out the
>> zero extend.
>>
>> The use of a 64-bit compare here is an intentional "belts and
>> suspenders" safety issue.
>
> Fair enough. OK if I just undo that part of this patch?
>

Actually this part should have been broken up. The word "several" in
the patch description is by itself a cause to NAK the patch.

-hpa