aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEd Cashin <ecashin@coraid.com>2012-10-04 20:16:49 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-10-05 14:05:30 -0400
commit5b8c4be381a81617b60488ac3bd1b3e5cda32218 (patch)
tree819879dc69962d7f73f9a97aa11e0e11c8ceeb16
parent1ac9e602625817b0c16cc70ea496875f7bd58a4d (diff)
aoe: update documentation to better reflect aoe-plus-udev usage
Signed-off-by: Ed Cashin <ecashin@coraid.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--Documentation/aoe/aoe.txt49
-rw-r--r--Documentation/aoe/mkdevs.sh41
-rw-r--r--Documentation/aoe/mkshelf.sh28
-rw-r--r--Documentation/aoe/status.sh3
4 files changed, 35 insertions, 86 deletions
diff --git a/Documentation/aoe/aoe.txt b/Documentation/aoe/aoe.txt
index b3e47560346a..bfc9cb19abcd 100644
--- a/Documentation/aoe/aoe.txt
+++ b/Documentation/aoe/aoe.txt
@@ -1,3 +1,8 @@
1ATA over Ethernet is a network protocol that provides simple access to
2block storage on the LAN.
3
4 http://support.coraid.com/documents/AoEr11.txt
5
1The EtherDrive (R) HOWTO for 2.6 and 3.x kernels is found at ... 6The EtherDrive (R) HOWTO for 2.6 and 3.x kernels is found at ...
2 7
3 http://support.coraid.com/support/linux/EtherDrive-2.6-HOWTO.html 8 http://support.coraid.com/support/linux/EtherDrive-2.6-HOWTO.html
@@ -26,20 +31,12 @@ CREATING DEVICE NODES
26 There is a udev-install.sh script that shows how to install these 31 There is a udev-install.sh script that shows how to install these
27 rules on your system. 32 rules on your system.
28 33
29 If you are not using udev, two scripts are provided in
30 Documentation/aoe as examples of static device node creation for
31 using the aoe driver.
32
33 rm -rf /dev/etherd
34 sh Documentation/aoe/mkdevs.sh /dev/etherd
35
36 ... or to make just one shelf's worth of block device nodes ...
37
38 sh Documentation/aoe/mkshelf.sh /dev/etherd 0
39
40 There is also an autoload script that shows how to edit 34 There is also an autoload script that shows how to edit
41 /etc/modprobe.d/aoe.conf to ensure that the aoe module is loaded when 35 /etc/modprobe.d/aoe.conf to ensure that the aoe module is loaded when
42 necessary. 36 necessary. Preloading the aoe module is preferable to autoloading,
37 however, because AoE discovery takes a few seconds. It can be
38 confusing when an AoE device is not present the first time the a
39 command is run but appears a second later.
43 40
44USING DEVICE NODES 41USING DEVICE NODES
45 42
@@ -54,9 +51,9 @@ USING DEVICE NODES
54 "echo > /dev/etherd/discover" tells the driver to find out what AoE 51 "echo > /dev/etherd/discover" tells the driver to find out what AoE
55 devices are available. 52 devices are available.
56 53
57 These character devices may disappear and be replaced by sysfs 54 In the future these character devices may disappear and be replaced
58 counterparts. Using the commands in aoetools insulates users from 55 by sysfs counterparts. Using the commands in aoetools insulates
59 these implementation details. 56 users from these implementation details.
60 57
61 The block devices are named like this: 58 The block devices are named like this:
62 59
@@ -79,8 +76,8 @@ USING SYSFS
79 The netif attribute is the network interface on the localhost 76 The netif attribute is the network interface on the localhost
80 through which we are communicating with the remote AoE device. 77 through which we are communicating with the remote AoE device.
81 78
82 There is a script in this directory that formats this information 79 There is a script in this directory that formats this information in
83 in a convenient way. Users with aoetools can use the aoe-stat 80 a convenient way. Users with aoetools should use the aoe-stat
84 command. 81 command.
85 82
86 root@makki root# sh Documentation/aoe/status.sh 83 root@makki root# sh Documentation/aoe/status.sh
@@ -124,3 +121,21 @@ DRIVER OPTIONS
124 usage example for the module parameter. 121 usage example for the module parameter.
125 122
126 modprobe aoe_iflist="eth1 eth3" 123 modprobe aoe_iflist="eth1 eth3"
124
125 The aoe_deadsecs module parameter determines the maximum number of
126 seconds that the driver will wait for an AoE device to provide a
127 response to an AoE command. After aoe_deadsecs seconds have
128 elapsed, the AoE device will be marked as "down".
129
130 The aoe_maxout module parameter has a default of 128. This is the
131 maximum number of unresponded packets that will be sent to an AoE
132 target at one time.
133
134 The aoe_dyndevs module parameter defaults to 1, meaning that the
135 driver will assign a block device minor number to a discovered AoE
136 target based on the order of its discovery. With dynamic minor
137 device numbers in use, a greater range of AoE shelf and slot
138 addresses can be supported. Users with udev will never have to
139 think about minor numbers. Using aoe_dyndevs=0 allows device nodes
140 to be pre-created using a static minor-number scheme with the
141 aoe-mkshelf script in the aoetools.
diff --git a/Documentation/aoe/mkdevs.sh b/Documentation/aoe/mkdevs.sh
deleted file mode 100644
index 44c0ab702432..000000000000
--- a/Documentation/aoe/mkdevs.sh
+++ /dev/null
@@ -1,41 +0,0 @@
1#!/bin/sh
2
3n_shelves=${n_shelves:-10}
4n_partitions=${n_partitions:-16}
5
6if 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
10fi
11dir=$1
12
13MAJOR=152
14
15echo "Creating AoE devnode files in $dir ..."
16
17set -e
18
19mkdir -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
24rm -f $dir/err
25mknod -m 0400 $dir/err c $MAJOR 2
26rm -f $dir/discover
27mknod -m 0200 $dir/discover c $MAJOR 3
28rm -f $dir/interfaces
29mknod -m 0200 $dir/interfaces c $MAJOR 4
30rm -f $dir/revalidate
31mknod -m 0200 $dir/revalidate c $MAJOR 5
32rm -f $dir/flush
33mknod -m 0200 $dir/flush c $MAJOR 6
34
35export n_partitions
36mkshelf=`echo $0 | sed 's!mkdevs!mkshelf!'`
37i=0
38while test $i -lt $n_shelves; do
39 sh -xc "sh $mkshelf $dir $i"
40 i=`expr $i + 1`
41done
diff --git a/Documentation/aoe/mkshelf.sh b/Documentation/aoe/mkshelf.sh
deleted file mode 100644
index 32615814271c..000000000000
--- a/Documentation/aoe/mkshelf.sh
+++ /dev/null
@@ -1,28 +0,0 @@
1#! /bin/sh
2
3if 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
7fi
8n_partitions=${n_partitions:-16}
9dir=$1
10shelf=$2
11nslots=16
12maxslot=`echo $nslots 1 - p | dc`
13MAJOR=152
14
15set -e
16
17minor=`echo $nslots \* $shelf \* $n_partitions | bc`
18endp=`echo $n_partitions - 1 | bc`
19for 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
28done
diff --git a/Documentation/aoe/status.sh b/Documentation/aoe/status.sh
index 751f3be514b8..eeec7baae57a 100644
--- a/Documentation/aoe/status.sh
+++ b/Documentation/aoe/status.sh
@@ -1,5 +1,8 @@
1#! /bin/sh 1#! /bin/sh
2# collate and present sysfs information about AoE storage 2# collate and present sysfs information about AoE storage
3#
4# A more complete version of this script is aoe-stat, in the
5# aoetools.
3 6
4set -e 7set -e
5format="%8s\t%8s\t%8s\n" 8format="%8s\t%8s\t%8s\n"