mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
sctp: shrink sctp_tsnmap some more by removing gabs array
The gabs array in the sctp_tsnmap structure is only used in one place, sctp_make_sack(). As such, carrying the array around in the sctp_tsnmap and thus directly in the sctp_association is rather pointless since most of the time it's just taking up space. Now, let sctp_make_sack create and populate it and then throw it away when it's done. Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
8e1ee18c33
commit
02015180e2
3 changed files with 15 additions and 20 deletions
|
@ -94,11 +94,8 @@ struct sctp_tsnmap {
|
|||
* every SACK. Store up to SCTP_MAX_DUP_TSNS worth of
|
||||
* information.
|
||||
*/
|
||||
__be32 dup_tsns[SCTP_MAX_DUP_TSNS];
|
||||
__u16 num_dup_tsns;
|
||||
|
||||
/* Record gap ack block information here. */
|
||||
struct sctp_gap_ack_block gabs[SCTP_MAX_GABS];
|
||||
__be32 dup_tsns[SCTP_MAX_DUP_TSNS];
|
||||
};
|
||||
|
||||
struct sctp_tsnmap_iter {
|
||||
|
@ -151,17 +148,12 @@ static inline __be32 *sctp_tsnmap_get_dups(struct sctp_tsnmap *map)
|
|||
}
|
||||
|
||||
/* How many gap ack blocks do we have recorded? */
|
||||
__u16 sctp_tsnmap_num_gabs(struct sctp_tsnmap *map);
|
||||
__u16 sctp_tsnmap_num_gabs(struct sctp_tsnmap *map,
|
||||
struct sctp_gap_ack_block *gabs);
|
||||
|
||||
/* Refresh the count on pending data. */
|
||||
__u16 sctp_tsnmap_pending(struct sctp_tsnmap *map);
|
||||
|
||||
/* Return pointer to gap ack blocks as needed by SACK. */
|
||||
static inline struct sctp_gap_ack_block *sctp_tsnmap_get_gabs(struct sctp_tsnmap *map)
|
||||
{
|
||||
return map->gabs;
|
||||
}
|
||||
|
||||
/* Is there a gap in the TSN map? */
|
||||
static inline int sctp_tsnmap_has_gap(const struct sctp_tsnmap *map)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue