Page MenuHomeFreeBSD

rrs (Randall Stewart)
User

Projects

User Details

User Since
Jan 22 2015, 5:22 AM (526 w, 9 h)

Recent Activity

Yesterday

rrs accepted D49047: tcp: make inflight data (pipe) calculation consistent.
Wed, Feb 19, 1:24 PM

Tue, Feb 4

rrs accepted D48804: icmp: use per rate limit randomized jitter.
Tue, Feb 4, 1:41 PM

Mon, Feb 3

rrs accepted D48804: icmp: use per rate limit randomized jitter.
Mon, Feb 3, 12:56 PM

Jan 8 2025

rrs accepted D48346: TCP RACK: don't log an uninitialized value.
Jan 8 2025, 6:10 PM
rrs accepted D48341: TCP BBR: remove dead code.

I agree with Peter :)

Jan 8 2025, 6:09 PM

Jan 6 2025

rrs accepted D48340: TCP RACK: fix TCP_RACK_PACING_BETA socket option.
Jan 6 2025, 8:35 PM
rrs accepted D48338: TCP BBR: remove dead code.
Jan 6 2025, 8:21 PM
rrs accepted D48323: TCP BBR: remove dead code.
Jan 6 2025, 2:11 PM
rrs accepted D48322: TCP RACK: fix TCP fast open.
Jan 6 2025, 2:09 PM

Jan 4 2025

rrs accepted D48321: TCP RACK: remove variable with is only initialized and not changed.

old code :)

Jan 4 2025, 6:32 PM
rrs accepted D48320: TCP BBR: remove code not needed.
Jan 4 2025, 6:30 PM
rrs accepted D48312: TCP BBR: simplify expression.
Jan 4 2025, 1:13 PM
rrs accepted D48301: TCP RACK: remove code that cannot be reached.
Jan 4 2025, 1:09 PM

Jan 3 2025

rrs added a comment to D48301: TCP RACK: remove code that cannot be reached.

Are you sure this condition cannot be reached?

Jan 3 2025, 5:50 PM
rrs accepted D48302: TCP BBR: fix integer overflow.
Jan 3 2025, 5:45 PM
rrs accepted D48292: TCP RACK: remove un-needed assignment.
Jan 3 2025, 12:52 PM
rrs accepted D48293: TCP BBR: simplify expression.
Jan 3 2025, 12:51 PM

Jan 2 2025

rrs accepted D48282: TCP RACK: simplify condition.
Jan 2 2025, 3:10 PM
rrs accepted D48281: TCP BBR: do not log an uninitialized value.
Jan 2 2025, 3:09 PM

Jan 1 2025

rrs accepted D48277: TCP RACK: avoid using uninitialized tot_idle variable.
Jan 1 2025, 4:41 PM
rrs accepted D48276: TCP BBR: remove code which is never executed.
Jan 1 2025, 4:41 PM

Dec 31 2024

rrs accepted D48274: TCP BBR: fix condition when sending a tail loss probe.
Dec 31 2024, 8:43 PM
rrs accepted D48273: TCP RACK: add comment.
Dec 31 2024, 8:42 PM
rrs accepted D48261: TCP BBR: fix getsockopt() for TCP_BBR_USEDEL_RATE.
Dec 31 2024, 12:59 PM
rrs accepted D48260: TCP RACK: don't use an uninitialized variable.
Dec 31 2024, 12:59 PM
rrs accepted D48258: TCP RACK, BBR: cleanup of ctf_process_inbound_raw.
Dec 31 2024, 12:57 PM

Dec 30 2024

rrs accepted D48235: tcp: make sack_rxmit in tcp_output() a bool.
Dec 30 2024, 1:10 PM
rrs accepted D48217: TCP RACK, BBR: ensure return value is always ininitialized.
Dec 30 2024, 1:09 PM
rrs accepted D48216: TCP RACK: remove redundant check.
Dec 30 2024, 1:08 PM
rrs accepted D48215: TCP BBR: remove assignments without effect.
Dec 30 2024, 1:07 PM

Dec 19 2024

rrs accepted D48148: tcp: don't ever return ECONNRESET on close(2).
Dec 19 2024, 5:42 PM

Dec 12 2024

rrs added a comment to D47925: tcp_hpts: refactor the per tcpcb call to either input/output method.

Later I'd probably bring the input and output to same KBI, so that both return same signedness error for unlocked return. But this requires a sweeping change over stacks, so later.

Dec 12 2024, 2:34 PM

Dec 11 2024

rrs accepted D47925: tcp_hpts: refactor the per tcpcb call to either input/output method.

