diff options
Diffstat (limited to 'net/tipc')
-rw-r--r-- | net/tipc/bcast.c | 21 | ||||
-rw-r--r-- | net/tipc/bcast.h | 1 | ||||
-rw-r--r-- | net/tipc/bearer.c | 6 |
3 files changed, 1 insertions, 27 deletions
diff --git a/net/tipc/bcast.c b/net/tipc/bcast.c index 7abdca0de281..5200457eaeb4 100644 --- a/net/tipc/bcast.c +++ b/net/tipc/bcast.c | |||
@@ -667,27 +667,6 @@ void tipc_bcbearer_sort(void) | |||
667 | spin_unlock_bh(&bc_lock); | 667 | spin_unlock_bh(&bc_lock); |
668 | } | 668 | } |
669 | 669 | ||
670 | /** | ||
671 | * tipc_bcbearer_push - resolve bearer congestion | ||
672 | * | ||
673 | * Forces bclink to push out any unsent packets, until all packets are gone | ||
674 | * or congestion reoccurs. | ||
675 | * No locks set when function called | ||
676 | */ | ||
677 | |||
678 | void tipc_bcbearer_push(void) | ||
679 | { | ||
680 | struct tipc_bearer *b_ptr; | ||
681 | |||
682 | spin_lock_bh(&bc_lock); | ||
683 | b_ptr = &bcbearer->bearer; | ||
684 | if (b_ptr->blocked) { | ||
685 | b_ptr->blocked = 0; | ||
686 | tipc_bearer_lock_push(b_ptr); | ||
687 | } | ||
688 | spin_unlock_bh(&bc_lock); | ||
689 | } | ||
690 | |||
691 | 670 | ||
692 | int tipc_bclink_stats(char *buf, const u32 buf_size) | 671 | int tipc_bclink_stats(char *buf, const u32 buf_size) |
693 | { | 672 | { |
diff --git a/net/tipc/bcast.h b/net/tipc/bcast.h index 500c97f1c859..06740da5ae61 100644 --- a/net/tipc/bcast.h +++ b/net/tipc/bcast.h | |||
@@ -101,6 +101,5 @@ int tipc_bclink_stats(char *stats_buf, const u32 buf_size); | |||
101 | int tipc_bclink_reset_stats(void); | 101 | int tipc_bclink_reset_stats(void); |
102 | int tipc_bclink_set_queue_limits(u32 limit); | 102 | int tipc_bclink_set_queue_limits(u32 limit); |
103 | void tipc_bcbearer_sort(void); | 103 | void tipc_bcbearer_sort(void); |
104 | void tipc_bcbearer_push(void); | ||
105 | 104 | ||
106 | #endif | 105 | #endif |
diff --git a/net/tipc/bearer.c b/net/tipc/bearer.c index 85eba9c08ee9..e465a92a4f9c 100644 --- a/net/tipc/bearer.c +++ b/net/tipc/bearer.c | |||
@@ -385,13 +385,9 @@ static int bearer_push(struct tipc_bearer *b_ptr) | |||
385 | 385 | ||
386 | void tipc_bearer_lock_push(struct tipc_bearer *b_ptr) | 386 | void tipc_bearer_lock_push(struct tipc_bearer *b_ptr) |
387 | { | 387 | { |
388 | int res; | ||
389 | |||
390 | spin_lock_bh(&b_ptr->lock); | 388 | spin_lock_bh(&b_ptr->lock); |
391 | res = bearer_push(b_ptr); | 389 | bearer_push(b_ptr); |
392 | spin_unlock_bh(&b_ptr->lock); | 390 | spin_unlock_bh(&b_ptr->lock); |
393 | if (res) | ||
394 | tipc_bcbearer_push(); | ||
395 | } | 391 | } |
396 | 392 | ||
397 | 393 | ||