Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 255925
b: refs/heads/master
c: e244a91
h: refs/heads/master
i:
  255923: 772e163
v: v3
  • Loading branch information
Allan Stephens authored and Paul Gortmaker committed Jun 24, 2011
1 parent d231825 commit 77a3324
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 38 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 741d9eb7b8f352071f56aacb77f5245b4e2a4fbe
refs/heads/master: e244a915ff7676b1567ba68102c9b53011f5b766
61 changes: 24 additions & 37 deletions trunk/net/tipc/port.c
Original file line number Diff line number Diff line change
Expand Up @@ -489,39 +489,38 @@ static void port_handle_node_down(unsigned long ref)

static struct sk_buff *port_build_self_abort_msg(struct tipc_port *p_ptr, u32 err)
{
u32 imp = msg_importance(&p_ptr->phdr);
struct sk_buff *buf = port_build_peer_abort_msg(p_ptr, err);

if (!p_ptr->connected)
return NULL;
if (imp < TIPC_CRITICAL_IMPORTANCE)
imp++;
return port_build_proto_msg(p_ptr->ref,
tipc_own_addr,
port_peerport(p_ptr),
port_peernode(p_ptr),
imp,
TIPC_CONN_MSG,
err,
0);
if (buf) {
struct tipc_msg *msg = buf_msg(buf);
msg_swap_words(msg, 4, 5);
msg_swap_words(msg, 6, 7);
}
return buf;
}


static struct sk_buff *port_build_peer_abort_msg(struct tipc_port *p_ptr, u32 err)
{
u32 imp = msg_importance(&p_ptr->phdr);
struct sk_buff *buf;
struct tipc_msg *msg;
u32 imp;

if (!p_ptr->connected)
return NULL;
if (imp < TIPC_CRITICAL_IMPORTANCE)
imp++;
return port_build_proto_msg(port_peerport(p_ptr),
port_peernode(p_ptr),
p_ptr->ref,
tipc_own_addr,
imp,
TIPC_CONN_MSG,
err,
0);

buf = tipc_buf_acquire(BASIC_H_SIZE);
if (buf) {
msg = buf_msg(buf);
memcpy(msg, &p_ptr->phdr, BASIC_H_SIZE);
msg_set_hdr_sz(msg, BASIC_H_SIZE);
msg_set_size(msg, BASIC_H_SIZE);
imp = msg_importance(msg);
if (imp < TIPC_CRITICAL_IMPORTANCE)
msg_set_importance(msg, ++imp);
msg_set_errcode(msg, err);
}
return buf;
}

void tipc_port_recv_proto_msg(struct sk_buff *buf)
Expand Down Expand Up @@ -1149,19 +1148,7 @@ int tipc_shutdown(u32 ref)
if (!p_ptr)
return -EINVAL;

if (p_ptr->connected) {
u32 imp = msg_importance(&p_ptr->phdr);
if (imp < TIPC_CRITICAL_IMPORTANCE)
imp++;
buf = port_build_proto_msg(port_peerport(p_ptr),
port_peernode(p_ptr),
ref,
tipc_own_addr,
imp,
TIPC_CONN_MSG,
TIPC_CONN_SHUTDOWN,
0);
}
buf = port_build_peer_abort_msg(p_ptr, TIPC_CONN_SHUTDOWN);
tipc_port_unlock(p_ptr);
tipc_net_route_msg(buf);
return tipc_disconnect(ref);
Expand Down

0 comments on commit 77a3324

Please sign in to comment.