Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933013AbdC3KLc (ORCPT ); Thu, 30 Mar 2017 06:11:32 -0400 Received: from smtp35.i.mail.ru ([94.100.177.95]:34592 "EHLO smtp35.i.mail.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932191AbdC3KLa (ORCPT ); Thu, 30 Mar 2017 06:11:30 -0400 Subject: Re: [v6 PATCH 00/21] x86: Enable User-Mode Instruction Prevention To: Ricardo Neri References: <20170308003254.27833-1-ricardo.neri-calderon@linux.intel.com> <79ba0fff-4c01-2bfa-06cb-5cfc98dd710c@list.ru> <997ba581-ecfa-b773-a48e-85b92a439836@list.ru> <1489022122.131264.33.camel@ranerica-desktop> <63231222-5b42-c8c9-02f0-0afbe702d8b5@list.ru> <1489190396.131264.47.camel@ranerica-desktop> <6331deea-e9b0-fcfe-b75d-8100f37a615a@list.ru> <1490658399.2647.14.camel@ranerica-desktop> <1490762284.2647.24.camel@ranerica-desktop> <2a9c7bfd-e85c-2673-d3b5-906fe7dd8db4@list.ru> <1490850848.2647.28.camel@ranerica-desktop> Cc: Andy Lutomirski , Ingo Molnar , Thomas Gleixner , "H. Peter Anvin" , Andy Lutomirski , Borislav Petkov , Peter Zijlstra , Andrew Morton , Brian Gerst , Chris Metcalf , Dave Hansen , Paolo Bonzini , Masami Hiramatsu , Huang Rui , Jiri Slaby , Jonathan Corbet , "Michael S. Tsirkin" , Paul Gortmaker , Vlastimil Babka , Chen Yucong , Alexandre Julliard , Fenghua Yu , "Ravi V. Shankar" , Shuah Khan , "linux-kernel@vger.kernel.org" , X86 ML , linux-msdos@vger.kernel.org, wine-devel@winehq.org From: Stas Sergeev Message-ID: <3f1f1632-ae64-34f7-70ef-d4f8091cd5c1@list.ru> Date: Thu, 30 Mar 2017 13:10:59 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <1490850848.2647.28.camel@ranerica-desktop> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Authentication-Results: smtp35.i.mail.ru; auth=pass smtp.auth=stsp@list.ru smtp.mailfrom=stsp@list.ru X-7FA49CB5: 0D63561A33F958A5C0F767C3E60F82A5D60BDE4FB61258FF8CCB3ED2A1DE23049F18ECD7E95F35E929AFE063DF4C541C8F0A5FCA884A3594DFAFFF66D3E71DFD0BF2EBBBDD9D6B0FAEAACC865B01FC22 X-Mailru-Sender: F1845AB6CCC9920DF7838D61D4D05C4254F1ECC1C3FC4DC8D1900B3689741AC494E9A093BA7D1E921653177920737CA72999BEE114A20FF4278B2D54D4112F244F0A872F021F905956A8FB0C6EBA5FCCEAB4BC95F72C04283CDA0F3B3F5B9367 X-Mras: OK Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1567 Lines: 32 30.03.2017 08:14, Ricardo Neri пишет: >>>> But at least dosemu implements it, so probably it is needed. >>> Right. >>> >>>> Of course if it is used by one of 100 DOS progs, then there >>>> is an option to just add its support to dosemu2 and pretend >>>> the compatibility problems did not exist. :) >>> Do you mean relaying the GP fault to dosemu instead of trapping it and >>> emulating it in the kernel? >> Yes, that would be optimal if this does not severely break >> the current setups. If we can find out that smsw is not in >> the real use, we can probably do exactly that. >> But other >> instructions are not in real use in v86 for sure, so I >> wouldn't be adding the explicit test-cases to the kernel >> that will make you depend on some particular behaviour >> that no one may need. >> My objection was that we shouldn't >> write tests before we know exactly how we want this to work. > OK, if only SMSW is used then I'll keep the emulation for SMSW only. In fact, smsw has an interesting property, which is that no one will ever want to disable its in-kernel emulation to provide its own. So while I'll try to estimate its usage, emulating it in kernel will not be that problematic in either case. As for protected mode, if wine only needs sgdt/sidt, then again, no one will want to disable its emulation. Not the case with sldt, but AFAICS wine doesn't need sldt, and so we can leave sldt without a fixups. Is my understanding correct? In this case, I suppose, we are very well on a way to avoid the extra syscalls to toggle the emulation features.