Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753943AbdCJB2H (ORCPT ); Thu, 9 Mar 2017 20:28:07 -0500 Received: from fallback1.mail.ru ([94.100.181.184]:53584 "EHLO fallback1.mail.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750781AbdCJB2F (ORCPT ); Thu, 9 Mar 2017 20:28:05 -0500 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> <1489020399.131264.27.camel@ranerica-desktop> Cc: 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@kernel.org, linux-msdos@vger.kernel.org, wine-devel@winehq.org From: Stas Sergeev Message-ID: Date: Fri, 10 Mar 2017 01:01:18 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <1489020399.131264.27.camel@ranerica-desktop> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Authentication-Results: smtp56.i.mail.ru; auth=pass smtp.auth=stsp@list.ru smtp.mailfrom=stsp@list.ru X-7FA49CB5: 0D63561A33F958A52F2259FCE9CF1C3AB9FD0E787624F8F2AE8539D4BE52BF759F18ECD7E95F35E929AFE063DF4C541C9BBC216BBAFF23EA895DB91543F760410BF2EBBBDD9D6B0F700B7D52D678FF46 X-Mailru-Sender: F1845AB6CCC9920DF7838D61D4D05C422BF925B0547CED69E370F3DA24D15C5929B783BC4D73BC1D1653177920737CA72999BEE114A20FF4278B2D54D4112F244F0A872F021F905956A8FB0C6EBA5FCCEAB4BC95F72C04283CDA0F3B3F5B9367 X-Mras: OK Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1744 Lines: 39 09.03.2017 03:46, Ricardo Neri пишет: > On Wed, 2017-03-08 at 17:08 +0300, Stas Sergeev wrote: >> 08.03.2017 03:32, Ricardo Neri пишет: >>> These are the instructions covered by UMIP: >>> * SGDT - Store Global Descriptor Table >>> * SIDT - Store Interrupt Descriptor Table >>> * SLDT - Store Local Descriptor Table >>> * SMSW - Store Machine Status Word >>> * STR - Store Task Register >>> >>> This patchset initially treated tasks running in virtual-8086 mode as a >>> special case. However, I received clarification that DOSEMU[8] does not >>> support applications that use these instructions. >> Yes, this is the case. >> But at least in the past there was an attempt to >> support SLDT as it is used by an ancient pharlap >> DOS extender (currently unsupported by dosemu1/2). >> So how difficult would it be to add an optional >> possibility of delivering such SIGSEGV to userspace >> so that the kernel's dummy emulation can be overridden? > I suppose a umip=noemulation kernel parameter could be added in this > case. Why? It doesn't need to be global: the app should be able to change that on its own. Note that no app currently requires this, so its just for the future, and in the future the app can start using the new API for this, if you provide one. >> It doesn't need to be a matter of this particular >> patch set, i.e. this proposal should not trigger a >> v7 resend of all 21 patches. :) But it would be useful >> for the future development of dosemu2. > Would dosemu2 use 32-bit processes in order to keep segmentation? If it > could use 64-bit processes, emulation is not used in this case and the > SIGSEGV is delivered to user space. It does use the mix: 64bit process but some segments are 32bit for DOS code.