diff options
author | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-22 10:38:37 -0500 |
---|---|---|
committer | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-22 10:38:37 -0500 |
commit | fcc9d2e5a6c89d22b8b773a64fb4ad21ac318446 (patch) | |
tree | a57612d1888735a2ec7972891b68c1ac5ec8faea /Documentation/aoe | |
parent | 8dea78da5cee153b8af9c07a2745f6c55057fe12 (diff) |
Diffstat (limited to 'Documentation/aoe')
-rw-r--r-- | Documentation/aoe/mkdevs.sh | 41 | ||||
-rw-r--r-- | Documentation/aoe/mkshelf.sh | 28 |
2 files changed, 69 insertions, 0 deletions
diff --git a/Documentation/aoe/mkdevs.sh b/Documentation/aoe/mkdevs.sh new file mode 100644 index 00000000000..44c0ab70243 --- /dev/null +++ b/Documentation/aoe/mkdevs.sh | |||
@@ -0,0 +1,41 @@ | |||
1 | #!/bin/sh | ||
2 | |||
3 | n_shelves=${n_shelves:-10} | ||
4 | n_partitions=${n_partitions:-16} | ||
5 | |||
6 | if test "$#" != "1"; then | ||
7 | echo "Usage: sh `basename $0` {dir}" 1>&2 | ||
8 | echo " n_partitions=16 sh `basename $0` {dir}" 1>&2 | ||
9 | exit 1 | ||
10 | fi | ||
11 | dir=$1 | ||
12 | |||
13 | MAJOR=152 | ||
14 | |||
15 | echo "Creating AoE devnode files in $dir ..." | ||
16 | |||
17 | set -e | ||
18 | |||
19 | mkdir -p $dir | ||
20 | |||
21 | # (Status info is in sysfs. See status.sh.) | ||
22 | # rm -f $dir/stat | ||
23 | # mknod -m 0400 $dir/stat c $MAJOR 1 | ||
24 | rm -f $dir/err | ||
25 | mknod -m 0400 $dir/err c $MAJOR 2 | ||
26 | rm -f $dir/discover | ||
27 | mknod -m 0200 $dir/discover c $MAJOR 3 | ||
28 | rm -f $dir/interfaces | ||
29 | mknod -m 0200 $dir/interfaces c $MAJOR 4 | ||
30 | rm -f $dir/revalidate | ||
31 | mknod -m 0200 $dir/revalidate c $MAJOR 5 | ||
32 | rm -f $dir/flush | ||
33 | mknod -m 0200 $dir/flush c $MAJOR 6 | ||
34 | |||
35 | export n_partitions | ||
36 | mkshelf=`echo $0 | sed 's!mkdevs!mkshelf!'` | ||
37 | i=0 | ||
38 | while test $i -lt $n_shelves; do | ||
39 | sh -xc "sh $mkshelf $dir $i" | ||
40 | i=`expr $i + 1` | ||
41 | done | ||
diff --git a/Documentation/aoe/mkshelf.sh b/Documentation/aoe/mkshelf.sh new file mode 100644 index 00000000000..32615814271 --- /dev/null +++ b/Documentation/aoe/mkshelf.sh | |||
@@ -0,0 +1,28 @@ | |||
1 | #! /bin/sh | ||
2 | |||
3 | if test "$#" != "2"; then | ||
4 | echo "Usage: sh `basename $0` {dir} {shelfaddress}" 1>&2 | ||
5 | echo " n_partitions=16 sh `basename $0` {dir} {shelfaddress}" 1>&2 | ||
6 | exit 1 | ||
7 | fi | ||
8 | n_partitions=${n_partitions:-16} | ||
9 | dir=$1 | ||
10 | shelf=$2 | ||
11 | nslots=16 | ||
12 | maxslot=`echo $nslots 1 - p | dc` | ||
13 | MAJOR=152 | ||
14 | |||
15 | set -e | ||
16 | |||
17 | minor=`echo $nslots \* $shelf \* $n_partitions | bc` | ||
18 | endp=`echo $n_partitions - 1 | bc` | ||
19 | for slot in `seq 0 $maxslot`; do | ||
20 | for part in `seq 0 $endp`; do | ||
21 | name=e$shelf.$slot | ||
22 | test "$part" != "0" && name=${name}p$part | ||
23 | rm -f $dir/$name | ||
24 | mknod -m 0660 $dir/$name b $MAJOR $minor | ||
25 | |||
26 | minor=`expr $minor + 1` | ||
27 | done | ||
28 | done | ||