From owner-freebsd-hackers@FreeBSD.ORG Sun Dec 30 19:39:34 2012 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 46CAB6D5 for ; Sun, 30 Dec 2012 19:39:34 +0000 (UTC) (envelope-from freebsd@psconsult.nl) Received: from mx1.psconsult.nl (unknown [IPv6:2001:7b8:30f:e0::5059:ee8a]) by mx1.freebsd.org (Postfix) with ESMTP id E96478FC0A for ; Sun, 30 Dec 2012 19:39:33 +0000 (UTC) Received: from mx1.psconsult.nl (mx1.hvnu.psconsult.nl [46.44.189.154]) by mx1.psconsult.nl (8.14.5/8.14.4) with ESMTP id qBUJdRqK069483 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Sun, 30 Dec 2012 20:39:32 +0100 (CET) (envelope-from freebsd@psconsult.nl) Received: (from paul@localhost) by mx1.psconsult.nl (8.14.5/8.14.4/Submit) id qBUJdQqe069482 for freebsd-hackers@freebsd.org; Sun, 30 Dec 2012 20:39:26 +0100 (CET) (envelope-from freebsd@psconsult.nl) X-Authentication-Warning: mx1.psconsult.nl: paul set sender to freebsd@psconsult.nl using -f Date: Sun, 30 Dec 2012 20:39:26 +0100 From: Paul Schenkeveld To: freebsd-hackers@freebsd.org Subject: Re: UFS1 vs UFS2 Message-ID: <20121230193926.GA37126@psconsult.nl> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 19:39:34 -0000 On Sun, Dec 30, 2012 at 02:21:26PM +0100, Wojciech Puchar wrote: > OpenBSD by default use UFS1 for partitions smaller than 1TB. > > FreeBSD use always UFS2. UFS2 uses double the amount of space for inodes. > basic operation seems the same. > > Does it make sense to use UFS1 for small filesystem (on SSD) that would > have few millions of files. It will take less space for inodes, but how > about performance? UFS2 became necessary when disk got bigger and sizes and block pointers in metadata on UFS1 became too small to fully utilize the larger disks. Because of the larger sizes and pointers UFS2 broke binary compatibility with UFS1 unavoidably, the switch to UFS2 opened the way for other binary incompatilble enhancements to the file system like inode birth times and extended attributes (used by ACL's for example). It makes perfect sense to use UFS1 on systems where space savings matter unless your application requires any of the new features that are not present in UFS1. Nanobsd(8) for example uses UFS1 by default too. HTH Paul Schenkeveld