Ok after a detailed analysis:

Dec 11 2024, 3:42 PM

Dec 9 2024

rrs accepted D48001: icmp: improve INVARIANTS check.
Dec 9 2024, 7:54 PM

Dec 5 2024

rrs requested changes to D47925: tcp_hpts: refactor the per tcpcb call to either input/output method.
Dec 5 2024, 12:34 PM

Dec 4 2024

rrs added inline comments to D47925: tcp_hpts: refactor the per tcpcb call to either input/output method.
Dec 4 2024, 9:45 PM
rrs added inline comments to D47925: tcp_hpts: refactor the per tcpcb call to either input/output method.
Dec 4 2024, 9:43 PM

Nov 25 2024

rrs accepted D47713: udp: Prefer memcpy() over bcopy.
Nov 25 2024, 4:19 PM

Nov 18 2024

rrs closed D47542: Change the SOCKBUF_LOCK calls to use the more refined SOCK_XXXBUF_LOCK/UNLOCK..
Nov 18 2024, 2:29 PM

Nov 15 2024

rrs committed rG12fc79619aca: Change the SOCKBUF_LOCK calls to use the more refined SOCK_XXXBUF_LOCK/UNLOCK. (authored by rrs).
Change the SOCKBUF_LOCK calls to use the more refined SOCK_XXXBUF_LOCK/UNLOCK.
Nov 15 2024, 5:39 PM
rrs accepted D47542: Change the SOCKBUF_LOCK calls to use the more refined SOCK_XXXBUF_LOCK/UNLOCK..
Nov 15 2024, 5:31 PM
rrs accepted D47401: tcp: don't define and use BBLog function when TCP_BLACKBOX is not defined.

I agree with Michael here, macros badly hide things.. which is their intention :)

Nov 15 2024, 5:28 PM

Nov 13 2024

rrs added reviewers for D47542: Change the SOCKBUF_LOCK calls to use the more refined SOCK_XXXBUF_LOCK/UNLOCK.: glebius, tuexen, rscheff.
Nov 13 2024, 7:02 PM
rrs requested review of D47542: Change the SOCKBUF_LOCK calls to use the more refined SOCK_XXXBUF_LOCK/UNLOCK..
Nov 13 2024, 7:01 PM
rrs accepted D47056: tcp: allow TSO even while RX path is unordered.
Nov 13 2024, 2:56 PM
rrs requested changes to D47056: tcp: allow TSO even while RX path is unordered.
Nov 13 2024, 2:33 PM

Oct 23 2024

rrs accepted D47056: tcp: allow TSO even while RX path is unordered.
Oct 23 2024, 7:56 PM

Aug 20 2024

rrs accepted D46383: tcp: improve consistency.
Aug 20 2024, 6:31 PM
rrs accepted D46378: tcp: initialize the LRO hash table correctly.
Aug 20 2024, 2:40 PM

Aug 9 2024

rrs committed rG872164f559d2: Non-tested experimental code removal. (authored by rrs).
Non-tested experimental code removal.
Aug 9 2024, 1:03 PM
rrs closed D45410: Non-tested experimental code removal..
Aug 9 2024, 1:03 PM

Aug 8 2024

rrs updated the diff for D45410: Non-tested experimental code removal..

Fix what I thought I had fixed i.e. Unused_71 .. but for some reason I missed it ⭕

Aug 8 2024, 5:07 PM
rrs accepted D46244: tcpsso: remove support for TCP_BBR_POLICER_DETECT.
Aug 8 2024, 5:04 PM
rrs updated the diff for D45410: Non-tested experimental code removal..

go through all the enum's and mark UNUSED those that are not used.

Aug 8 2024, 2:43 PM

Aug 5 2024

rrs accepted D46221: tcp_ratelimit: provide a hook for drivers to release ratesets at detach.

I am fine with this Drew, just went through and verified the departure code running earlier should have no impact...

Aug 5 2024, 2:40 PM

Jul 30 2024

rrs accepted D45410: Non-tested experimental code removal..
Jul 30 2024, 6:10 PM

Jul 26 2024

rrs updated the diff for D45410: Non-tested experimental code removal..

This changes the enum, as discussed on a previous conf call to be "UNUSED" still taking the slot. I don't necessarily
agree with that but if everyone else wants it I am fine with it :)

Jul 26 2024, 11:12 AM

Jun 27 2024

rrs updated the diff for D45410: Non-tested experimental code removal..

Take out inadvertent space adds.

Jun 27 2024, 10:28 AM
rrs added inline comments to D45410: Non-tested experimental code removal..
Jun 27 2024, 10:26 AM

