Commit 5e726900 authored by Allan Stephens's avatar Allan Stephens Committed by Paul Gortmaker

tipc: Convert fatal broadcast sanity check to non-fatal check

Modifies the existing broadcast link sanity check that detects an
attempt to send a message off-node when there are no available
destinations so that it no longer causes a kernel panic; instead,
the check now issues a warning and stack trace and then returns
without sending the message anywhere.
Signed-off-by: default avatarAllan Stephens <allan.stephens@windriver.com>
Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
parent 21e84257
...@@ -552,12 +552,16 @@ static int tipc_bcbearer_send(struct sk_buff *buf, ...@@ -552,12 +552,16 @@ static int tipc_bcbearer_send(struct sk_buff *buf,
if (likely(!msg_non_seq(buf_msg(buf)))) { if (likely(!msg_non_seq(buf_msg(buf)))) {
struct tipc_msg *msg; struct tipc_msg *msg;
assert(tipc_bcast_nmap.count != 0);
bcbuf_set_acks(buf, tipc_bcast_nmap.count); bcbuf_set_acks(buf, tipc_bcast_nmap.count);
msg = buf_msg(buf); msg = buf_msg(buf);
msg_set_non_seq(msg, 1); msg_set_non_seq(msg, 1);
msg_set_mc_netid(msg, tipc_net_id); msg_set_mc_netid(msg, tipc_net_id);
bcl->stats.sent_info++; bcl->stats.sent_info++;
if (WARN_ON(!tipc_bcast_nmap.count)) {
dump_stack();
return 0;
}
} }
/* Send buffer over bearers until all targets reached */ /* Send buffer over bearers until all targets reached */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment