Check-in [88e74cc560]
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:rate 0 bug?
Timelines: family | ancestors | trunk | closed
Files: files | file ages | folders
SHA1: 88e74cc560a81959f240db9926683f7f6559cdae
User & Date: bernd 2011-12-25 17:50:36
Context
2011-12-25
17:50
rate 0 bug? Closed-Leaf check-in: 88e74cc560 user: bernd tags: trunk, closed
16:54
use j^ for job context check-in: abc44a2ac6 user: bernd tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to net2o-cmd.fs.

198
199
200
201
202
203
204

205

206
207
208
209
210
211
212
213
...
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
' ack-lastb ,

: ack-timing ( n -- )
    2/ 3 and cells ack-timetable + perform ;
: .rate ( n -- n ) rate( dup . ." rate" cr ) ;

also net2o-base

: >rate ( -- )  j^ ack-sizes @ 0= ?EXIT

    j^ delta-ticks @ #1000 j^ ack-sizes @ 1 max */ .rate
    lit, set-rate
    j^ delta-ticks off  j^ ack-sizes off ;

: net2o:acktime ( -- )
    dest-addr @ -$20 and inbuf c@ $F and or lit, ticks lit, ack-addrtime ;
: net2o:ackrange ( -- )
    j^ data-ack $@ dup IF
................................................................................
\    net2o:acktime

    inbuf 1+ c@ acks# and
    dup j^ ack-receive !@ xor ack-toggle# and
    IF
	net2o:genack
	inbuf 1+ c@ ack-timing
	net2o:do-resend
\	net2o:sendack
\	send-ack# and IF
\	    r@ pending-ack @ 0= IF
\		['] net2o:do-resend #1000000 add-queue
\	    THEN
\	    r@ pending-ack on
	\	THEN
	EXIT
    THEN
    inbuf 1+ c@ ack-timing ;
' net2o:do-ack IS do-ack

previous







>
|
>
|







 







|
|












198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
...
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
' ack-lastb ,

: ack-timing ( n -- )
    2/ 3 and cells ack-timetable + perform ;
: .rate ( n -- n ) rate( dup . ." rate" cr ) ;

also net2o-base
: >rate ( -- )
    j^ ack-sizes @ 0= ?EXIT
    j^ delta-ticks @ 0= ?EXIT
    j^ delta-ticks @ #1000 j^ ack-sizes @ */ .rate
    lit, set-rate
    j^ delta-ticks off  j^ ack-sizes off ;

: net2o:acktime ( -- )
    dest-addr @ -$20 and inbuf c@ $F and or lit, ticks lit, ack-addrtime ;
: net2o:ackrange ( -- )
    j^ data-ack $@ dup IF
................................................................................
\    net2o:acktime

    inbuf 1+ c@ acks# and
    dup j^ ack-receive !@ xor ack-toggle# and
    IF
	net2o:genack
	inbuf 1+ c@ ack-timing
\	net2o:do-resend
	net2o:sendack
\	send-ack# and IF
\	    r@ pending-ack @ 0= IF
\		['] net2o:do-resend #1000000 add-queue
\	    THEN
\	    r@ pending-ack on
	\	THEN
	EXIT
    THEN
    inbuf 1+ c@ ack-timing ;
' net2o:do-ack IS do-ack

previous