diff options
| author | Allan Stephens <allan.stephens@windriver.com> | 2008-06-04 20:47:30 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2008-06-04 20:47:30 -0400 |
| commit | bd7845337b105e090dd18912d511139945fa7586 (patch) | |
| tree | 2187b514c144ae70e6c36845c50dab2674770bb2 /net/tipc | |
| parent | 307fdf5e7defcacf84db21cda18770b2bf5f5196 (diff) | |
tipc: Expand link sequence gap field to 13 bits
This patch increases the "sequence gap" field of the LINK_PROTOCOL
message header from 8 bits to 13 bits (utilizing 5 previously
unused 0 bits). This ensures that the field is big enough to
indicate the loss of up to 8191 consecutive messages on the link,
thereby accommodating the current worst-case scenario of 4000
lost messages.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/tipc')
| -rw-r--r-- | net/tipc/msg.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/net/tipc/msg.h b/net/tipc/msg.h index 3418ffa72c94..b23619fab968 100644 --- a/net/tipc/msg.h +++ b/net/tipc/msg.h | |||
| @@ -2,7 +2,7 @@ | |||
| 2 | * net/tipc/msg.h: Include file for TIPC message header routines | 2 | * net/tipc/msg.h: Include file for TIPC message header routines |
| 3 | * | 3 | * |
| 4 | * Copyright (c) 2000-2007, Ericsson AB | 4 | * Copyright (c) 2000-2007, Ericsson AB |
| 5 | * Copyright (c) 2005-2007, Wind River Systems | 5 | * Copyright (c) 2005-2008, Wind River Systems |
| 6 | * All rights reserved. | 6 | * All rights reserved. |
| 7 | * | 7 | * |
| 8 | * Redistribution and use in source and binary forms, with or without | 8 | * Redistribution and use in source and binary forms, with or without |
| @@ -325,7 +325,7 @@ static inline struct tipc_msg *msg_get_wrapped(struct tipc_msg *m) | |||
| 325 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 325 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| 326 | w0:|vers |msg usr|hdr sz |n|resrv| packet size | | 326 | w0:|vers |msg usr|hdr sz |n|resrv| packet size | |
| 327 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 327 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| 328 | w1:|m typ|rsv=0| sequence gap | broadcast ack no | | 328 | w1:|m typ| sequence gap | broadcast ack no | |
| 329 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 329 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| 330 | w2:| link level ack no/bc_gap_from | seq no / bcast_gap_to | | 330 | w2:| link level ack no/bc_gap_from | seq no / bcast_gap_to | |
| 331 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 331 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| @@ -388,12 +388,12 @@ static inline struct tipc_msg *msg_get_wrapped(struct tipc_msg *m) | |||
| 388 | 388 | ||
| 389 | static inline u32 msg_seq_gap(struct tipc_msg *m) | 389 | static inline u32 msg_seq_gap(struct tipc_msg *m) |
| 390 | { | 390 | { |
| 391 | return msg_bits(m, 1, 16, 0xff); | 391 | return msg_bits(m, 1, 16, 0x1fff); |
| 392 | } | 392 | } |
| 393 | 393 | ||
| 394 | static inline void msg_set_seq_gap(struct tipc_msg *m, u32 n) | 394 | static inline void msg_set_seq_gap(struct tipc_msg *m, u32 n) |
| 395 | { | 395 | { |
| 396 | msg_set_bits(m, 1, 16, 0xff, n); | 396 | msg_set_bits(m, 1, 16, 0x1fff, n); |
| 397 | } | 397 | } |
| 398 | 398 | ||
| 399 | static inline u32 msg_req_links(struct tipc_msg *m) | 399 | static inline u32 msg_req_links(struct tipc_msg *m) |
