From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20412 invoked by alias); 9 Oct 2003 00:50:59 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 20405 invoked from network); 9 Oct 2003 00:50:58 -0000 Received: from unknown (HELO gateway.sf.frob.com) (64.81.54.130) by sources.redhat.com with SMTP; 9 Oct 2003 00:50:58 -0000 Received: from magilla.sf.frob.com (magilla.sf.frob.com [198.49.250.228]) by gateway.sf.frob.com (Postfix) with ESMTP id 668B2357B; Wed, 8 Oct 2003 17:50:57 -0700 (PDT) Received: from magilla.sf.frob.com (localhost.localdomain [127.0.0.1]) by magilla.sf.frob.com (8.12.9/8.12.9) with ESMTP id h990ovN2012594; Wed, 8 Oct 2003 17:50:57 -0700 Received: (from roland@localhost) by magilla.sf.frob.com (8.12.9/8.12.9/Submit) id h990ovoA012590; Wed, 8 Oct 2003 17:50:57 -0700 Date: Thu, 09 Oct 2003 00:50:00 -0000 Message-Id: <200310090050.h990ovoA012590@magilla.sf.frob.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit From: Roland McGrath To: Elena Zannoni Cc: gdb-patches@sources.redhat.com Subject: Re: unwind support for Linux 2.6 vsyscall DSO In-Reply-To: Elena Zannoni's message of Wednesday, 8 October 2003 19:21:22 -0400 <16260.39922.386746.598097@localhost.redhat.com> X-Antipastobozoticataclysm: Bariumenemanilow X-SW-Source: 2003-10/txt/msg00283.txt.bz2 > I think so, on Solaris some of the AT_* values in don't > match those in on linux and those in > gdb/../include/elf/elf.h. The AT_SYSINFO_EHDR seems to be 33 on all of > those, but other values are different. If we want to extend the auxv > handling to recognize more types, we may run into problems. Perhaps you overlooked my explanation of all this on Monday: However, the AT_* values (except for AT_NULL==0) are neither standardized nor de facto reliably the same across operating systems (they are part of the SVR4 ABI spec for each processor I believe). The values in include/elf/common.h are copied from glibc's , and are what GNU/Linux uses. Some of the values used on Solaris conflict, though Sun seems to have taken to using AT_SUN_* names and values >=2000 for recent additions and so it now seems unlikely they will use values 32 or 33 and thus risk false matches with the Linux AT_SYSINFO_EHDR tag. (FYI, NetBSD's elf.h header has all of Sun's values and no GNU/Linux values; however NetBSD itself uses only the tags <10 which in fact match exactly everywhere.) Any use of auxv tags will always be OS-specific. There is no universal generic set to translate them to or anything like that. The fact that there is an aux vector in a given format with tags and values is common code worth sharing across platforms, but that is all.