sctp: convert sack_needed and sack_generation to bits

They don't need to be any bigger than that and with this we start a new
bitfield for tracking association runtime stuff, like zero window
situation.

Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Acked-by: Vlad Yasevich <vyasevich@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Marcelo Ricardo Leitner 2015-11-30 12:17:06 -02:00 committed by David S. Miller
parent 45f6fad84c
commit 38ee8fb67c

View File

@ -775,10 +775,10 @@ struct sctp_transport {
hb_sent:1,
/* Is the Path MTU update pending on this tranport */
pmtu_pending:1;
pmtu_pending:1,
/* Has this transport moved the ctsn since we last sacked */
__u32 sack_generation;
/* Has this transport moved the ctsn since we last sacked */
sack_generation:1;
u32 dst_cookie;
struct flowi fl;
@ -1482,19 +1482,19 @@ struct sctp_association {
prsctp_capable:1, /* Can peer do PR-SCTP? */
auth_capable:1; /* Is peer doing SCTP-AUTH? */
/* Ack State : This flag indicates if the next received
/* sack_needed : This flag indicates if the next received
* : packet is to be responded to with a
* : SACK. This is initializedto 0. When a packet
* : is received it is incremented. If this value
* : SACK. This is initialized to 0. When a packet
* : is received sack_cnt is incremented. If this value
* : reaches 2 or more, a SACK is sent and the
* : value is reset to 0. Note: This is used only
* : when no DATA chunks are received out of
* : order. When DATA chunks are out of order,
* : SACK's are not delayed (see Section 6).
*/
__u8 sack_needed; /* Do we need to sack the peer? */
__u8 sack_needed:1, /* Do we need to sack the peer? */
sack_generation:1;
__u32 sack_cnt;
__u32 sack_generation;
__u32 adaptation_ind; /* Adaptation Code point. */