Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756631AbbBEHvp (ORCPT ); Thu, 5 Feb 2015 02:51:45 -0500 Received: from mail-we0-f180.google.com ([74.125.82.180]:43232 "EHLO mail-we0-f180.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753418AbbBEHvl (ORCPT ); Thu, 5 Feb 2015 02:51:41 -0500 Message-ID: <54D3210A.90303@gmail.com> Date: Thu, 05 Feb 2015 08:51:38 +0100 From: "Michael Kerrisk (man-pages)" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0 MIME-Version: 1.0 To: Andy Lutomirski , linux-kernel@vger.kernel.org CC: mtk.manpages@gmail.com Subject: Re: [PATCH manpages] modify_ldt.2: Clarify the lm bit's behavior References: <27da5d1594c1b5b7db0e33d425edaa35d45535a8.1423086787.git.luto@amacapital.net> In-Reply-To: <27da5d1594c1b5b7db0e33d425edaa35d45535a8.1423086787.git.luto@amacapital.net> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1843 Lines: 55 On 02/04/2015 10:53 PM, Andy Lutomirski wrote: > The lm bit should never have existed in the first place. Sigh. Thanks, Andy. Applied in the branch. Cheers, Michael > Signed-off-by: Andy Lutomirski > --- > man2/modify_ldt.2 | 13 +++++++++++-- > 1 file changed, 11 insertions(+), 2 deletions(-) > > diff --git a/man2/modify_ldt.2 b/man2/modify_ldt.2 > index 1c2cf9cdef93..d6e0514973a6 100644 > --- a/man2/modify_ldt.2 > +++ b/man2/modify_ldt.2 > @@ -187,12 +187,21 @@ The normal use for > .BR modify_ldt (2) > is to run legacy 16-bit or segmented 32-bit code. > Not all kernels allow 16-bit segments to be installed, however. > +.PP > +Even on 64-bit kernels, > +.BR modify_ldt (2) > +cannot be used to create a long mode (i.e. 64-bit) code segment. The > +undocumented field "lm" in > +.IR user_desc > +is not useful, and, despite its name, does not result in a long mode segment. > .SH BUGS > On 64-bit kernels before Linux 3.19, > .\" commit e30ab185c490e9a9381385529e0fd32f0a399495 > -setting the "lm" padding bit in > +setting the "lm" bit in > .IR user_desc > -prevents the descriptor from being considered empty. > +prevents the descriptor from being considered empty. Keep in mind that the > +"lm" bit does not exist in the 32-bit headers, but these buggy kernels > +will still notice the bit even when set in a 32-bit process. > .SH SEE ALSO > .BR arch_prctl (2), > .BR set_thread_area (2), > -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/ -- 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/