ZFS how to find out if ZIL is currently enabled?
Ivan Voras
ivoras at freebsd.org
Thu Jul 28 12:49:29 UTC 2011
On 28 July 2011 14:24, Andriy Gapon <avg at freebsd.org> wrote:
> on 28/07/2011 14:32 Ivan Voras said the following:
>> Grepping for "zil" in sysctls doesn't give anything useful:
>>
>> # sysctl -a | grep zil
>> vfs.zfs.zil_replay_disable: 0
>>
>> (its description is "Disable intent logging replay" so it looks like a
>> crash recovery option)
>>
>> ... so is there a way to find out if ZIL is enabled?
>>
>> I can look at kenv but for some reason I can't trust its value right now.
>
> Here is a hammer: kgdb.
> But perhaps there is a more suitable tool :)
Hmmm, no, it looks like the zil_disable code is missing in the latest
8-stable! This confirmes what I noticed in operation and why I didn't
trust kenv.
>From the various csup dates I have on the servers it looks like it's
been removed somewhere between April and now, possibly with ZFS 28
MFC?
I.e. this code is missing:
*:/sys> grep -rn zil_disable *
cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil.h:382:extern int zil_disable;
cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c:897: if
(zil_disable) {
cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c:69:int zil_disable =
0; /* disable intent logging */
cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c:71:TUNABLE_INT("vfs.zfs.zil_disable",
&zil_disable);
cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c:72:SYSCTL_INT(_vfs_zfs,
OID_AUTO, zil_disable, CTLFLAG_RW, &zil_disable, 0,
cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c:450: if
(bp->bio_cmd == BIO_FLUSH && !zil_disable)
Any ideas?
More information about the freebsd-fs
mailing list