From owner-freebsd-arch@FreeBSD.ORG Wed May 4 22:30:32 2005 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 834EB16A4CE; Wed, 4 May 2005 22:30:32 +0000 (GMT) Received: from canning.wemm.org (canning.wemm.org [192.203.228.65]) by mx1.FreeBSD.org (Postfix) with ESMTP id 53D5143D6E; Wed, 4 May 2005 22:30:32 +0000 (GMT) (envelope-from peter@wemm.org) Received: from fw.wemm.org (canning.wemm.org [192.203.228.65]) by canning.wemm.org (Postfix) with ESMTP id D434A2A8DA; Wed, 4 May 2005 15:29:38 -0700 (PDT) (envelope-from peter@wemm.org) Received: from overcee.wemm.org (overcee.wemm.org [10.0.0.3]) by fw.wemm.org (Postfix) with ESMTP id 71832E2B3; Wed, 4 May 2005 15:29:38 -0700 (PDT) (envelope-from peter@wemm.org) Received: from overcee.wemm.org (localhost [127.0.0.1]) by overcee.wemm.org (8.13.3/8.13.1) with ESMTP id j44MTbBm055338; Wed, 4 May 2005 15:29:37 -0700 (PDT) (envelope-from peter@wemm.org) Received: from localhost (localhost [[UNIX: localhost]]) by overcee.wemm.org (8.13.3/8.13.1/Submit) id j44MTaBg055337; Wed, 4 May 2005 15:29:36 -0700 (PDT) (envelope-from peter@wemm.org) X-Authentication-Warning: overcee.wemm.org: peter set sender to peter@wemm.org using -f From: Peter Wemm To: freebsd-arch@freebsd.org Date: Wed, 4 May 2005 15:29:36 -0700 User-Agent: KMail/1.8 References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200505041529.36826.peter@wemm.org> cc: arch@freebsd.org cc: standards@freebsd.org cc: current@freebsd.org Subject: Re: [CFR] correct type of addrinfo.ai_addrlen and netent.n_net X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 May 2005 22:30:32 -0000 On Tuesday 03 May 2005 11:44 am, Hajimu UMEMOTO wrote: > To accomodate for this while preserving ABI compatibility with the > old interface, we need to prepend or append 32 bits of padding, > depending on the (LP64) architecture's endianness. I wish to delete > these padding before 6.0-RELEASE. Like David Schultz said, it would be better to use the machine/endian.h macros to set the padding position. As far as removing the padding goes, it makes little difference whether you break it now or later. Doing it now will be painful. Doing it before 6.0-REL will be just as painful. Not only is this encoded in libc.so.6, but all applications and shared libraries that have exposure to this also know it. For example, if libc.so.6 has the padding and libc.so.5 does not, and if we provide libfoo.so.1 on both 5.x and 6.x, *and* if libfoo.so.1 knows the layout of netdb.h, then it has to be bumped too. This includes all ports with shared libraries that use this #include. Otherwise running apps linked with libc.so.5 will get memory corruption. I think it would be better to leave the padding, again conditional on machine/endian.h. -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com "All of this is for nothing if we don't go to the stars" - JMS/B5