Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755121AbbGYSgM (ORCPT ); Sat, 25 Jul 2015 14:36:12 -0400 Received: from mx1.redhat.com ([209.132.183.28]:47936 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755012AbbGYSgK (ORCPT ); Sat, 25 Jul 2015 14:36:10 -0400 Message-ID: <55B3D715.2020308@redhat.com> Date: Sat, 25 Jul 2015 20:36:05 +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: Ingo Molnar , Linus Torvalds , "Krzysztof A. Sobiecki" , Steven Rostedt , Borislav Petkov , "H. Peter Anvin" , Oleg Nesterov , Frederic Weisbecker , Alexei Starovoitov , Will Drewry , Kees Cook , X86 ML , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH 2/3] x86/asm/entry/32: Remove most of SYSCALL32 code, part 1 References: <1437745668-31802-1-git-send-email-dvlasenk@redhat.com> <1437745668-31802-2-git-send-email-dvlasenk@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 Content-Length: 1522 Lines: 39 On 07/24/2015 07:50 PM, Andy Lutomirski wrote: > On Fri, Jul 24, 2015 at 6:47 AM, Denys Vlasenko wrote: >> SYSCALL32 code is nearly identical to SYSCALL32, except for initial >> section. Merge them. >> >> The removal is split into two parts, to make review eaiser. This is part 1. >> >> auditsys_entry_common and auditsys_exit macros are indented one more tab without >> any changes. This prevents diff from becoming unreadable. >> They will be removed in part 2. > > I need to read these more closely, which is, at present, exceeding my > ability to look at asm. (See the big NMI thread.) I'll look soon. The "sysenter_fix_flags" thingy prevented the diff from being a pure delete, so it is not as clear as I hoped. What patch is doing is actually very simple. It "amputates" entire SYSENTER code path after it finished creating partially filled pt_regs, loaded arg6 and dealt with EFLAGS sanitization - after this is done, the state is identical to the similar state in SYSCALL code, so we can just use SYSCALL code from that moment onward! :) > Meanwhile, this code is incredibly fragile wrt syscall restart. > (Syscall restart on compat is really weird.) Weird in what way? > Do we have a decent test for it? I don't know of any such test. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/