Jun 14 2024

rrs updated the diff for D45410: Non-tested experimental code removal..

This gets rid of the defines mentioned by Michael in comments and as prescribed by Gleb on the last TCP conf call i.e.
we comment them out like in other code.

Jun 14 2024, 8:59 AM
rrs closed D45216: Remove TCP_SAD optional code now that the sack filter performs this function..
Jun 14 2024, 8:51 AM

May 31 2024

rrs added reviewers for D45410: Non-tested experimental code removal.: tuexen, rscheff.
May 31 2024, 11:42 AM

May 30 2024

rrs accepted D45412: tcp: remove unused code in tcp_usr_attach.
May 30 2024, 3:25 PM
rrs accepted D45411: tcp: simplify endpoint creation at the passive side.
May 30 2024, 3:23 PM
rrs added a comment to D45410: Non-tested experimental code removal..

rcv-ack-finwait-1-ipv6 PASSED
rcv-fin-finwait-1-ipv4 PASSED
rcv-fin-finwait-1-ipv6 PASSED
rcv-fin-finwait-2-ipv4 PASSED
rcv-fin-finwait-2-ipv6 PASSED
rcv-ack-closing-ipv4 PASSED
rcv-ack-closing-ipv6 PASSED
rcv-ack-last-ack-ipv4 PASSED
rcv-ack-last-ack-ipv6 PASSED
rcv-ack-timewait-ipv4 PASSED
rcv-ack-timewait-ipv6 PASSED
rcv-fin-timewait-ipv4 PASSED
rcv-fin-timewait-ipv6 PASSED
rcv-syn-timewait-ipv4 PASSED

rcv-syn-timewait-ipv6 PASSED

Summary: Number of tests run: 881

Number of tests passed:                 849
Number of tests failed (expected):       32
Number of tests failed (unexpected):      0
Number of tests timed out (expected):     0
Number of tests timed out (unexpected):   0
Number of tests skipped:                  0
May 30 2024, 11:07 AM
rrs requested review of D45410: Non-tested experimental code removal..
May 30 2024, 11:05 AM
rrs accepted D45253: tcp: simplify stack switching protocol.
May 30 2024, 10:57 AM

May 18 2024

rrs committed rGea916b64125b: Remove TCP_SAD optional code now that the sack filter performs this function. (authored by rrs).
Remove TCP_SAD optional code now that the sack filter performs this function.
May 18 2024, 2:59 PM

May 16 2024

rrs requested review of D45216: Remove TCP_SAD optional code now that the sack filter performs this function..
May 16 2024, 12:01 PM

May 11 2024

rrs closed D44903: TCP can be subject to Sack Attacks lets fix this issue..

Committed it: fce03f85c5bf

May 11 2024, 1:34 PM
rrs accepted D45122: tcp rack: do not send a challenge ack in the front stages.
May 11 2024, 1:24 PM

May 5 2024

rrs committed rGfce03f85c5bf: TCP can be subject to Sack Attacks lets fix this issue. (authored by rrs).
TCP can be subject to Sack Attacks lets fix this issue.
May 5 2024, 1:11 PM

May 4 2024

rrs added inline comments to D44903: TCP can be subject to Sack Attacks lets fix this issue..
May 4 2024, 12:59 PM

May 3 2024

rrs updated the diff for D44903: TCP can be subject to Sack Attacks lets fix this issue..

Address all of Richards comments including the one I had to think about it was correct :)

May 3 2024, 1:07 PM
rrs added inline comments to D44903: TCP can be subject to Sack Attacks lets fix this issue..
May 3 2024, 12:48 PM

Apr 30 2024

rrs updated the diff for D44903: TCP can be subject to Sack Attacks lets fix this issue..

One more update, need to use the tcp function call not t_maxseg - 12 to get the maxseg for filtering purposes

Apr 30 2024, 3:56 PM
rrs updated the diff for D44903: TCP can be subject to Sack Attacks lets fix this issue..

Add detailed comments so it is more clear what is going on inside sack_filter.h

Apr 30 2024, 3:41 PM
rrs updated the test plan for D44903: TCP can be subject to Sack Attacks lets fix this issue..
Apr 30 2024, 3:10 PM
rrs updated the diff for D44903: TCP can be subject to Sack Attacks lets fix this issue..

One minor update my user space test did not show a new unused var that my kernel compile shows up. Fix that and
update the test information since I now validated the kernel version as well.

Apr 30 2024, 3:07 PM

Apr 25 2024

rrs updated the diff for D44903: TCP can be subject to Sack Attacks lets fix this issue..

