From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32550 invoked by alias); 4 Nov 2004 23:18:17 -0000 Mailing-List: contact libc-hacker-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-hacker-owner@sources.redhat.com Received: (qmail 32527 invoked from network); 4 Nov 2004 23:18:16 -0000 Received: from unknown (HELO gateway.sf.frob.com) (64.81.54.130) by sourceware.org with SMTP; 4 Nov 2004 23:18:16 -0000 Received: from magilla.sf.frob.com (magilla.sf.frob.com [198.49.250.228]) by gateway.sf.frob.com (Postfix) with ESMTP id 58396357B; Thu, 4 Nov 2004 15:18:15 -0800 (PST) Received: from magilla.sf.frob.com (localhost.localdomain [127.0.0.1]) by magilla.sf.frob.com (8.12.11/8.12.9) with ESMTP id iA4NIDKZ027521; Thu, 4 Nov 2004 15:18:13 -0800 Received: (from roland@localhost) by magilla.sf.frob.com (8.12.11/8.12.11/Submit) id iA4NICiH027518; Thu, 4 Nov 2004 15:18:12 -0800 Date: Thu, 04 Nov 2004 23:18:00 -0000 Message-Id: <200411042318.iA4NICiH027518@magilla.sf.frob.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit From: Roland McGrath To: Steve Munroe Cc: libc-hacker@sources.redhat.com, Paul Mackerras Subject: Re: Questions about VDSO In-Reply-To: Steve Munroe's message of Thursday, 4 November 2004 16:11:39 -0600 X-Antipastobozoticataclysm: When George Bush projectile vomits antipasto on the Japanese. X-SW-Source: 2004-11/txt/msg00005.txt.bz2 There is no configuration that requires a vdso. That's what DL_SYSINFO_DEFAULT is for. If you are not providing a syscall entry point, then you should not define AT_SYSINFO at all, since its meaning (as used so far) is to be the syscall entry point. You have a vdso with no syscall entry point, just define AT_SYSINFO_EHDR. The libc code as it is does not have conditionals to distinguish just loading the vdso from the use for the syscall entry point. We can easily make that distinction, but it's only worthwhile when there is actually code to do something else by loading the vdso. I suppose if you use it for signal trampolines then needing the unwind info for that is reason enough. Most of what NEED_DL_SYSINFO controls is stuff you don't need. Even for a new platform that does put a syscall entry point in the vdso, not all of that code may be required. It includes storing a copy of the pointer in every thread structure, which is only the right thing to do if loading off the thread pointer is cheaper than a vanilla global access to a hidden symbol.