Driver core: Fix cleanup when failing device_add().
[wrt350n-kernel.git] / Documentation / aoe / mkshelf.sh
blob32615814271cce1f90e6be56d5a26eb15c12de3d
1 #! /bin/sh
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
15 set -e
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
26 minor=`expr $minor + 1`
27 done
28 done