From 61b09562b934b53dadcd566f6feb72301097933c Mon Sep 17 00:00:00 2001 From: Pranith Kumar K Date: Thu, 11 Jul 2013 12:52:11 +0530 Subject: mount/fuse: Provide option to use/not use kernel-readdirp By default fuse kernel readdirp usage in fuse xlator is off. When mount option use-readdirp=yes is provided it starts using fuse-kernel's readdirp. Change-Id: Id37edc53b1adc1638186d956c2f74c1e4e48aa59 BUG: 983477 Signed-off-by: Pranith Kumar K Reviewed-on: http://review.gluster.org/5322 Tested-by: Gluster Build System Reviewed-by: Raghavendra Bhat Reviewed-by: Vijay Bellur --- tests/bugs/bug-983477.t | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100755 tests/bugs/bug-983477.t (limited to 'tests/bugs/bug-983477.t') diff --git a/tests/bugs/bug-983477.t b/tests/bugs/bug-983477.t new file mode 100755 index 00000000..dfb0f381 --- /dev/null +++ b/tests/bugs/bug-983477.t @@ -0,0 +1,45 @@ +#!/bin/bash + +. $(dirname $0)/../include.rc +. $(dirname $0)/../volume.rc + +#This script checks if use-readdirp option works as accepted in mount options + +function get_use_readdirp_value { + local vol=$1 + local statedump=$(generate_mount_statedump $vol) + local val=$(grep "use_readdirp=" $statedump | cut -f2 -d'=' | tail -1) + rm -f $statedump + echo $val +} +cleanup; + +TEST glusterd +TEST pidof glusterd +TEST $CLI volume create $V0 $H0:$B0/${V0} +TEST $CLI volume start $V0 +#If readdirp is enabled statedump should reflect it +TEST glusterfs --volfile-id=/$V0 --volfile-server=$H0 $M0 --attribute-timeout=0 --entry-timeout=0 --use-readdirp=yes +TEST cd $M0 +EXPECT_WITHIN 20 "1" get_use_readdirp_value $V0 +TEST cd - +TEST umount $M0 + +#If readdirp is enabled statedump should reflect it +TEST glusterfs --volfile-id=/$V0 --volfile-server=$H0 $M0 --attribute-timeout=0 --entry-timeout=0 --use-readdirp=no +TEST cd $M0 +EXPECT_WITHIN 20 "0" get_use_readdirp_value $V0 +TEST cd - +TEST umount $M0 + +#By default it is disabled. +TEST glusterfs --volfile-id=/$V0 --volfile-server=$H0 $M0 --attribute-timeout=0 --entry-timeout=0 +TEST cd $M0 +EXPECT_WITHIN 20 "0" get_use_readdirp_value $V0 +TEST cd - +TEST umount $M0 + +#Invalid values for use-readdirp should not be accepted +TEST ! glusterfs --volfile-id=/$V0 --volfile-server=$H0 $M0 --attribute-timeout=0 --entry-timeout=0 --use-readdirp=please-fail + +cleanup -- cgit