stripe: remove unused param, handle mem alloc failure

Change-Id: I9c27b1edab111031ca8eea9cc49480ea01e39089
BUG: 1002207
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
Reviewed-on: http://review.gluster.org/5716
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
This commit is contained in:
Kaleb S. KEITHLEY 2013-08-28 22:43:41 +05:30 committed by Anand Avati
parent bbcdbd8c36
commit b880b6b290
3 changed files with 57 additions and 3 deletions

View File

@ -148,7 +148,7 @@ char * gf_strdup (const char *src)
}
static inline void *
gf_memdup (const void *src, void *dst, size_t size)
gf_memdup (const void *src, size_t size)
{
void *dup_mem = NULL;

54
tests/bugs/bug-1002207.t Normal file
View File

@ -0,0 +1,54 @@
#!/bin/bash
. $(dirname $0)/../include.rc
. $(dirname $0)/../volume.rc
cleanup;
## Start and create a volume
TEST glusterd;
TEST pidof glusterd;
TEST $CLI volume create $V0 stripe 2 $H0:$B0/${V0}{1,2,3,4,5,6,7,8};
## Verify volume is is created
EXPECT "$V0" volinfo_field $V0 'Volume Name';
EXPECT 'Created' volinfo_field $V0 'Status';
## Start volume and verify
TEST $CLI volume start $V0;
EXPECT 'Started' volinfo_field $V0 'Status';
dd if=/dev/zero of=$M0/file$i.data bs=1024 count=1024 1>/dev/null 2>&1
function xattr_query_check()
{
local path=$1
local xa_name=$2
local ret=`getfattr -m . -n $xa_name $path 2>&1 | grep -o "$xa_name: No such attribute" | wc -l`
echo $ret
}
function set_xattr()
{
local path=$1
local xa_name=$2
local xa_val=$3
setfattr -n $xa_name -v $xa_val $path
echo $?
}
EXPECT 0 set_xattr $M0/file$i.data "trusted.name" "testofafairlylongxattrstringthatbutnotlongenoughtofailmemoryallocation"
EXPECT 0 xattr_query_check $M0/file$i.data "trusted.name"
## Finish up
TEST $CLI volume stop $V0;
EXPECT 'Stopped' volinfo_field $V0 'Status';
TEST $CLI volume delete $V0;
TEST ! $CLI volume info $V0;
cleanup;

View File

@ -5199,10 +5199,10 @@ stripe_vgetxattr_cbk (call_frame_t *frame, void *cookie,
xattr->pos = cky;
xattr->xattr_value = gf_memdup (xattr_val,
xattr->xattr_value,
xattr->xattr_len);
local->xattr_total_len += xattr->xattr_len + 1;
if (xattr->xattr_value != NULL)
local->xattr_total_len += xattr->xattr_len + 1;
}
}
out: