Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757988AbcCUTWD (ORCPT ); Mon, 21 Mar 2016 15:22:03 -0400 Received: from one.firstfloor.org ([193.170.194.197]:37852 "EHLO one.firstfloor.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757656AbcCUTV7 (ORCPT ); Mon, 21 Mar 2016 15:21:59 -0400 Date: Mon, 21 Mar 2016 20:03:23 +0100 From: Andi Kleen To: Andy Lutomirski Cc: Andi Kleen , X86 ML , "linux-kernel@vger.kernel.org" Subject: Re: Updated version of RD/WR FS/GS BASE patchkit Message-ID: <20160321190322.GZ5083@two.firstfloor.org> References: <1458576969-13309-1-git-send-email-andi@firstfloor.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1344 Lines: 37 On Mon, Mar 21, 2016 at 11:39:07AM -0700, Andy Lutomirski wrote: > 4. Does the sigcontext format need to change? I don't think it needs to be. fs/gs are global state and the signal handlers are not likely to change it. Also there is no default that could be restored. > > For maximum safely, comprehensibility, and sanity, there's an argument > to be made that 1a and 2a should leave the state exactly as it started > and that 1b and 2b should leave it alone unless percpu bases are in > use. For maximum simplicity of implementation, there's an argument > that, if the fs or gs selector is nonzero and the base doesn't match > the in-memory descriptor, then the kernel can do whatever it wants. > > I propose the following semantics: So you want to change the existing semantics. We had this discussion before. I think it is out of scope of my patch, which just extends the existing semantics to support the instructions. (what happened in the system call before is now possible in ring 3) If you want to invent some new overengineered semantics you can do it in some followon patch. Personally i think it is pointless. The existing semantics are fine. > Does all this make sense? Do people agree with me? I think you are overcomplicated something fundamentally simple. -Andi -- ak@linux.intel.com -- Speaking for myself only.