diff options
| author | Gerrit Renker <gerrit@erg.abdn.ac.uk> | 2007-12-12 09:28:40 -0500 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2008-01-28 17:57:16 -0500 |
| commit | 8995a238ef6869bc5c80240440bc58452c7af283 (patch) | |
| tree | 40850acfd1042ecdf9bf3f745358871ef42772bb /net/dccp/ccids/lib | |
| parent | df8f83fdd6369e1ba85f089fd6fe26bb2ddcb36f (diff) | |
[TFRC]: Loss interval code needs the macros/inlines that were moved
This moves the inlines (which were previously declared as macros) back into
packet_history.h since the loss detection code needs to be able to read entries
from the RX history in order to create the relevant loss entries: it needs at
least tfrc_rx_hist_loss_prev() and tfrc_rx_hist_last_rcv(), which in turn
require the definition of the other inlines (macros).
Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dccp/ccids/lib')
| -rw-r--r-- | net/dccp/ccids/lib/packet_history.c | 35 | ||||
| -rw-r--r-- | net/dccp/ccids/lib/packet_history.h | 35 |
2 files changed, 35 insertions, 35 deletions
diff --git a/net/dccp/ccids/lib/packet_history.c b/net/dccp/ccids/lib/packet_history.c index 727b17d3bd0e..dd2cf2d6b8fc 100644 --- a/net/dccp/ccids/lib/packet_history.c +++ b/net/dccp/ccids/lib/packet_history.c | |||
| @@ -151,23 +151,6 @@ void tfrc_rx_packet_history_exit(void) | |||
| 151 | } | 151 | } |
| 152 | } | 152 | } |
| 153 | 153 | ||
| 154 | /** | ||
| 155 | * tfrc_rx_hist_index - index to reach n-th entry after loss_start | ||
| 156 | */ | ||
| 157 | static inline u8 tfrc_rx_hist_index(const struct tfrc_rx_hist *h, const u8 n) | ||
| 158 | { | ||
| 159 | return (h->loss_start + n) & TFRC_NDUPACK; | ||
| 160 | } | ||
| 161 | |||
| 162 | /** | ||
| 163 | * tfrc_rx_hist_last_rcv - entry with highest-received-seqno so far | ||
| 164 | */ | ||
| 165 | static inline struct tfrc_rx_hist_entry * | ||
| 166 | tfrc_rx_hist_last_rcv(const struct tfrc_rx_hist *h) | ||
| 167 | { | ||
| 168 | return h->ring[tfrc_rx_hist_index(h, h->loss_count)]; | ||
| 169 | } | ||
| 170 | |||
| 171 | void tfrc_rx_hist_add_packet(struct tfrc_rx_hist *h, | 154 | void tfrc_rx_hist_add_packet(struct tfrc_rx_hist *h, |
| 172 | const struct sk_buff *skb, | 155 | const struct sk_buff *skb, |
| 173 | const u32 ndp) | 156 | const u32 ndp) |
| @@ -183,24 +166,6 @@ void tfrc_rx_hist_add_packet(struct tfrc_rx_hist *h, | |||
| 183 | } | 166 | } |
| 184 | EXPORT_SYMBOL_GPL(tfrc_rx_hist_add_packet); | 167 | EXPORT_SYMBOL_GPL(tfrc_rx_hist_add_packet); |
| 185 | 168 | ||
| 186 | /** | ||
| 187 | * tfrc_rx_hist_entry - return the n-th history entry after loss_start | ||
| 188 | */ | ||
| 189 | static inline struct tfrc_rx_hist_entry * | ||
| 190 | tfrc_rx_hist_entry(const struct tfrc_rx_hist *h, const u8 n) | ||
| 191 | { | ||
| 192 | return h->ring[tfrc_rx_hist_index(h, n)]; | ||
| 193 | } | ||
| 194 | |||
| 195 | /** | ||
| 196 | * tfrc_rx_hist_loss_prev - entry with highest-received-seqno before loss was detected | ||
| 197 | */ | ||
| 198 | static inline struct tfrc_rx_hist_entry * | ||
| 199 | tfrc_rx_hist_loss_prev(const struct tfrc_rx_hist *h) | ||
| 200 | { | ||
| 201 | return h->ring[h->loss_start]; | ||
| 202 | } | ||
| 203 | |||
| 204 | /* has the packet contained in skb been seen before? */ | 169 | /* has the packet contained in skb been seen before? */ |
| 205 | int tfrc_rx_hist_duplicate(struct tfrc_rx_hist *h, struct sk_buff *skb) | 170 | int tfrc_rx_hist_duplicate(struct tfrc_rx_hist *h, struct sk_buff *skb) |
| 206 | { | 171 | { |
diff --git a/net/dccp/ccids/lib/packet_history.h b/net/dccp/ccids/lib/packet_history.h index 3dfd182b0e64..e58b0fcdc6ae 100644 --- a/net/dccp/ccids/lib/packet_history.h +++ b/net/dccp/ccids/lib/packet_history.h | |||
| @@ -84,6 +84,41 @@ struct tfrc_rx_hist { | |||
| 84 | #define rtt_sample_prev loss_start | 84 | #define rtt_sample_prev loss_start |
| 85 | }; | 85 | }; |
| 86 | 86 | ||
| 87 | /** | ||
| 88 | * tfrc_rx_hist_index - index to reach n-th entry after loss_start | ||
| 89 | */ | ||
| 90 | static inline u8 tfrc_rx_hist_index(const struct tfrc_rx_hist *h, const u8 n) | ||
| 91 | { | ||
| 92 | return (h->loss_start + n) & TFRC_NDUPACK; | ||
| 93 | } | ||
| 94 | |||
| 95 | /** | ||
| 96 | * tfrc_rx_hist_last_rcv - entry with highest-received-seqno so far | ||
| 97 | */ | ||
| 98 | static inline struct tfrc_rx_hist_entry * | ||
| 99 | tfrc_rx_hist_last_rcv(const struct tfrc_rx_hist *h) | ||
| 100 | { | ||
| 101 | return h->ring[tfrc_rx_hist_index(h, h->loss_count)]; | ||
| 102 | } | ||
| 103 | |||
| 104 | /** | ||
| 105 | * tfrc_rx_hist_entry - return the n-th history entry after loss_start | ||
| 106 | */ | ||
| 107 | static inline struct tfrc_rx_hist_entry * | ||
| 108 | tfrc_rx_hist_entry(const struct tfrc_rx_hist *h, const u8 n) | ||
| 109 | { | ||
| 110 | return h->ring[tfrc_rx_hist_index(h, n)]; | ||
| 111 | } | ||
| 112 | |||
| 113 | /** | ||
| 114 | * tfrc_rx_hist_loss_prev - entry with highest-received-seqno before loss was detected | ||
| 115 | */ | ||
| 116 | static inline struct tfrc_rx_hist_entry * | ||
| 117 | tfrc_rx_hist_loss_prev(const struct tfrc_rx_hist *h) | ||
| 118 | { | ||
| 119 | return h->ring[h->loss_start]; | ||
| 120 | } | ||
| 121 | |||
| 87 | extern void tfrc_rx_hist_add_packet(struct tfrc_rx_hist *h, | 122 | extern void tfrc_rx_hist_add_packet(struct tfrc_rx_hist *h, |
| 88 | const struct sk_buff *skb, const u32 ndp); | 123 | const struct sk_buff *skb, const u32 ndp); |
| 89 | 124 | ||