Updated the diff to fix some corner cases and to better handle compile and testing in user space.

Apr 25 2024, 4:34 PM

Apr 22 2024

rrs requested review of D44903: TCP can be subject to Sack Attacks lets fix this issue..
Apr 22 2024, 2:19 PM

Apr 18 2024

rrs accepted D44746: tcp: drop data received after a FIN has been processed.
Apr 18 2024, 3:10 PM
rrs accepted D44648: tcp rack: improve BBR_LOG_CWND event.
Apr 18 2024, 3:06 PM
rrs requested changes to D44746: tcp: drop data received after a FIN has been processed.

Why are you removing the data after close checks in BBR and Rack. This is not related to getting a FIN (where you may
still be open). The point of that is so that if we have closed after dumping data into the SB, and then the peer sends in
a request (not realizing we have closed yet) to NOT send a RST until after all the data is through. This was useful for
NF since often times Nginx will close() a connection after filling the N requests and finishing dumping data into the sb.
It say has 1Meg in the buffer when it does close().

Apr 18 2024, 2:14 PM

Apr 5 2024

rrs accepted D44610: tcp rack: fix sending .
Apr 5 2024, 12:25 PM

Mar 31 2024

rrs added inline comments to D43213: tcp: retry CWR transmission if TSO doesn't support ECN.
Mar 31 2024, 12:07 PM
rrs added inline comments to D43297: tcp: remove superfluous checks for ECN session.
Mar 31 2024, 12:05 PM
rrs added inline comments to D44222: ipsec_accel: handle TSO if supported.
Mar 31 2024, 11:53 AM
rrs accepted D44527: TCP HPTS: improve consistency.
Mar 31 2024, 11:50 AM

Mar 28 2024

rrs committed rGb7b78c1c169d: Optimize HPTS so that little work is done until we have a hpts thread that is… (authored by rrs).
Optimize HPTS so that little work is done until we have a hpts thread that is…
Mar 28 2024, 12:13 PM
rrs closed D44420: Optimize HPTS so that little work is done until we have a hpts thread that is over the connection threshold.
Mar 28 2024, 12:13 PM

Mar 27 2024

rrs updated the diff for D44420: Optimize HPTS so that little work is done until we have a hpts thread that is over the connection threshold.

Add Drew's read_frequently compiler directive.

Mar 27 2024, 11:09 AM

Mar 26 2024

rrs added inline comments to D44420: Optimize HPTS so that little work is done until we have a hpts thread that is over the connection threshold.
Mar 26 2024, 7:43 PM
rrs updated the diff for D44420: Optimize HPTS so that little work is done until we have a hpts thread that is over the connection threshold.

Update to Gleb and I's agreed upon reduction at the if in system.h

Mar 26 2024, 12:27 PM
rrs added a comment to D44420: Optimize HPTS so that little work is done until we have a hpts thread that is over the connection threshold.

My bad, didn't understood proposed change. Of course if pointer stays stable since module load, there is no race.

Mar 26 2024, 11:53 AM

Mar 25 2024

rrs added a comment to D44420: Optimize HPTS so that little work is done until we have a hpts thread that is over the connection threshold.
In D44420#1014587, @rrs wrote:

Why not just use

if (hpts_that_need_softclock > 0)

tcp_hpts_softclock()\

?

But that would create the same race you mentioned above, wouldn't it? IMHO, using function pointer variable is the way to go and it potentially has a chance to get reduced to fewer instructions if compiler gets smarter.

Mar 25 2024, 10:51 PM

Mar 23 2024

rrs added a comment to D44420: Optimize HPTS so that little work is done until we have a hpts thread that is over the connection threshold.

Another issue we will need to address is multiple hpts threads trying to set the tcp_hpts_softclock pointer. One can envision
a case where you have one that is just lowering it to zero, and so goes into the "set" to NULL block. And another thread that
is going from 0 -> 1 and so goes into the set to function block.

Mar 23 2024, 8:08 PM
rrs added a comment to D44420: Optimize HPTS so that little work is done until we have a hpts thread that is over the connection threshold.

Why not just use

Mar 23 2024, 6:57 PM
rrs added a comment to D44420: Optimize HPTS so that little work is done until we have a hpts thread that is over the connection threshold.

Why can't we just clear and set the function pointer itself? That would reduce impact on userret() down to just one instruction.

Mar 23 2024, 11:13 AM

Mar 21 2024

rrs updated the diff for D44420: Optimize HPTS so that little work is done until we have a hpts thread that is over the connection threshold.

I do believe the extern is not needed here since systm.h is included.

Mar 21 2024, 2:24 PM