, which track dependencies and activate negotiated feature values.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
Documentation/networking/dccp.txt | 14 ++
include/linux/dccp.h |5 +
net/dccp/proto.c
for getting/setting CCIDs via sockopts;
(b) replaces the current use in dccp_probe.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccid.h |9 +
net/dccp/probe.c |7 ++-
net/dccp/proto.c |6 ++
3 files changed, 17 insertions(+), 5 deletions(-)
---
regard to integer-sizeof can not be used.
The second switch-case statement now only has those statements which need
locking
and which make use of val.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/proto.c | 39 +--
1 file chang
-negotiation options are now generated for both sender and receiver
coverage, i.e. when the peer has `forgotten' to enable partial coverage
then feature negotiation will automatically enable (negotiate) the partial
coverage value for this connection.
Signed-off-by: Gerrit Renker <[EMAIL P
is useful for
feature negotiation, since the negotiation is now with the full list of
available
CCIDs (e.g. {2, 3}) instead of the default value {2}. This means negotiation
will
not fail if the peer requests to use CCID3 instead of CCID2.
Signed-off-by: Gerrit Renker <[EMAIL PROTEC
hierarchy - when dccp_feat_register_change is called. This is on purpose,
since
it enables to write further functions on top of the latter function without
having
to test for this condition in each calling function.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/feat.c
matched to the choice of CCID.
The patch implements this as a function which is called after the user has made
all other
registrations for changing default values of features.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h |1
net/dccp/feat.c
the Change options sent in the Request, which will be reconciled
with the local preference list of the server.
The concept is documented on
http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/feature_negotiation/implementation_notes.html#ccid_dependencies
Signed-off-by: Gerrit Renker <[EM
[DCCP]: Registration routines for changing feature values
Two registration routines, for SP and NN features, are provided by this patch,
replacing a previous routine which was used for both feature types.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/feat.c
This batch adds the code to register features and ensure that registered
features
are consistent in themselves.
Patch #1: Takes care of the registration of particular feature values.
These registrations need to be made before starting the connection
(before calling connect or
Quoting Rémi Denis-Courmont:
| > | I am having a few API problems now:
| > |
| > | First, TCP-like non-blocking connect() error handling does not seem to
| > | work properly (2.6.22). I don't know if this is an intended difference
| > | from TCP. VLC follows a pretty typical non-blocking con
disables anytime negotiation, subsequent patches work out full
feature negotiation
support for connection setup. (The limitation is later lifted, but requires a
different concept first).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/feat.c | 13 -
1 file chan
old code, this patch removes
timer handling already.
Implementation details indicating why timers are no longer needed can be found
on
http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/feature_negotiation/implementation_notes.html
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
ne
by proper socket
options (setsockopt code for the CCID follows in a later patch).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h | 13 +
net/dccp/proto.c |1 -
2 files changed, 9 insertions(+), 5 deletions(-)
--- a/include/linux/
.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h |4
net/dccp/dccp.h |3 ++-
net/dccp/feat.c | 19 +++
net/dccp/feat.h |1 +
net/dccp/input.c |2 --
net/dccp/ipv4.c |3 ++-
net/dccp/ipv6.c
.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h |9 +++---
net/dccp/feat.c | 72 +++
2 files changed, 77 insertions(+), 4 deletions(-)
--- a/net/dccp/feat.c
+++ b/net/dccp/feat.c
@@ -23,6 +23,76 @@
#
[DCCP]: Cleanup routines for feature negotiation
This inserts the required de-allocation routines for memory allocated
by feature negotiation in the socket destructors.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h |2 ++
net/dccp/ipv4.c |1 +
net/dccp/
cture sizes are an issue, I'd
be willing to
convert to singly-linked list later if necessary (but it would need a tail
pointer).
The NN value has been set to 64 bit, which is a currently sufficient upper
limit (Sequence Window
feature has 48 bit).
Signed-off-by: Gerrit Renker <[EM
[DCCP]: List management for new feature negotiation
This adds list fields and list management functions for the new feature
negotiation implementation. The new code is kept in parallel to the old
code, until removed at the end of the patch set.
Signed-off-by: Gerrit Renker <[EMAIL PROTEC
[DCCP]: Make code assumptions explicit
This removes several `XXX' references which indicate a missing support
for non-1-byte feature values: this is unnecessary, as all currently known
(standardised) SP feature values are 1-byte quantities.
Signed-off-by: Gerrit Renker <[EMAIL P
lid - this needs to be resolved in
a separate patch.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/options.c |6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
--- a/net/dccp/options.c
+++ b/net/dccp/options.c
@@ -125,6 +125,8 @@ int dccp_parse_options
in turn makes
dccp_feat_is_valid_length() unnecessary.
Furthermore, the inline function dccp_feat_is_reserved() was unfolded,
since only called in a single place.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/feat.c | 12
net/dccp/feat.h | 26
This now starts the feature-negotiation code and is the first batch of several.
I have been testing these for quite a while and believe they are bug free.
The concept for feature negotiation is new and mostly mapped onto the 3-way
handshake.
Documentation is on
http://www.erg.abdn.ac.uk/users/ge
eneric routine to finish
inserting
options.
Also removed an `XXX' comment since its content was obvious.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
---
net/dccp/dccp.h|1 +
net/dccp/options.c | 38 +
Quoting Arnaldo Carvalho de Melo:
| I suggest it to become:
|
| [EMAIL PROTECTED] net-2.6.24]$ pahole -C dccp_request_sock
net/dccp/minisocks.o
|
| struct dccp_request_sock {
| struct inet_request_sock dreq_inet_rsk; /* 0 56 */
| __u64 dreq_iss;
| I checked locally:
| > * tcpdump 3.9.5 as Debian package with libpcap 0.9.5 has this
swap-problem
| > * tcpdump 3.9.5 built from tcpdump source, with libpcap 0.9.4 works
correct
| >
| > Can you try tcpdump from source please and check if the problem persists?
|
| Excellent data poin
Quoting Tommi Saviranta:
| > 1 - minor functions from ccid-3.c to ccid-3.h and include it (.h) in
| > the ccid-4.c, as suggested by Ian and Arnaldo
| > 2 - for more complex functions, write a dccp_ccid3_lib.ko, as
| > suggested by arnaldo
|
| There is very little more to say about this,
| Gerrit, so I think that right now for you the best is to continue
| working on your codebase, as I get closer to fill the gap we can talk
| again, no need for you to try to cope with my cherry picking right now.
|
| Comments?
Thanks so much for all the work and consideration you put in, thi
| > This patch addresses the following situation:
| > * timestamps are recorded on the listening socket;
|
| I noticed this, I think it is unaceptable to do that, therefore the best
| thing is to combine the two patches, so as not to introduce a problem
| that is fixed in the following
Oops -
| (9 features x 2 locations
| (local/remote) x 64bit (maximum option size) gives 1152 bytes
It is 1152/8 = 144 bytes, but still too much.
-
To unsubscribe from this list: send the line "unsubscribe dccp" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vge
Quoting Arnaldo Carvalho de Melo:
| > --- a/net/dccp/options.c
| > +++ b/net/dccp/options.c
| > @@ -160,7 +160,7 @@ int dccp_parse_options(struct sock *sk,
| > if (len != 4)
| > goto out_invalid_option;
| >
| > - tse
Ian -
| How about using #if 0, #endif around it to keep the code in the tree
| but not compiled.
|
| This is done a fair bit elsewhere and if never used it gets removed.
this is a good idea actually, the problem that I have with this is it makes the
code look unfinished and hackish, but this
.
Padding of options has been put into a small separate routine, to be shared
among
the two functions. This could also be used as a generic routine to finish
inserting
options.
Also removed an `XXX' comment since its content was obvious.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
--
e work, and possibly some changes; but in can in principle benefit from the
provided code.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h | 25 +
net/dccp/dccp.h |2 +-
net/dccp/ipv4.c |4
net/dccp/ipv6.c
, they will
not be answered; which means that in the presence of retransmission (likely
due to loss and/or other problems), the use of Request/Response RTT sampling
is suspended, so that startup problems here do not propagate.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
ne
code with an
additional argument
for request_socks: if it is non-NULL, options are parsed on the request socket,
otherwise
the normal path (parsing on the sk) is used.
Subsequent patches, which implement feature negotiation during connection
setup, make use
of this facility.
Signed-off-by: G
ot recommended by the RFC, the following codes would be used in
dccp_send_reset() instead, since they all relate to an established DCCP
connection:
* Code 1, "Closed";
* Code 2, "Aborted";
* Code 11, "Aggression Penalty" (12.3).
Signed-off-by: Gerrit Renker <[EM
)
switch statement to fill in the reset code from the DCCP_SKB_CB.
The only thing that has been removed is the call to dst_clone(dst), since
the queue_xmit functions use sk_dst_cache anyway.
I wasn't sure which purpose inet_sk_rebuild_header served, so I left it in.
Signed-off-by: Gerrit R
does not use this (maybe it should).
I think leaving the function in is good, in case someone wants to implement
this.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h |1 -
net/dccp/output.c |1 +
2 files changed, 1 insertion(+), 1 deletion(-)
--- a/net/dccp/
used for reporting option-processing and feature-negotiation
errors.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linux/dccp.h | 14 ++
net/dccp/dccp.h | 14 +-
2 files changed, 19 insertions(+), 9 deletions(-)
--- a/net/dccp/dccp.h
+++ b/ne
A small set of patches to prepare feature negotion, and one miscellaneous one.
I will start step by step, the patches will be put into the test tree after the
last batch has been set (although this time I made sure that patch sets also
compile separately).
Patch #1: Accounting, records an unused f
| > +/* rate-limit for syncs in reply to sequence-invalid packets; RFC 4340,
7.5.4 */
| > +int sysctl_dccp_sync_ratelimit __read_mostly = HZ / 8;
|
| Why the extra spaces/tabs before __read_mostly?
This is for consistency with the sysctls below, the whole paragraph looks like
this:
| Re-submitting my initial patchset for CCID-4, merging them against
| Tommi patcheset and providing some updates/improvements/organization.
Updated and online now at
git-pull git://eden-feed.erg.abdn.ac.uk/dccp_exp ccid4
-
To unsubscribe from this list: send the line "unsubscribe dccp"
I have put the following into the repository and, since in the editor anyway,
done a
s/Copyrithg/Copyright/g
Hope that is ok.
| Signed-off-by: Leandro Sales <[EMAIL PROTECTED]>
|
| Please considerer pulling the following as the final patch for the [PATCH
3/4].
|
| diff -uprN dc
gard to wrapping issues
thanks to a suggestion by Arnaldo.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
---
Documentation/networking/dccp.txt |5 +
include/linux/dccp.h |2 ++
net/dccp/dccp.h
s and comparisons,
the type of ssthresh was changed to matched that of cwnd.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid2.c | 15 +--
net/dccp/ccids/ccid2.h |4 ++--
2 files changed, 7 insertions(+), 12 deletions(-)
--- a/net/dccp/ccids
Sorry for the delay there were local bank holidays here.
| - Rewrite all the patches (from me and Tommi) and resubmit to Gerrit
| as a unique patchset, as suggested by Ian. Besides, ask Gerrit to
| overwrite the current ccid4 branch;
| - Identify and provide common code between ccid-4 and ccid
| > Anyway, I'm already identifying the candidate codes to be shared
| > between ccid3 and ccid4 if you didn't this yet. Another option is wait
| > for gerrit suggestion on this issue and discuss more about that and
| > define a strategy to avoid code repetition.
|
| See? Wait for Gerrit,
Ian McDonald wrote:
| + * 16-20ms to match the typical multimedia inter-frame
interval
| > + * 100ms as a reasonable compromise [default]
| > + * 1000ms corresponds to the lower TCP RTO bound (RFC 2988,
2.4)
| > +
|
| But Linux actually uses 250 m
| On 9/23/07, Arnaldo Carvalho de Melo <[EMAIL PROTECTED]> wrote:
| > Trying to rebuild a proper test setup, so far using just loopback for
| > simple tests I noticed this problem:
| >
| > Who was the last person to touch the DCCP support code in tcpdump? Care
| > to take a look?
| >
| > -
Ian -
| > I have just checked and found out that the negotiation of the "Send ack
vector feature" is not yet
| > implemented. It is not something which can be done with a hack, since the
CCIDs can also be negotiated,
| > so that enabling Ack Vectors depends on the end result of negotiating
| Re-submitting, with hopefully proper tags etc.
|
|
| After discussing the topic on IRC, we figured we need a place to have
| the sources for CCID 4 available for everyone. This way we can finally
| start cooperating on it.
|
The patches applied fine, a new subtree `ccid4' has been creat
| +# The TFRC-SP Library: currently only has CCID 4 as customer
| +config IP_DCCP_TFRC_SP_LIB
| + depends on IP_DCCP_CCID4
| + def_tristate IP_DCCP_CCID4
| +
| +config IP_DCCP_TFRC_SP_DEBUG
| + bool
| + default y if IP_DCCP_CCID4_DEBUG
| +
You can delete these lines
| About the signed-off-by and acked-by, I also don't know its usage,
| but if I understood right, it is a kind of signal of agreement or not
| for something. For me, it is still a little bit confused. Please,
| someone to explain us this issue?
The use is documented in Documentation/Submitti
| You said that will define a specific frequency
| (for instance, every week) that you will do this. Did you already
| define it?
The repository is synced normally every working day from Mon .. Fri,
based on the davem-2.6 tree - not the one used for the merge windows.
-
To unsubscribe from this
Leandro, -
| But when I type git-pull
Warning: I don't know your configuration, but if you are checking out everything
(which is fine), you will get the most recent netdev-tree. This is currently
tracking davem-2.6.git (not davem-2.6.24.git, due to the troubles reported
earlier).
The first thin
Quoting Ian McDonald:
| On 9/13/07, Gerrit Renker <[EMAIL PROTECTED]> wrote:
| > [DCCP]: Fix Request/Response RTT sampling
| >
Thanks for looking at this, but I won't/can't use the sign-off, since
I merged this patch with the one which had the error fixed by this patch.
| > 2. When receiving a connection-Request on a multicast or broadcast
address, no
| > Reset should be generated, to avoid storms of such packets. Instead of
jumping
| > to the `drop' label, the v{4,6}_conn_request functions now return 0.
Below is
| > why in my understanding thi
e there is no such problem, since
DCCP_SOCKOPT_SERVER_TIMEWAIT can not be set on a listening socket, it is by
default off
and not inherited to child sockets.
Lastly, for PASSIVE_2 the situation is simpler, since this is a client-only
state.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
include/linu
[DCCP]: Ignore Ack Vectors / Elapsed Time on DCCP-Request also
Small update with regard to RFC 4340 (references added as documentation):
on Requests, Ack Vectors / Elapsed Time should be ignored.
Length handling of Elapsed Time also simplified.
Signed-off-by: Gerrit Renker <[EMAIL PROTEC
: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/input.c | 12 +---
1 file changed, 5 insertions(+), 7 deletions(-)
--- a/net/dccp/input.c
+++ b/net/dccp/input.c
@@ -329,6 +329,7 @@ static int dccp_rcv_request_sent_state_p
if (dh->dccph_type == DCCP_PKT
[DCCP]: Sequence number wrap-around when sending reset
This replaces normal addition with mod-48 addition so that
sequence number wraparound is respected.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ipv4.c |2 +-
net/dccp/ipv6.c |2 +-
2 files changed, 2 inse
th a code "Too Busy". I haven't been able to
conjure up such a
condition, but it might be good to change the behaviour here also (not
done by this patch).
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ipv4.c | 11 ---
net/dccp/ipv6.c |
While working on something else in DCCP, I noted several bugs, most
of these introduced by me. The present patch set fixes these.
Patch #1: Fixes sequence number wrap-around problems.
Patch #2: Fixes overwriting of Reset codes in dccp_v{4,6}_conn_request
Patch #3: Updates Ack Vector / Elapsed Ti
ilient against different possible
cases
of expressing boolean `true' values using a suggestion by Ian McDonald.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
---
Documentation/networking/dccp.txt |6 +
Quoting Ian McDonald:
| (Resent with updates after Gerrit's review)
|
| This patch set implements TFRC Faster Restart as per current draft.
Thanks, updated the test tree. No time for the other (mine) patches today, will
reply to that later.
-
To unsubscribe from this list: send the line "unsubs
| Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
-
To unsubscribe from this list: send the line "unsubscribe dccp" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
| Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
-
To unsubscribe from this list: send the line "unsubscribe dccp" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Ok, thanks - I am looking forward to further collaboration and patches.
As said, the format of the test tree is not set in stone and I'd be happy to
change it
and discuss alternatives - whichever way is best.
It is also possible to store more stuff - that is what the thing consumes
electrical
| > When there is little or no documentation in the code saying which variable
or piece of
| > code belongs where, then each time someone wants to change a bit of code
has to reverse-
| > engineer what actually is going on. This can be very time-consuming. So I
was not thinking
| > in terms
| > * when updating to the forthcoming rev04 of the current rev03 of the
Faster Restart
| > draft, one needs to track the old changes and it is difficult to say now
what the
| > changes will look like
| >
| Agree. But don't think this is an obstacle to merging as we are
| running obsole
Quoting Ian McDonald:
| > It is comparable but not equivalent, since in the above you are using a
TBF which will change the nature
| > of the traffic. I use the following (with qlen=1):
| >
| > tc qdisc add dev eth0 root handle 1:0 netem delay ${delay}ms
| > tc qdisc add d
A style comment - I like the idea of the extensions and can see your point.
To be true, if the code were analysed for extensions then the rfc344bis-00
extensions would probably also count, as well as the erratum for the SYN
RTT sample.
When using a one-bit flag (which automatically behaves like a
| static inline u64 rfc3390_initial_rate(struct sock *sk)
| {
| const struct ccid3_hc_tx_sock *hctx = ccid3_hc_tx_sk(sk);
| -const __u32 w_init = min_t(__u32, 4 * hctx->ccid3hctx_s,
| +__u32 w_init = min_t(__u32, 4 * hctx->ccid3hctx_s,
| max_t(__
| Set up options for enabling TFRC options. Also add variables for faster
| restart.
|
| Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
I think a small optimisation is possible below:
| +static int ccid3_hc_rx_setsockopt(str
| For faster restart and TFRCbis we need to pass socket options down to
| CCIDs. Add framework in for this.
|
| Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
-
To unsubscribe from this list: send the line "unsubscribe dccp&
Quoting Ian McDonald:
| Just updating copyrights on files I'm working on.
|
| Signed-off-by: Ian McDonald <[EMAIL PROTECTED]>
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
-
To unsubscribe from this list: send the line "unsubscribe dccp" in
the body of a messag
Ian -
| This patch set implements TFRC Faster Restart as per current draft.
I have created a subtree `dccp_fr' which contains all these patches. It can
be pulled via
git pull git://eden-feed.erg.abdn.ac.uk/dccp_exp dccp_fr
and, since it is a subtree of the main tree, it automatically i
| > (I am using different FIFO length since I know from experience that
otherwise the bridge
| > can also incur loss.)
| >
| Can you post scripts for altering the fifo length? Is that equivalent
| to the following for rate-limited? (from test page)
| /sbin/tc qdisc add dev lan0 root handle 1
I have done a few tests with delay / loss, in particular the instances
specified on
http://linux-net.osdl.org/index.php/DCCP_Testing#Regression_testing
Without delay/loss, I get line speed (92.0 Mbps from e100 to e1000, 95.0 Mbps
from e1000 to e100).
This was for t=10 seconds; the foll
For some time I have been working away at improving feature negotiation support,
following a discussion with Ian regarding the disabling of Ack Vectors.
I have found some limitations of the present implementation and would like to
fix
this. There is full documentation on the issues on
http://www
ime of about 11.9 hours, which should be
sufficient for most applications.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h|2 ++
net/dccp/options.c |2 +-
net/dccp/proto.c |2 ++
net/dccp/timer.c | 21 +
4 files changed, 26 inse
The patches look good - I'd be happy to put several directly into the test tree.
With regard to the CCID3 code I'd need to check - I wanted to do some regression
testing also, to see that the recent changes have not affected performance.
Application testing with the test tree is so far ok, not full
| > I can see the following alternatives, what is your stance regarding:
| > (a) keep as it is (probably not agreeing due to this email?)
| > (b) keep principle, but use at socket creation (glitch comes possibly
later, but will still occur)
| > (c) ditch principle and use even lower granula
| > I think I know ... I had the same problems - three computers with e100
cards
| > just froze. It really seems that this is due to a half-finished merge
window.
| >
| Gerrit - this is well worth reporting to netdev mailing list as the
| 2.6.24 later becomes the stable tree. I'm not saying
Quoting Arnaldo Carvalho de Melo:
| > [DCCP]: Provide 10s of microsecond timesource
| >
| > This provides a timesource, conveniently used for DCCP timestamps, which
| > returns the elapsed time in 10s of microseconds since initialisation.
| > This makes for a wrap-around time of about 11.9
| Yes, this is my case and yesterday I used linus-git with your dccp
| code and everything worked fine. Today I pulled from your git tree and
| also worked, but my laptop froze to times and I need to reboot it, I
| don't now why!
|
I think I know ... I had the same problems - three computers wi
present and non-zero or it is not set and equals 0
due to the memset in dccp_parse_options.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid3.c |6 +++---
net/dccp/dccp.h|3 +--
net/dccp/input.c | 44
3
I think I have a workable solution for the RTT samples and I have
tested it with success.
The concept is to use a dccp_epoch again, but to measure it in
units of `hundredths of milliseconds' (that is, 10s of microseconds).
This is native RFC 4340 format, with that the counter wraps around
every 11.
.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/dccp.h|2 ++
net/dccp/options.c |2 +-
net/dccp/proto.c |2 ++
net/dccp/timer.c | 21 +
4 files changed, 26 insertions(+), 1 deletion(-)
--- a/net/dccp/dccp.h
+++ b/net/dccp/dccp.h
@@
imply set to NULL - so that ccid3_hc_tx_update_x() takes care of the logic.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid3.c | 39 ---
1 file changed, 16 insertions(+), 23 deletions(-)
--- a/net/dccp/ccids/ccid3.c
+++ b/net
| The idea is to start the timer when DCCP is loaded. This gives
| 2^32-1 usecs = circa 49 days before the clock wraps around.
Oops, it is not milliseconds but microseconds ... that means the counter
wraps around every 71 seconds. If the maximum RTT is 3 seconds, then this
means wrap-around every
This is an idea-test, not a full patch. But I have found it to work.
The idea is to start the timer when DCCP is loaded. This gives
2^32-1 usecs = circa 49 days before the clock wraps around.
What I have tested is the RTT sampling for the initial SYN RTT and
that worked well with the hack below.
After a bit more testing, I found that this one has one bug.
| @@ -593,22 +591,21 @@ EXPORT_SYMBOL_GPL(dccp_rcv_state_process);
|* @t_recv: receive timestamp of packet with timestamp echo
|* @t_hist: packet history timestamp or NULL
|*/
| -u32 dccp_sample_rtt(struct sock *sk, struct
Sorry this one has a bug also - it compresses a signed 64 bit quantity into a
32-bit unsigned
value. When re-interpreted as microsecond value (in dccp_sample_rtt), this
gives values which
are way too small.
Maybe we should keep the dccp_epoch thing, but now with ktime_t, so as to avoid
large mi
I have updated the test tree to track 2.6.24 with Arnaldo's brandnew interface.
These are the changes to the test tree:
1. Dropped the following patches due to new ktime_t interface:
[CCID3]: Update computation of X to use newer timeofday interface
==> No longer necessary :)
[DCCP]: Si
| At least mine are working again, but versions are very unstable at the
| moment. For example one machine won't run on a 2.6.22 Debian kernel at
| the moment...
I was using the 2.6.24 netdev tree and it produced an oops for the e100 card;
hung when it tried to re-initialise the serial consoles;
Thanks a lot for all the good work - I have updated the test tree with regard to
this changeset, summary of changes follows separately.
There are a few bug fix patches, the most prominent is the Sync Flood one (I
have
put this at the top of the tree, so that it does not depend on the other
patch
is
simply set to NULL - so that ccid3_hc_tx_update_x() takes care of the logic.
Signed-off-by: Gerrit Renker <[EMAIL PROTECTED]>
---
net/dccp/ccids/ccid3.c | 39 ---
1 file changed, 16 insertions(+), 23 deletions(-)
--- a/net/dccp/ccids/ccid3.c
+++ b/ne
| The code was too complicated, if p > 0 in ccid3_hc_tx_no_feedback_timer the
| timestamp was being obtained to be passed to ccid3_hc_tx_update_x, where only
| if p > 0 the timestamp was needed, so just leave it to ccid3_hc_tx_update_x
to
| obtain the timestamp if needed.
The `too complicated'
301 - 400 of 1055 matches
Mail list logo