From owner-cvs-all Sat Dec 14 12:25:35 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 492D637B401; Sat, 14 Dec 2002 12:25:34 -0800 (PST) Received: from salmon.maths.tcd.ie (salmon.maths.tcd.ie [134.226.81.11]) by mx1.FreeBSD.org (Postfix) with SMTP id E975643E4A; Sat, 14 Dec 2002 12:25:32 -0800 (PST) (envelope-from iedowse@maths.tcd.ie) Received: from walton.maths.tcd.ie by salmon.maths.tcd.ie with SMTP id ; 14 Dec 2002 20:25:29 +0000 (GMT) To: Kirk McKusick Cc: Jake Burkholder , cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/ufs/ufs inode.h src/sys/sys conf.h src/sys/ufs/ffs ffs_snapshot.c In-Reply-To: Your message of "Sat, 14 Dec 2002 11:42:21 PST." <200212141942.gBEJgL59011922@beastie.mckusick.com> Date: Sat, 14 Dec 2002 20:25:28 +0000 From: Ian Dowse Message-ID: <200212142025.aa99706@salmon.maths.tcd.ie> 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 <200212141942.gBEJgL59011922@beastie.mckusick.com>, Kirk McKusick wr ites: >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. Yes, making a union with i_dirhash sounds reasonable. The code in ufs_reclaim() will need to check the inode type before calling ufsdirhash_free(), assuming that the inode type is still available then, and we need to also guarantee that the pointer is NULL after an inode gets recycled. Note that a UFS1 inode currently consumes something like 550 bytes on the i386 when you count the vnode and the dinode, which is why I said that the difference is marginal. There would be a more significant saving possible by moving all of the directory-specific fields to a separate structure linked by a pointer. However fixing the brokenness on 64-bit platforms is obviously far more important now. Ian To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message