diff options
author | Xin Long <lucien.xin@gmail.com> | 2016-01-21 18:49:09 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-01-29 00:59:32 +0100 |
commit | 47faa1e4c50ec26e6e75dcd1ce53f064bd45f729 (patch) | |
tree | efc573a557079fb75d1cf2b1c16d187526884a64 /include/net/sctp | |
parent | sctp: hold transport before we access t->asoc in sctp proc (diff) | |
download | linux-47faa1e4c50ec26e6e75dcd1ce53f064bd45f729.tar.xz linux-47faa1e4c50ec26e6e75dcd1ce53f064bd45f729.zip |
sctp: remove the dead field of sctp_transport
After we use refcnt to check if transport is alive, the dead can be
removed from sctp_transport.
The traversal of transport_addr_list in procfs dump is using
list_for_each_entry_rcu, no need to check if it has been freed.
sctp_generate_t3_rtx_event and sctp_generate_heartbeat_event is
protected by sock lock, it's not necessary to check dead, either.
also, the timers are cancelled when sctp_transport_free() is
called, that it doesn't wait for refcnt to reach 0 to cancel them.
Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/sctp')
-rw-r--r-- | include/net/sctp/structs.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/include/net/sctp/structs.h b/include/net/sctp/structs.h index 344da04e2e30..205630bb5010 100644 --- a/include/net/sctp/structs.h +++ b/include/net/sctp/structs.h @@ -756,7 +756,6 @@ struct sctp_transport { /* Reference counting. */ atomic_t refcnt; - __u32 dead:1, /* RTO-Pending : A flag used to track if one of the DATA * chunks sent to this address is currently being * used to compute a RTT. If this flag is 0, @@ -766,7 +765,7 @@ struct sctp_transport { * calculation completes (i.e. the DATA chunk * is SACK'd) clear this flag. */ - rto_pending:1, + __u32 rto_pending:1, /* * hb_sent : a flag that signals that we have a pending |