From owner-cvs-all Tue May 28 23: 6: 2 2002 Delivered-To: cvs-all@freebsd.org Received: from critter.freebsd.dk (critter.freebsd.dk [212.242.86.163]) by hub.freebsd.org (Postfix) with ESMTP id 2A9B537B401; Tue, 28 May 2002 23:05:55 -0700 (PDT) Received: from critter.freebsd.dk (localhost [127.0.0.1]) by critter.freebsd.dk (8.12.3/8.12.2) with ESMTP id g4T64oQW010218; Wed, 29 May 2002 08:04:50 +0200 (CEST) (envelope-from phk@critter.freebsd.dk) To: Marcel Moolenaar Cc: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG Subject: Re: cvs commit: src/sys/sys gpt.h In-Reply-To: Your message of "Tue, 28 May 2002 22:36:53 PDT." <20020529053653.GA306@dhcp01.pn.xcllnt.net> Date: Wed, 29 May 2002 08:04:50 +0200 Message-ID: <10217.1022652290@critter.freebsd.dk> From: Poul-Henning Kamp Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG In message <20020529053653.GA306@dhcp01.pn.xcllnt.net>, Marcel Moolenaar writes : >On Wed, May 29, 2002 at 07:09:21AM +0200, Poul-Henning Kamp wrote: >> In message <200205290258.g4T2wgF83137@freefall.freebsd.org>, Marcel Moolenaar w >> rites: >> >marcel 2002/05/28 19:58:41 PDT >> > >> > Modified files: >> > sys/sys gpt.h >> > Log: >> > Add attribute packed to struct gpt_hdr to avoid unwanted padding at >> > the end of the struct to make it an integral number of "longs" on >> > 64-bit architectures. The size of the struct must be 92, not 96. >> >> I think the correct thing to do would be to add a pack/unpack function >> like it is already done in geom_bsd, geom_sun and geom_mbr. That way >> the alignment and wordsize of the local platform doesn't matter. > >I see what you mean, but packing and unpacking is not the problem. It's >sizeof() that's got it wrong. I don't quite understand why sizeof() >would yield a size that's 4 bytes longer than the structure actually >is. It smells like a gcc bug, but I assume for now I'm just missing >something. If you do the packing & unpacking the sizeof doesn't matter... >BTW: the dump of the GPT headers have the wrong size. I can make a new >dump if you want, but you can also change the 12th byte in the GPT >header sectors from 0x60 to 0x5c. I havn't had a second to look at it yet (but Thanks!) -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message