summaryrefslogtreecommitdiffstats
path: root/drivers/block/aoe/aoenet.c
diff options
context:
space:
mode:
authorEd L Cashin <ecashin@coraid.com>2005-04-29 10:24:03 -0400
committerGreg KH <gregkh@suse.de>2005-05-03 23:34:53 -0700
commit03c41c434775c52092d17a5031ad8ebaaf555bc4 (patch)
treea2f4e5f5fef46fac69b1e47e31ccbcf7d950b016 /drivers/block/aoe/aoenet.c
parent8800cea62025a5209d110c5fa5990429239d6eee (diff)
downloadblackbird-op-linux-03c41c434775c52092d17a5031ad8ebaaf555bc4.tar.gz
blackbird-op-linux-03c41c434775c52092d17a5031ad8ebaaf555bc4.zip
[PATCH] aoe: improve allowed interfaces configuration
improve allowed interfaces configuration Signed-off-by: Ed L. Cashin <ecashin@coraid.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> diff -uprN a/Documentation/aoe/aoe.txt b/Documentation/aoe/aoe.txt
Diffstat (limited to 'drivers/block/aoe/aoenet.c')
-rw-r--r--drivers/block/aoe/aoenet.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/drivers/block/aoe/aoenet.c b/drivers/block/aoe/aoenet.c
index bc92aacb6dad..9e6f51c528b0 100644
--- a/drivers/block/aoe/aoenet.c
+++ b/drivers/block/aoe/aoenet.c
@@ -7,6 +7,7 @@
#include <linux/hdreg.h>
#include <linux/blkdev.h>
#include <linux/netdevice.h>
+#include <linux/moduleparam.h>
#include "aoe.h"
#define NECODES 5
@@ -26,6 +27,19 @@ enum {
};
static char aoe_iflist[IFLISTSZ];
+module_param_string(aoe_iflist, aoe_iflist, IFLISTSZ, 0600);
+MODULE_PARM_DESC(aoe_iflist, "aoe_iflist=\"dev1 [dev2 ...]\"\n");
+
+#ifndef MODULE
+static int __init aoe_iflist_setup(char *str)
+{
+ strncpy(aoe_iflist, str, IFLISTSZ);
+ aoe_iflist[IFLISTSZ - 1] = '\0';
+ return 1;
+}
+
+__setup("aoe_iflist=", aoe_iflist_setup);
+#endif
int
is_aoe_netif(struct net_device *ifp)
@@ -36,7 +50,8 @@ is_aoe_netif(struct net_device *ifp)
if (aoe_iflist[0] == '\0')
return 1;
- for (p = aoe_iflist; *p; p = q + strspn(q, WHITESPACE)) {
+ p = aoe_iflist + strspn(aoe_iflist, WHITESPACE);
+ for (; *p; p = q + strspn(q, WHITESPACE)) {
q = p + strcspn(p, WHITESPACE);
if (q != p)
len = q - p;
OpenPOWER on IntegriCloud