From: Isaac Huang Date: Tue, 22 Jul 2014 22:42:03 +0000 (-0600) Subject: LU-5391 osd-zfs: ZAP object block sizes too small X-Git-Tag: 2.6.52~28 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=refs%2Fchanges%2F82%2F11182%2F3;p=fs%2Flustre-release.git LU-5391 osd-zfs: ZAP object block sizes too small Currently osd-zfs ZAP objects use 4K for both leaf and indirect blocks. This patch increases: - leaf block to 16K, which equals ZFS fzap_default_block_shift - indirect block to 16K, the default used by ZPL directories Signed-off-by: Isaac Huang Change-Id: I5b476414d27822a14afb25e1307991fbd2e3a59e Reviewed-on: http://review.whamcloud.com/11182 Tested-by: Jenkins Reviewed-by: Andreas Dilger Tested-by: Maloo Reviewed-by: Mike Pershin Reviewed-by: Oleg Drokin --- diff --git a/lustre/osd-zfs/osd_object.c b/lustre/osd-zfs/osd_object.c index 8ea9116..e4a2649 100644 --- a/lustre/osd-zfs/osd_object.c +++ b/lustre/osd-zfs/osd_object.c @@ -1288,7 +1288,9 @@ int __osd_zap_create(const struct lu_env *env, udmu_objset_t *uos, LASSERT(tx->tx_txg != 0); oid = zap_create_flags(uos->os, 0, flags | ZAP_FLAG_HASH64, - DMU_OT_DIRECTORY_CONTENTS, 12, 12, + DMU_OT_DIRECTORY_CONTENTS, + 14, /* == ZFS fzap_default_block_shift */ + DN_MAX_INDBLKSHIFT, /* indirect block shift */ DMU_OT_SA, DN_MAX_BONUSLEN, tx); rc = -sa_buf_hold(uos->os, oid, tag, zap_dbp);