diff options
-rw-r--r-- | drivers/block/aoe/aoecmd.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/block/aoe/aoecmd.c b/drivers/block/aoe/aoecmd.c index 9ebc98ade3c5..f2b8f558e1bb 100644 --- a/drivers/block/aoe/aoecmd.c +++ b/drivers/block/aoe/aoecmd.c | |||
@@ -15,7 +15,10 @@ | |||
15 | #define TIMERTICK (HZ / 10) | 15 | #define TIMERTICK (HZ / 10) |
16 | #define MINTIMER (2 * TIMERTICK) | 16 | #define MINTIMER (2 * TIMERTICK) |
17 | #define MAXTIMER (HZ << 1) | 17 | #define MAXTIMER (HZ << 1) |
18 | #define MAXWAIT (60 * 3) /* After MAXWAIT seconds, give up and fail dev */ | 18 | |
19 | static int aoe_deadsecs = 60 * 3; | ||
20 | module_param(aoe_deadsecs, int, 0644); | ||
21 | MODULE_PARM_DESC(aoe_deadsecs, "After aoe_deadsecs seconds, give up and fail dev."); | ||
19 | 22 | ||
20 | struct sk_buff * | 23 | struct sk_buff * |
21 | new_skb(ulong len) | 24 | new_skb(ulong len) |
@@ -373,7 +376,7 @@ rexmit_timer(ulong vp) | |||
373 | if (f->tag != FREETAG && tsince(f->tag) >= timeout) { | 376 | if (f->tag != FREETAG && tsince(f->tag) >= timeout) { |
374 | n = f->waited += timeout; | 377 | n = f->waited += timeout; |
375 | n /= HZ; | 378 | n /= HZ; |
376 | if (n > MAXWAIT) { /* waited too long. device failure. */ | 379 | if (n > aoe_deadsecs) { /* waited too long for response */ |
377 | aoedev_downdev(d); | 380 | aoedev_downdev(d); |
378 | break; | 381 | break; |
379 | } | 382 | } |