serve other parts of the DCCP code as well.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h |2 ++
net/dccp/options.c | 24
net/dccp/output.c|8
3 files changed, 30 insertions(+), 4 deletions(-)
--- a/include/linux/
to define a corresponding CCID field.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Acked-by: Ian McDonald <[EMAIL PROTECTED]>
---
net/dccp/ackvec.h |3 +++
net/dccp/output.c | 22 ++
2 files changed, 17 insertions(+), 8 deletions(-)
--- a/net/dccp/ackvec
This is a resubmission to fix a problem with accounting for Ack Vector
length in the MPS.
The present solution did not work well: the MPS did not account for Ack Vectors,
so that applications which relied on the MPS value via getopt were
disadvantaged
by having all their Ack Vectors put onto Syn
n the loop condition of the subsequent list_for_each_entry_safe().
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c | 205 +++
net/dccp/ackvec.h | 103 +---
net/dccp/ccids/ccid2.c | 13 +--
net
.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/Kconfig |3 -
net/dccp/Makefile |5 +-
net/dccp/ackvec.c | 252
net/dccp/ackvec.h | 79 +---
net/dccp/ccids/Kconfig |1 -
5 files c
code
to fetch parsed Ack Vectors via this interface;
* a data structure, `struct dccp_ackvec_parsed' is provided as interface;
* this structure arranges Ack Vectors of the same skb into a FIFO order;
* a doubly-linked list is used to keep the required FIFO code small.
Signed-off-by: G
ely out of synch.
(This is documented on http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/\
ack_vectors/tracking_tail_ackno/ .)
(c) The buffer lengthi is now computed dynamically (i.e. current fill level),
as the span between head to tail.
A
therefore removed.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c | 88
net/dccp/ackvec.h |6 +++
net/dccp/input.c |4 +-
net/dccp/options.c | 12 ++-
4 files changed, 100 insertions(+), 10 del
t the previous implementation by Arnaldo de Melo.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c | 150 +
net/dccp/ackvec.h |9 +++
2 files changed, 159 insertions(+), 0 deletions(-)
--- a/net/dccp/ackvec.h
+++
,
since the list is automatically arranged in descending order of ack_seqno.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c | 100 +--
net/dccp/ackvec.h |5 +--
net/dccp/options.c | 60
t the beginning of the connection this can be very counter-
intuitive and annoying.
(Over the long term there should be some adjustment to reduce MPS at least
by a minimum when Ack Vectors are used; some applications may rely on the
exact value of the MPS).
Signed-off-by: Gerrit Renker <[EMAIL P
`idx' with computation in argument list (btw,
these indices are nowhere used -- are they really still needed???).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h |6 --
net/dccp/options.c | 19 +++
2 files changed, 11 insert
clear the
old state first before entering new state;
* Ack Event handling happens mostly within the CCIDs, not the main DCCP module.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/input.c | 32 ++--
1 files changed, 10 inse
necessary to compute ECN nonces over multiple vectors;
* reserving entries (one per packet) didn't work well with large burst losses;
A summary of the problems that were fixed and full code documentation is on
http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/ack_vectors/
The code has
same code.
If the tasklet finds that the socket is locked, it re-schedules the tasklet
function (not the tasklet) after one jiffy.
Changed DCCP_BUG to DCCP_WARN when transmit_skb returns an error (e.g. when a
local qdisc is used, NET_XMIT_DROP=1 can be returned for many packets).
Signed-off-by: Ger
tion (unread data, zero linger time),
(c) wait-for-ccid could not finish within the given time limit.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h |3 +-
net/dccp/output.c | 122 ++---
net/dccp/proto.c |
.2006.patch now maintained by Emmanuel Lochin.)
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccid.h|6 +++---
net/dccp/ccids/ccid2.c |2 +-
net/dccp/ccids/ccid3.c |3 +--
net/dccp/output.c |2 +-
4 files changed, 6 insertions(+), 7 deletions(-)
---
This updates CCID2 to use the CCID dequeuing mechanism, converting from
previous constant-polling to a now event-driven mechanism.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid2.c | 21 +
net/dccp/ccids/ccid2.h |5 +
2 files chang
end (compare
with call to tcp_write_queue_purge in tcp_disconnect()).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/proto.c |2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
--- a/net/dccp/proto.c
+++ b/net/dccp/proto.c
@@ -277,7 +277,9 @@ int dccp_disconnect(struc
This set of patches extends the packet sending/dequeuing interface, which is
currently restricted to using time intervals only. This forces CCID-2 into
a constant polling mode, which is removed in patch #4.
Patch #1: Extends the CCID packet dequeuing interface to allow CCIDs to
autonomo
and AWL := ISS, AWH := GSS
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h | 20
net/dccp/input.c | 18 ++
net/dccp/minisocks.c | 30 +-
3 files changed, 35 insertions(+), 33 deleti
, the now-unused
`size' field in the output has been replaced with the CCID identifier. This
also serves for future compatibility - support for CCID2 is work in progress
(depends on the still unfinished SRTT/RTTVAR updates).
While at it, the update to ktime_t was also performed.
Signed-off-
After moving the assignment of GAR/ISS from dccp_connect_init() to
dccp_transmit_skb(), the former function becomes very small, so that
a merger with dccp_connect() suggested itself.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/output.c | 18 +-
1 files c
ents the initial adjustments for AWL as specified in RFC 4340, 7.5.1.
Note: A problem that remains is that ISS can potentially be under-run even after
the initial handshake; this is addressed a subsequent patch.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
ne
initial loss interval, and thus unnecessarily reducing the throughput.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/lib/tfrc_equation.c |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
--- a/net/dccp/ccids/lib/tfrc_equation.c
+++ b/net/dccp/cci
a similar patch to patch #6 onto
http://www.erg.abdn.ac.uk/users/gerrit/dccp/dccp_probe_for_mainline.diff
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Step 8.5 in RFC 4340 says for the newly cloned socket
Initialize S.GAR := S.ISS,
but what in fact the code (minisocks.c) does is
Initialize S.GAR := S.ISR,
which is wrong (typo?) -- fixed by the patch.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
ne
| > So maybe the cause triggering this oops is somewhere else.
|
| yes, probably. sorry - i didn`t tell or maybe i didn`t know when writing
| my first mail to module authors and forget to add that before forwarding here.
|
| for me , the problem does not happen with suse kernel of the day
| (2.6
| > >> the easiest way to reproduce is:
| > >>
| > >> while true;do modprobe dccp_ccid2/3;modprobe -r dccp_ccid2/3;done
| > >> after short time, the kernel oopses (messages below)
| > >>
|
| Gerrit, the control socket isn't attached to any CC
gt; dccp_ccid2 => dccp_ccid3 => dccp_tfrc_lib =>
dccp_ipv6 => dccp_ipv4 => dccp_diag => dccp
Long story short
* the CCID/DCCP modules can currently not safely be unloaded
* maybe we should disable module unloading for the mainline kernel
* if anyone is inte
This is patch 2 in the set and uses the routines provided by the previous
patch to implement parsing of received Ack Vectors, replacing duplicate code.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid2.c | 132
ne
this can be very counter-
intuitive and annoying.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h |2 ++
net/dccp/options.c | 28 +++-
net/dccp/output.c|8
3 files changed, 29 insertions(+), 9 deletions(-)
--- a/in
' is provided, which arranges all
Ack Vectors of a single skb into a list of parsed chunks;
* a doubly-linked list was used since insertion needs to be at the tail end;
* the associated list handling and list de-allocation routines.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
--
This is the "new stuff" for Ack Vectors, completing the Ack Vector work.
All other patches are as before, with the single exception of the update sent
yesterday (the recovery strategy for dealing with suddenly large losses).
Arnaldo, can you please indicate whether I should resubmit the older pat
improved patches/bug-fixes, which are to be
submitted soon.
Gerrit
[DCCP]: Registration routines for changing feature values
==> Added symbolic constants for the Sequence Window / Ack Ratio limits
==> Added these con
ned. Hence disabled by this patch.
Two more changes suggested itself:
* replaced magic numbers for CCID-specific options with symbolic constants;
* replaced local variables `idx' with computation in argument list.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp
done by the function (also same name as in A.3 of RFC 4340);
* the variable `ackno' now becomes unused in options.c, and therefore
is now used for other (space-saving) purposes.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dc
no in dccp_ackvec_alloc() has been removed, since dccp_ackvec_add()
overrides this value each time a new packet is added to the buffer).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c | 48
net/dccp/ackv
: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c | 107 +---
net/dccp/ackvec.h |5 +-
net/dccp/options.c | 65 +++
3 files changed, 85 insertions(+), 92 deletions(-)
--- a/net/dccp/ackvec.h
+++ b/ne
This provides inlines for Ack Vector run length and state, which allow to wrap
several instances of the same code into function calls.
The unused function dccp_ackvec_print() (which also relied on the older
constants), has been removed.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
--
alculation completely out of synch.
(This is documented on http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/\
ack_vectors/tracking_tail_ackno/ .)
This further allowed to simplify dccp_ackvec_pending() - the #ifdef is no longer
necessary since buf_empty is a
condition is
embedded in the loop condition of the subsequent list_for_each_entry_safe().
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c | 78 +++--
1 files changed, 28 insertions(+), 50 deletions(-)
--- a/net/dccp/ac
This replaces 3 #defines with an enum containing all possible
Ack Vector states as per RFC 4340, 11.4. This helps to reduce
the length of several expressions.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c |7 +++
net/dccp/ackvec.h | 10 ++---
evant.
Much of the old code and naming is reused.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c | 123 +
net/dccp/ackvec.h |6 +++
2 files changed, 129 insertions(+), 0 deletions(-)
--- a/net/dccp/ackvec.h
+++
The length of the circular Ack Vector buffer is now determined dynamically,
as the span between head to tail.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c | 21 +
net/dccp/ackvec.h |7 +++
net/dccp/options.c |7 ---
3
n (elapsed time field
in the Timestamp Echo option).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c | 11 ---
net/dccp/ackvec.h |3 ---
2 files changed, 0 insertions(+), 14 deletions(-)
--- a/net/dccp/ackvec.h
+++ b/net/dccp/ackvec.
Ack Vector.
The fix is in parsing Ack Vectors on all packet types which are allowed to
carry an Ack Vector.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid2.c |7 +--
1 files changed, 1 insertions(+), 6 deletions(-)
--- a/net/dccp/ccids/ccid2.c
+++ b/ne
the last unacknowledged but received seqno in tail_ackno,
* has special cases to reset the overflow condition when appropriate,
* is protected against receiving older information (would mess up buffer
state).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ackvec.c
/dccp_exp [dccp]
but please note that the server will be switched off from 21/12 ... 01/08.
Detailed information and documentation can be found on
http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/ack_vectors/
--
To unsubscribe from this list: send the line "unsubscribe netdev&qu
longer necessary.
Also updated copyrights.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/Kconfig |3 -
net/dccp/Makefile |5 +-
net/dccp/ackvec.c | 141 +---
net/dccp/ackvec.h | 64 +
old
state first before entering new state;
* Ack Event handling happens mostly within the CCIDs, not the main DCCP module.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/input.c | 38 +++---
1 files changed, 11 insertions(+), 27 del
[CCID3]: Whitespace cleanups and outdated documentation
This removes outdated documentation which had been forgotten to be
removed (x_recv, rtt now appear twice, p was removed from rx_sock);
and removes new whitespace.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/c
ter issues.
Best regards,
Gerrit
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
| The end result should be equivalent, but please take a look and
That is a good catch - this patch was a pain to keep updated exactly due
to the many indentation levels. I had a quick look, the patch looks ok.
Just a small suggestion - since the RTT lookup code in tx_packet_recv()
is new, w
I've been working on making DCCP Ack Vectors more robust, dealing more
gracefully
with buffer overflow, and fixing two cases which will lead to corrupted buffer
state.
The encountered problems and implementation strategy are documented on
http://www.erg.abdn.ac.uk/users/gerrit
.git;a=commitdiff;h=a925429ce2189b548dc19037d3ebd4ff35ae4af7
|
Sorry for the confusion - you were right, the initialisation was sitting
in the wrong patch, not the one in the subject line. In your online
version the problem is fixed. Thanks a lot for all the work and for the
clarification.
Gerrit
| This time around I'm not doing any reordering, just trying to use your
| patches as is, but adding this patch as-is produces a kernel that will
| crash, no?
|
| > The loss history and the RX/TX packet history slabs are all created in
| > tfrc.c using the three different __init routines of the dc
| When interfacing we must make sure that ccid3 tfrc_lh_slab is created
| and then tfrc_li_cachep is not needed. I'm doing this while keeping
| the structure of the patches, i.e. one introducing, the other removing.
| But we need to create tfrc_lh_slab if we want the tree to be bisectable.
|
| I'm
on of comprehensive, new loss detection algorithm
- support for all cases of loss, including re-ordered/duplicate packets;
- waiting for NDUPACK=3 packets to fill the hole;
- updating loss records when a late-arriving packet fills a hole.
Signed-off-by: Gerrit Renker &l
This separates RX/TX initialisation and puts all packet history / loss intervals
initialisation into tfrc.c.
The organisation is uniform: slab declaration -> {rx,tx}_init() ->
{rx,tx}_exit()
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/lib/packet_hist
consistent.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid3.c |2 --
net/dccp/ccids/ccid3.h |4 ++--
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/net/dccp/ccids/ccid3.c b/net/dccp/ccids/ccid3.c
index 60fcb31..b92069b 100644
--- a/net/dccp/ccids
(), which
in turn require the definition of the other inlines (macros).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/lib/packet_history.c | 35 ---
net/dccp/ccids/lib/packet_history.h | 35 +++
2 files c
This revision updates earlier patches, following discussion,
and adds one additional cleanup patch at the end.
Patch #1: Revision of initialisation patch; fixed calling __exit function
from __init function - identified by Arnaldo.
Patch #2: Revision - re-converted tfrc_rx_hist_entry()
| >
| > distcc[24516] ERROR: compile
/root/.ccache/packet_his.tmp.aspire.home.net.24512.i on _tiptop failed
| > /usr/src/davem-2.6/net/dccp/ccids/lib/packet_history.c: In function
'__one_after_loss':
| > /usr/src/davem-2.6/net/dccp/ccids/lib/packet_history.c:266: error: lvalue
required as
| > This separates RX/TX initialisation and puts all packet history / loss
intervals
| > initialisation into tfrc.c.
| > The organisation is uniform: slab declaration -> {rx,tx}_init() ->
{rx,tx}_exit()
|
| NAK, you can't call a __exit marked routine from a __init marked
| routine.
|
Ok thanks,
NDUPACK=3 packets to fill the hole;
- updating loss records when a late-arriving packet fills a hole.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
---
net/dccp/ccids/lib/loss_interval.c | 158 ++-
ne
/
fallback RTT value (defined in section 3.4 of RFC 4340 as 0.2 sec); while
at it, the upper bound of 4 seconds for an RTT sample has been reduced to
match the initial TCP RTO value of 3 seconds from[RFC 1122, 4.2.3.1].
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian Mc
value
required as unary '&' operand
/usr/src/davem-2.6/net/dccp/ccids/lib/packet_history.c:337: error: lvalue
required as unary '&' operand
make[4]: *** [net/dccp/ccids/lib/packet_history.o] Error 1
make[3]: *** [net/dccp/ccids/lib] Error 2
make[2]: *** [net/dccp/ccids]
This separates RX/TX initialisation and puts all packet history / loss intervals
initialisation into tfrc.c.
The organisation is uniform: slab declaration -> {rx,tx}_init() ->
{rx,tx}_exit()
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/lib/packet_hist
Just some tidy-ups to keep git/quilt happy. Also moved up the
comment "Receiver routines" above the first occurrence of RX
history routines.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid3.c | 16
net/dccp/ccids/lib
This moves two inlines back to packet_history.h: these are not private
to packet_history.c, but are needed by CCID3/4 to detect whether a new
loss is indicated, or whether a loss is already pending.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/lib/packet_history.c
did.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/lib/packet_history.c | 35 ---
1 files changed, 20 insertions(+), 15 deletions(-)
diff --git a/net/dccp/ccids/lib/packet_history.c
b/net/dccp/ccids/lib/packet_history.c
index 4
-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid3.c |3 +--
net/dccp/ccids/lib/packet_history.c |5 -
2 files changed, 1 insertions(+), 7 deletions(-)
diff --git a/net/dccp/ccids/ccid3.c b/net/dccp/ccids/ccid3.c
index a5246f7..60fcb31 100644
--- a/ne
Some of the recent changes in 2.6.25 cause problems with the existing
implementation (i.e. break
the code). This patch set therefore provides fixes and resubmits one subsequent
patch which
has not been considered so far, but which is part of the tfrc_lib package.
Patch #1: Performs whitespace
| The first six patches in this series are unmodified, so if you
| are OK with them please send me your Signed-off-by.
Patches [1/7], [2/7], and [6/7] already have a signed-off and there are
no changes. Just acknowledged [3..5/7], will look at [7/7] now.
Cheers
Gerrit
--
To unsubscribe from
| Signed-off-by: Arnaldo Carvalho de Melo <[EMAIL PROTECTED]>
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
| Signed-off-by: Arnaldo Carvalho de Melo <[EMAIL PROTECTED]>
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
| Signed-off-by: Arnaldo Carvalho de Melo <[EMAIL PROTECTED]>
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
| Thanks, I folded this into the reorganized RX history handling patch,
| together with reverting ccid3_hc_rx_packet_recv to very close to your
| original patch, with this changes:
|
| 1. no need to calculate the payload size for non data packets as this
|value won't be used.
| 2. Initialize h
feedback packet X_recv (which is ccid3hcrx_bytes_recv / the_time_spent)
is set to 0 (RFC 3448, 6.3).
For this reason, updating bytes_recv for the first data packet is also not
in the flowchart on
http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/ccid3_packet_reception/
--
To unsubscribe from this list: send
| > Patch #3:
| > -
| > Renames s/tfrc_tx_hist/tfrc_tx_hist_slab/g; no problems.
|
| This was for consistency with the other slabs in DCCP:
|
| [EMAIL PROTECTED] net-2.6.25]$ find net/dccp/ -name "*.c" | xargs grep
'struct kmem_cache'
Thanks, I will put the same naming scheme also in
| > In the end this went back to the same questions and issues that were
tackled between
| > February and March this year. I wish we could have had this dicussion then;
it would
| > have made this email unnecessary.
|
| That is why it is important that the changeset comment collects these
| scat
o test for `data packets' as per RFC 4340, sec. 7.7.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
---
net/dccp/ccids/lib/packet_history.c | 126 ---
net/dccp/ccids/lib/
icated tfrc_module source file (this is later populated
with TX/RX hist and LI Database routines);
(2) a dedicated tfrc_pr_debug macro with toggle switch `tfrc_debug'.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
---
en > 0" is redundant (pointed out by
Arnaldo);
* no other code calls this function, hence the inline function can go.
Also replaced the first call to updating s with direct assignment of
`payload_size'; this has also
been pointed out by Arnaldo.
Signed-off-by: Gerrit Renker <[E
Orthogonal to the ongoing discussion of patches, here are updates
of existing ones. This is mainly to keep the test tree in synch;
I'd like to upload the new test tree since -rc4 is out.
Arnaldo has actually pointed out more bugs than I have given him credit for,
these are contained in this patch
Today being Wednesday, below is some feedback after working through the patch
set.
Hope this is helpful.
Patch #1:
-
Several new good points are introduced:
- IP_DCCP_TFRC_DEBUG is made dependent on IP_DCCP_TFRC_DEBUG which is useful
- the select from CONFIG_IP_DCCP_CCID3 => CONFIG
| I found a problem that I'm still investigating if was introduced by this
| patch or if was already present. When sending 1 million 256 byte packets
| with ttcp over loopback, using ccid3 it is crashing, the test machine
| I'm using doesn't have a serial port, its a notebook, will switch to
| anot
Quoting Arnaldo:
| Em Tue, Dec 04, 2007 at 06:55:17AM +, Gerrit Renker escreveu:
| > NAK. You have changed the control flow of the algorithm and the underlying
| > data structure. Originally it had been an array of pointers, and this had
| > been a design decision right from
NAK. You have changed the control flow of the algorithm and the underlying
data structure. Originally it had been an array of pointers, and this had
been a design decision right from the first submissions in March. From I
of
http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/ccid3_packet_reception
e algorithm expressed by you.
|
Agree, that is not always easy to get right. I try to stick as close as
possible to existing conventions but of course that is my
interpretation, so I am already anticipating such changes/comments here.
| think about further automatization on regression testing.
|
If it
> |
| > | It is available at:
| > |
| > | master.kernel.org:/pub/scm/linux/kernel/git/acme/net-2.6.25
| > |
| > Need to do this separately. As said, the code has been developed and tested
over a long time,
| > it took a long while until it acted predictably, so being carefu
NDUPACK=3 packets to fill the hole;
- updating loss records when a late-arriving packet fills a hole.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
---
net/dccp/ccids/lib/loss_interval.c | 158
state changes local to ccid3_hc_tx_packet_recv;
- assigns feedback type according to incident (previously only used flag
`do_feedback').
Further and detailed information is at
http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/ccid3_packet_reception/#8._Computing_X_recv_
Signed-o
automatically track highest-received seqno;
* receiver-based RTT estimation (needed for instance by RFC 3448, 6.3.1);
* a generic function to test for `data packets' as per RFC 4340, sec. 7.7.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian McDonald <[E
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
---
net/dccp/ccids/lib/loss_interval.c |9 ++
net/dccp/ccids/lib/packet_history.c | 162 ---
net/dccp/ccids/lib/packet_history.h | 84 -
This patch changes the tfrc_lib module in the following manner:
(1) a dedicated tfrc_module source file (this is later populated
with TX/RX hist and LI Database routines);
(2) a dedicated tfrc_pr_debug macro with toggle switch `tfrc_debug'.
Signed-off-by: Gerrit Renker <[EMAIL P
/
fallback RTT value (defined in section 3.4 of RFC 4340 as 0.2 sec); while
at it, the upper bound of 4 seconds for an RTT sample has been reduced to
match the initial TCP RTO value of 3 seconds from[RFC 1122, 4.2.3.1].
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian Mc
been documented on
http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/ccid3_packet_reception/
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Arnaldo,
hank you for going through this. I have just backported your recent patches of
2.6.25
to the DCCP/CCID4/Faster Restart test tree at
git://eden-feed.erg.abdn.ac.uk/dccp_exp {dccp,ccid4,dccp_fr}
as per subsequent message.
|do, so please consider moving DCCP discussion t
1 - 100 of 204 matches
Mail list logo