X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=module%2Fzfs%2Fzil.c;h=8aa811db2ef9f59d228f002f95e0d49cd8edb1b0;hb=1ef5e8296a07a0d208d0663ae966c8b0206f7e6a;hp=ad11fd6c63571b1ebcb8ceb8d47ca44f4518d6cb;hpb=00b46022c676e402e3f33ce93ee2983bbad2c46f;p=zfs.git diff --git a/module/zfs/zil.c b/module/zfs/zil.c index ad11fd6..8aa811d 100644 --- a/module/zfs/zil.c +++ b/module/zfs/zil.c @@ -74,7 +74,7 @@ int zil_replay_disable = 0; /* disable intent logging replay */ * zfs_nocacheflush will cause corruption on power loss if a volatile * out-of-order write cache is enabled. */ -boolean_t zfs_nocacheflush = B_FALSE; +int zfs_nocacheflush = 0; static kmem_cache_t *zil_lwb_cache; @@ -1075,7 +1075,8 @@ zil_itx_create(uint64_t txtype, size_t lrsize) lrsize = P2ROUNDUP_TYPED(lrsize, sizeof (uint64_t), size_t); - itx = kmem_alloc(offsetof(itx_t, itx_lr) + lrsize, KM_SLEEP|KM_NODEBUG); + itx = kmem_alloc(offsetof(itx_t, itx_lr) + lrsize, + KM_PUSHPAGE | KM_NODEBUG); itx->itx_lr.lrc_txtype = txtype; itx->itx_lr.lrc_reclen = lrsize; itx->itx_sod = lrsize; /* if write & WR_NEED_COPY will be increased */ @@ -1994,3 +1995,11 @@ zil_vdev_offline(const char *osname, void *arg) dmu_objset_rele(os, FTAG); return (error); } + +#if defined(_KERNEL) && defined(HAVE_SPL) +module_param(zil_replay_disable, int, 0644); +MODULE_PARM_DESC(zil_replay_disable, "Disable intent logging replay"); + +module_param(zfs_nocacheflush, int, 0644); +MODULE_PARM_DESC(zfs_nocacheflush, "Disable cache flushes"); +#endif