Skip to content

Commit

Permalink
tipc: simplify small window members' sorting algorithm
Browse files Browse the repository at this point in the history
We simplify the sorting algorithm in tipc_update_member(). We also make
the remaining conditional call to this function unconditional, since the
same condition now is tested for inside the said function.

Acked-by: Ying Xue <ying.xue@windriver.com>
Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Jon Maloy authored and David S. Miller committed Jan 5, 2018
1 parent 38266ca commit d84d1b3
Showing 1 changed file with 4 additions and 9 deletions.
13 changes: 4 additions & 9 deletions net/tipc/group.c
Original file line number Diff line number Diff line change
Expand Up @@ -355,12 +355,10 @@ void tipc_group_update_member(struct tipc_member *m, int len)

/* Sort member into small_window members' list */
list_for_each_entry_safe(_m, tmp, &grp->small_win, small_win) {
if (m->window > _m->window)
continue;
list_add_tail(&m->small_win, &_m->small_win);
return;
if (_m->window > m->window)
break;
}
list_add_tail(&m->small_win, &grp->small_win);
list_add_tail(&m->small_win, &_m->small_win);
}

void tipc_group_update_bc_members(struct tipc_group *grp, int len, bool ack)
Expand Down Expand Up @@ -837,10 +835,7 @@ void tipc_group_member_evt(struct tipc_group *grp,
m->instance = instance;
TIPC_SKB_CB(skb)->orig_member = m->instance;
tipc_group_proto_xmit(grp, m, GRP_JOIN_MSG, xmitq);
if (m->window < ADV_IDLE)
tipc_group_update_member(m, 0);
else
list_del_init(&m->small_win);
tipc_group_update_member(m, 0);
} else if (event == TIPC_WITHDRAWN) {
if (!m)
goto drop;
Expand Down

0 comments on commit d84d1b3

Please sign in to comment.