From owner-cvs-all Sat Dec 14 11:42:24 2002 Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D43C537B401; Sat, 14 Dec 2002 11:42:22 -0800 (PST) Received: from beastie.mckusick.com (beastie.mckusick.com [209.31.233.184]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6BD2E43EC2; Sat, 14 Dec 2002 11:42:22 -0800 (PST) (envelope-from mckusick@beastie.mckusick.com) Received: from beastie.mckusick.com (localhost [127.0.0.1]) by beastie.mckusick.com (8.12.3/8.12.3) with ESMTP id gBEJgL59011922; Sat, 14 Dec 2002 11:42:21 -0800 (PST) (envelope-from mckusick@beastie.mckusick.com) Message-Id: <200212141942.gBEJgL59011922@beastie.mckusick.com> To: Ian Dowse Subject: Re: cvs commit: src/sys/ufs/ufs inode.h src/sys/sys conf.h src/sys/ufs/ffs ffs_snapshot.c Cc: Jake Burkholder , cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org In-Reply-To: Your message of "Sat, 14 Dec 2002 16:56:07 GMT." <200212141656.aa51164@salmon.maths.tcd.ie> Date: Sat, 14 Dec 2002 11:42:21 -0800 From: Kirk McKusick 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 To: Jake Burkholder cc: Kirk McKusick , cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/ufs/ufs inode.h ... In-Reply-To: Your message of "Sat, 14 Dec 2002 03:16:31 EST." <20021214031631.D93389@locore.ca> Date: Sat, 14 Dec 2002 16:56:07 +0000 From: Ian Dowse X-ASK-Info: Whitelist match In message <20021214031631.D93389@locore.ca>, Jake Burkholder writes: >Apparently, On Fri, Dec 13, 2002 at 05:37:00PM -0800, > >This tries to stuff a pointer into a 32 bit integer. > >+ ((daddr_t *)(ip->i_offset)) = &snapblklist[1]; > >Please find a field that is wide enough to hold a pointer on >all platforms. How about just putting back the i_snapblklist field into struct inode for now? I suppose we could eventually use a union with the directory modification state fields, though the size reduction is fairly marginal. Patch below - sorry, this is completely untested. Ian I understand the size issue. How about we form a union with the *i_dirhash pointer since directories and snapshots are never going to overlap. There are thousands of inodes allocated and it seems really wasteful to carry an extra pointer around as a temporary variable that is rarely used. Kirk McKusick To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message