Date: Tue, 26 Feb 2019 18:35:54 +1100 (EST) From: Bruce Evans <brde@optusnet.com.au> To: Jason Harmening <jason.harmening@gmail.com> Cc: Bruce Evans <brde@optusnet.com.au>, "Jason A. Harmening" <jah@freebsd.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344562 - head/sys/ufs/ffs Message-ID: <20190226173749.A1863@besplex.bde.org> In-Reply-To: <414d1964-f822-33f2-8177-872a4cbedd13@gmail.com> References: <201902260456.x1Q4uAIu056382@repo.freebsd.org> <20190226162300.M1437@besplex.bde.org> <414d1964-f822-33f2-8177-872a4cbedd13@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 25 Feb 2019, Jason Harmening wrote: > On 2/25/19 9:46 PM, Bruce Evans wrote: >>=20 >> block_size <=3D PAGE_SIZE is very uncommon for ffs, even on systems with= =20 >> large >> pages.=C2=A0 MINBSIZE is 4096 in ffs (except in my version, it is 512).= =C2=A0 The >> default is 32768 in newfs.=C2=A0 I consider this excessive and only use = it for >> file systems with many files larger than 1GB, but it is the most common= =20 >> size. >> It is larger than the large page size of 8192. > > I think this is a case of filesystem logical block size vs. media sector= =20 > size, right? Here we're checking the devvp's block size, which I think= =20 > should correspond to the sector size. I'd expect cases of that being > greater than PAGE_SIZE to be uncommon, in fact geli warns when that is th= e=20 > case. I probably should've made that clearer in the commit message. Yes, I missed that you are checking devvp. ffs_getpages() also checks devvp. So the bug has nothing to do with file system logical (fragment) or i/o (block) block size's, except file systems themselves won't work unless their i/o size is a multiple of the underlying devices (sector) i/o size. Are there physical disk with sector size > PAGE_SIZE now? It is easy to create virtual (md) disks with sector size > PAGE_SIZE, and this may even be useful for avoiding the related problem of having to access large fs blocks to do i/o to small md sectors. I think it is best to use PAGE_SIZE blocks in all layers and sometimes combine these into clusters. Bruce From owner-svn-src-all@freebsd.org Tue Feb 26 07:49:04 2019 Return-Path: <owner-svn-src-all@freebsd.org> Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 076C7150F756; Tue, 26 Feb 2019 07:49:04 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 65D5370A4D; Tue, 26 Feb 2019 07:49:03 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1Q7n1Ah043757; Mon, 25 Feb 2019 23:49:01 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1Q7n1GI043756; Mon, 25 Feb 2019 23:49:01 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" <freebsd@pdx.rh.CN85.dnsmgr.net> Message-Id: <201902260749.x1Q7n1GI043756@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344562 - head/sys/ufs/ffs In-Reply-To: <20190226173749.A1863@besplex.bde.org> To: Bruce Evans <brde@optusnet.com.au> Date: Mon, 25 Feb 2019 23:49:01 -0800 (PST) CC: Jason Harmening <jason.harmening@gmail.com>, "Jason A. Harmening" <jah@freebsd.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UNKNOWN-8BIT X-Rspamd-Queue-Id: 65D5370A4D X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; TAGGED_RCPT(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" <svn-src-all.freebsd.org> List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>, <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe> List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/> List-Post: <mailto:svn-src-all@freebsd.org> List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help> List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>, <mailto:svn-src-all-request@freebsd.org?subject=subscribe> X-List-Received-Date: Tue, 26 Feb 2019 07:49:04 -0000 > On Mon, 25 Feb 2019, Jason Harmening wrote: > > > On 2/25/19 9:46 PM, Bruce Evans wrote: > >> > >> block_size <= PAGE_SIZE is very uncommon for ffs, even on systems with > >> large > >> pages. MINBSIZE is 4096 in ffs (except in my version, it is 512). The > >> default is 32768 in newfs. I consider this excessive and only use it for > >> file systems with many files larger than 1GB, but it is the most common > >> size. > >> It is larger than the large page size of 8192. > > > > I think this is a case of filesystem logical block size vs. media sector > > size, right? Here we're checking the devvp's block size, which I think > > should correspond to the sector size. I'd expect cases of that being > > greater than PAGE_SIZE to be uncommon, in fact geli warns when that is the > > case. I probably should've made that clearer in the commit message. > > Yes, I missed that you are checking devvp. ffs_getpages() also checks > devvp. > > So the bug has nothing to do with file system logical (fragment) or i/o > (block) block size's, except file systems themselves won't work unless > their i/o size is a multiple of the underlying devices (sector) i/o size. > > Are there physical disk with sector size > PAGE_SIZE now? I have been told that there are some sd/flash devices that have a 16k physical sector size, I have not been able to confirm that information though. > It is easy to > create virtual (md) disks with sector size > PAGE_SIZE, and this may even > be useful for avoiding the related problem of having to access large fs > blocks to do i/o to small md sectors. I think it is best to use PAGE_SIZE > blocks in all layers and sometimes combine these into clusters. > > Bruce -- Rod Grimes rgrimes@freebsd.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20190226173749.A1863>