From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752105AbbJLRsG (ORCPT ); Mon, 12 Oct 2015 13:48:06 -0400 Received: from mx1.redhat.com ([209.132.183.28]:47244 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751661AbbJLRsE (ORCPT ); Mon, 12 Oct 2015 13:48:04 -0400 Message-ID: <561BF252.3090607@redhat.com> Date: Mon, 12 Oct 2015 19:48:02 +0200 From: Denys Vlasenko User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Andy Lutomirski CC: Andy Lutomirski , X86 ML , "linux-kernel@vger.kernel.org" , Brian Gerst , Linus Torvalds , Borislav Petkov Subject: Re: [PATCH v2 07/36] x86/entry/64/compat: After SYSENTER, move STI after the NT fixup References: <35d24d2a9305da3182eab7b2cdfd32902e90962c.1444091584.git.luto@kernel.org> <561558D6.2030909@redhat.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 10/09/2015 09:48 PM, Andy Lutomirski wrote: > Anyway, it's still a win, but I'll keep playing. There may be even > better ways to do this. Such as this? Drop OR, check for cleared IF here: testl $X86_EFLAGS_NT, EFLAGS(%rsp) jnz sysenter_fix_flags testl $X86_EFLAGS_IF, EFLAGS(%rsp) jz sysenter_fix_flags sysenter_flags_fixed: and make sysenter_fix_flags code set IF in addition to TF clearing. This way, we don't even have an unconditional RMW op.