From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeremy Fitzhardinge Subject: Re: [patch 17/26] Xen-paravirt_ops: Add nosegneg capability to the vsyscall page notes Date: Fri, 16 Mar 2007 14:56:24 -0700 Message-ID: <45FB1288.5080909@goop.org> References: <20070316212655.B6C6B1801C5@magilla.sf.frob.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20070316212655.B6C6B1801C5@magilla.sf.frob.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Roland McGrath Cc: Zachary Amsden , Jakub Jelinek , xen-devel@lists.xensource.com, Ian Pratt , Andi Kleen , Rusty Russell , linux-kernel@vger.kernel.org, Ulrich Drepper , Chris Wright , virtualization@lists.osdl.org, Ingo Molnar , Andrew Morton , Christian Limpach List-Id: virtualization@lists.linuxfoundation.org Roland McGrath wrote: > This should be: > > NOTE_KERNELCAP_BEGIN(1, 1) > NOTE_KERNELCAP(0, "nosegneg") > NOTE_KERNELCAP_END > > i.e. 1->0 in the "bit" member. (Note the ld.so.conf.d file must have the > matching bit number for ldconfig-based lookups to do the right thing.) > Or else: > > NOTE_KERNELCAP_BEGIN(1, 2) > NOTE_KERNELCAP(0, "nosegneg") > NOTE_KERNELCAP_END > > i.e. 1->2 in the "mask" member. (The mask value should be 1< Thanks Roland. I've never really understood this stuff, and I just copied this cargo-cultishly. I'm not quite sure what you're suggesting here though. Do you mean one of: NOTE_KERNELCAP_BEGIN(1, 1) NOTE_KERNELCAP(0, "nosegneg") NOTE_KERNELCAP_END or NOTE_KERNELCAP_BEGIN(1, 2) NOTE_KERNELCAP(1, "nosegneg") NOTE_KERNELCAP_END is the correct thing to use? > Some pre-release glibc's (before 2.4) had a bug in the code that parses > this, and would crash parsing the correct note. Using the wrong bit value > with nonmatching mask worked around this. IIRC, no glibc release ever > included the buggy version of the code. In nonbuggy glibc, the mismatched > value causes the "nosegneg" to be omitted from the directory search (under > LD_LIBRARY_PATH and default directories), though ldconfig-based lookups > will work (the most common case). > Are you saying that one of the corrected forms might cause old glibcs to crash, or just ignore nosegneg? J