Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932983AbdC2VMz (ORCPT ); Wed, 29 Mar 2017 17:12:55 -0400 Received: from fallback1.mail.ru ([94.100.181.184]:59130 "EHLO fallback1.mail.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753915AbdC2VMq (ORCPT ); Wed, 29 Mar 2017 17:12:46 -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> 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 , Liang Z Li , 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: <2a9c7bfd-e85c-2673-d3b5-906fe7dd8db4@list.ru> Date: Wed, 29 Mar 2017 23:55:28 +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: <1490762284.2647.24.camel@ranerica-desktop> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Authentication-Results: smtp14.mail.ru; auth=pass smtp.auth=stsp@list.ru smtp.mailfrom=stsp@list.ru X-7FA49CB5: 0D63561A33F958A5BCFD8879555396F491DAAF5A6F6E4C7E49BCFA25D85093C09F18ECD7E95F35E929AFE063DF4C541CFA29D96DF0301E763E29F31DA192B7690BF2EBBBDD9D6B0FAEAACC865B01FC22 X-Mailru-Sender: F1845AB6CCC9920DF7838D61D4D05C42308D8AE8A38E940612D3D68A797F2E1E24378D4B3CDCFF721653177920737CA72999BEE114A20FF4278B2D54D4112F244F0A872F021F905956A8FB0C6EBA5FCCEAB4BC95F72C04283CDA0F3B3F5B9367 X-Mras: OK Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1879 Lines: 42 29.03.2017 07:38, Ricardo Neri пишет: >> Probably you could also remove >> the sldt and str emulation for protected mode, because, >> as I understand from this thread, wine does not >> need those. > I see. I would lean on keeping the emulation because I already > implemented it :), for completeness, and because it is performed in a > single switch. The bulk of the emulation code deals with operands. But this is not for free. As Andy said, you will then need a syscall and a feature mask to be able to disable this emulation. And AFAIK you haven't implemented that yet, so there is something to consider. >>>> You know the wine's >>>> requirements now - they are very small. And >>>> dosemu doesn't need anything at all but smsw. >>>> And even smsw is very rare. >>> But emulation is still needed for SMSW, right? >> Likely so. >> If you want, I can enable the logging of this command >> and see if it is used by some of the DOS programs I have. > It would be great if you could do that, if you don't mind. OK, scheduled to the week-end. I'll let you know. >> 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.