Date: Fri, 7 Nov 2014 08:31:00 +0100 From: Borja Marcos <borjam@sarenet.es> To: Steven Hartland <killing@multiplay.co.uk> Cc: freebsd-fs@freebsd.org Subject: Re: ZFS bug: was creating ZIL ignores vfs.zfs.min_auto_ashift, should be ZIL sets improper ashift with AHCI controllers Message-ID: <757B9039-8DF0-4E6A-A036-82A2143D7F45@sarenet.es> In-Reply-To: <545BE3E0.4030203@multiplay.co.uk> References: <B731A922-3F83-4D8E-A4EA-22C5CA8A3850@sarenet.es> <9C91F97841BC4347910F206618BAA3BB9AF327D1@PAIMAIL.pai.local> <545B76EF.6050709@multiplay.co.uk> <21D2A3A9-B6C1-458F-B17F-480251E999AE@sarenet.es> <545BE3E0.4030203@multiplay.co.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
On Nov 6, 2014, at 10:10 PM, Steven Hartland wrote:
> On 06/11/2014 14:58, Borja Marcos wrote:
> Ok narrowed down the issue, looks like cache file generation is where =
the issue is, possibly a race condition.
Hmm and you mentioned a boot pool and a not boot pool. Certainly, that's =
another difference :/ I wrongly blamed the
controlled difference because I directly suspected the quirks mechanism.
> If you run the following then rerun your zdb I suspect you'll get the =
right results (ashift: 12)
> zpool set cachefile=3D'' <pool>
>=20
> Alternatively you can run the following to display real pool config vs =
that which is in the cache file:
> zdb -C <pool>
Let's see
# zpool add rpool log ada1
# zdb|fgrep ashift
ashift: 12
ashift: 9
ada1 at ahcich1 bus 0 scbus1 target 0 lun 0
ada1: <INTEL SSDSA2CT040G3 4PC10362> ATA-8 SATA 2.x device
ada1: Serial Number PEPR408501DV040AGN
ada1: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
ada1: Command Queueing enabled
ada1: 38166MB (78165360 512 byte sectors: 16H 63S/T 16383C)
ada1: quirks=3D0x1<4K>
And now,
# zdb -C rpool|fgrep ashift
ashift: 12
ashift: 12
You are right!
This time I had not altered min_auto_ashift but I had added a quirk to =
ata_da.c. So it
correctly used the quirk sector size to adjust ashift.=20
Seems the bug should be "improper cache file generation for a pool used =
for boot". I'll
see if I can run some more tests.
Thanks!
Borja.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?757B9039-8DF0-4E6A-A036-82A2143D7F45>
