aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFengguang Wu <fengguang.wu@intel.com>2013-09-19 17:13:22 +0800
committerFengguang Wu <fengguang.wu@intel.com>2013-09-29 12:15:44 +0800
commit76eb72a6be2209b2996df88d86ef30c9b8ba9f22 (patch)
tree73ff46f434d371cc3040d1a269158f4fc965e781
parentbd35a918574292567aa8fd81a778101c66fe741e (diff)
downloadvm-scalability-76eb72a6be2209b2996df88d86ef30c9b8ba9f22.tar.gz
fix bus error in shm test cases
Signed-off-by: Fengguang Wu <fengguang.wu@intel.com>
-rwxr-xr-xcase-000-shm4
-rwxr-xr-xcase-000-shm-clean7
-rwxr-xr-xcase-lru-shm4
-rwxr-xr-xcase-lru-shm-rand4
-rwxr-xr-xcase-shm-lock-unlock4
-rwxr-xr-xcase-shm-pread-rand4
-rwxr-xr-xcase-shm-pread-rand-mt4
-rwxr-xr-xcase-shm-pread-seq4
-rwxr-xr-xcase-shm-pread-seq-mt4
-rwxr-xr-xcase-shm-xread-rand4
-rwxr-xr-xcase-shm-xread-rand-mt4
-rwxr-xr-xcase-shm-xread-seq4
-rwxr-xr-xcase-shm-xread-seq-mt4
-rwxr-xr-xhw_vars2
14 files changed, 28 insertions, 29 deletions
diff --git a/case-000-shm b/case-000-shm
index 1ac359e..c746cc0 100755
--- a/case-000-shm
+++ b/case-000-shm
@@ -4,8 +4,8 @@
source ./hw_vars
-create_sparse_file /dev/shm/XXX $((mem/3))
+create_sparse_file /dev/shm/XXX $shm_size
-$USEMEM -f /dev/shm/XXX $((mem/3)) --detach --sleep 100000 --pid-file $PIDFILE
+$USEMEM -f /dev/shm/XXX $((shm_size / 3)) --detach --sleep 100000 --pid-file $PIDFILE
rm /dev/shm/XXX
diff --git a/case-000-shm-clean b/case-000-shm-clean
index 2386556..a23f60d 100755
--- a/case-000-shm-clean
+++ b/case-000-shm-clean
@@ -4,11 +4,8 @@
source ./hw_vars
-size=$((mem / 3))
-size=$((mem))
+create_sparse_file /dev/shm/XXX $shm_size
-create_sparse_file /dev/shm/XXX $size
-
-$USEMEM -f /dev/shm/XXX $size --readonly --detach --sleep 100000 --pid-file $PIDFILE
+$USEMEM -f /dev/shm/XXX $((shm_size / 3)) --readonly --detach --sleep 100000 --pid-file $PIDFILE
rm /dev/shm/XXX
diff --git a/case-lru-shm b/case-lru-shm
index 53889cf..0e43bd5 100755
--- a/case-lru-shm
+++ b/case-lru-shm
@@ -14,8 +14,8 @@ source ./hw_vars
for i in `seq 1 $nr_cpu`
do
- create_sparse_file $SHM_FILE-$i $((10 * mem))
- $USEMEM -f $SHM_FILE-$i --readonly $((10 * mem / nr_cpu)) &
+ create_sparse_file $SHM_FILE-$i $shm_size
+ $USEMEM -f $SHM_FILE-$i --readonly $((shm_size / nr_cpu / 2)) &
done
wait
diff --git a/case-lru-shm-rand b/case-lru-shm-rand
index 2f0297c..bc8aefa 100755
--- a/case-lru-shm-rand
+++ b/case-lru-shm-rand
@@ -10,8 +10,8 @@ source ./hw_vars
for i in `seq 1 $nr_cpu`
do
- create_sparse_file $SHM_FILE-$i $((10 * mem))
- $USEMEM -f $SHM_FILE-$i --readonly --random $((10 * mem / nr_cpu)) &
+ create_sparse_file $SHM_FILE-$i $shm_size
+ $USEMEM -f $SHM_FILE-$i --readonly --random $((shm_size / nr_cpu / 2)) &
done
wait
diff --git a/case-shm-lock-unlock b/case-shm-lock-unlock
index 69c7f79..9cd322f 100755
--- a/case-shm-lock-unlock
+++ b/case-shm-lock-unlock
@@ -11,12 +11,12 @@
source ./hw_vars
#segment size being requested
-SHM_SIZE=$(((mem / nr_cpu) / 10))
+SHM_SIZE=$((shm_size / nr_cpu / 2))
#check for max shared memory allowed on system
MAX_SHARE_SEGMENT=$(</proc/sys/kernel/shmmax)
-echo "MAX SEGMENT is $MAX_SHARE_SEGMENT total asking is $((mem / 10))"
+echo "MAX SEGMENT is $MAX_SHARE_SEGMENT total asking is $((shm_size / 2))"
#check to see if the request can be satisfied else exit with error
if [ $MAX_SHARE_SEGMENT -lt $SHM_SIZE ]
diff --git a/case-shm-pread-rand b/case-shm-pread-rand
index 0147040..9a02576 100755
--- a/case-shm-pread-rand
+++ b/case-shm-pread-rand
@@ -2,8 +2,8 @@
source ./hw_vars
-create_sparse_file $SHM_FILE $((mem / 2))
+create_sparse_file $SHM_FILE $shm_size
-$USEMEM -n $nr_cpu -f $SHM_FILE --readonly --random $((mem / 2))
+$USEMEM -n $nr_cpu -f $SHM_FILE --readonly --random $((shm_size / 2))
rm $SHM_FILE
diff --git a/case-shm-pread-rand-mt b/case-shm-pread-rand-mt
index 336bb11..073de07 100755
--- a/case-shm-pread-rand-mt
+++ b/case-shm-pread-rand-mt
@@ -2,8 +2,8 @@
source ./hw_vars
-create_sparse_file $SHM_FILE $mem
+create_sparse_file $SHM_FILE $shm_size
-$USEMEM -t $nr_cpu -f $SHM_FILE --readonly --random $((mem / 2))
+$USEMEM -t $nr_cpu -f $SHM_FILE --readonly --random $((shm_size / 2))
rm $SHM_FILE
diff --git a/case-shm-pread-seq b/case-shm-pread-seq
index b28efb2..c32c525 100755
--- a/case-shm-pread-seq
+++ b/case-shm-pread-seq
@@ -2,8 +2,8 @@
source ./hw_vars
-create_sparse_file $SHM_FILE $((mem / 2))
+create_sparse_file $SHM_FILE $shm_size
-$USEMEM -n $nr_cpu -f $SHM_FILE --readonly $((mem / 2))
+$USEMEM -n $nr_cpu -f $SHM_FILE --readonly $((shm_size / 2))
rm $SHM_FILE
diff --git a/case-shm-pread-seq-mt b/case-shm-pread-seq-mt
index e8f1a66..ab43968 100755
--- a/case-shm-pread-seq-mt
+++ b/case-shm-pread-seq-mt
@@ -2,8 +2,8 @@
source ./hw_vars
-create_sparse_file $SHM_FILE $mem
+create_sparse_file $SHM_FILE $shm_size
-$USEMEM -t $nr_cpu -f $SHM_FILE --readonly $((mem / 2))
+$USEMEM -t $nr_cpu -f $SHM_FILE --readonly $((shm_size / 2))
rm $SHM_FILE
diff --git a/case-shm-xread-rand b/case-shm-xread-rand
index ba958d8..5cae1b7 100755
--- a/case-shm-xread-rand
+++ b/case-shm-xread-rand
@@ -2,8 +2,8 @@
source ./hw_vars
-create_sparse_file $SHM_FILE $((mem / 2))
+create_sparse_file $SHM_FILE $shm_size
-$USEMEM -n $nr_cpu -f $SHM_FILE --prealloc --readonly --random $((mem / 2))
+$USEMEM -n $nr_cpu -f $SHM_FILE --prealloc --readonly --random $((shm_size / 2))
rm $SHM_FILE
diff --git a/case-shm-xread-rand-mt b/case-shm-xread-rand-mt
index 8922c3c..bab3b80 100755
--- a/case-shm-xread-rand-mt
+++ b/case-shm-xread-rand-mt
@@ -2,8 +2,8 @@
source ./hw_vars
-create_sparse_file $SHM_FILE $mem
+create_sparse_file $SHM_FILE $shm_size
-$USEMEM -t $nr_cpu -f $SHM_FILE --prealloc --readonly --random $((mem / 2))
+$USEMEM -t $nr_cpu -f $SHM_FILE --prealloc --readonly --random $((shm_size / 2))
rm $SHM_FILE
diff --git a/case-shm-xread-seq b/case-shm-xread-seq
index c0c5085..7f78457 100755
--- a/case-shm-xread-seq
+++ b/case-shm-xread-seq
@@ -2,8 +2,8 @@
source ./hw_vars
-create_sparse_file $SHM_FILE $((mem / 2))
+create_sparse_file $SHM_FILE $shm_size
-$USEMEM -n $nr_cpu -f $SHM_FILE --prealloc --readonly $((mem / 2))
+$USEMEM -n $nr_cpu -f $SHM_FILE --prealloc --readonly $((shm_size / 2))
rm $SHM_FILE
diff --git a/case-shm-xread-seq-mt b/case-shm-xread-seq-mt
index 76bc8ff..5f10f37 100755
--- a/case-shm-xread-seq-mt
+++ b/case-shm-xread-seq-mt
@@ -2,8 +2,8 @@
source ./hw_vars
-create_sparse_file $SHM_FILE $mem
+create_sparse_file $SHM_FILE $shm_size
-$USEMEM -t $nr_cpu -f $SHM_FILE --prealloc --readonly $((mem / 2))
+$USEMEM -t $nr_cpu -f $SHM_FILE --prealloc --readonly $((shm_size / 2))
rm $SHM_FILE
diff --git a/hw_vars b/hw_vars
index 41b8534..dfd1ca9 100755
--- a/hw_vars
+++ b/hw_vars
@@ -74,6 +74,8 @@ while read key val unit; do
done < /proc/meminfo
mem=$((MemTotal << 10))
+shm_size=$(/usr/bin/stat -f -c "%b*%S" /dev/shm/)
+shm_size=$((shm_size))
hugepagesize=$((Hugepagesize << 10))
if [[ $ROTATE_BYTES ]]; then