hiren (hiren panchasara)
User

Projects

User Details

User Since
May 16 2014, 9:03 PM (175 w, 2 d)

Recent Activity

Jun 20 2017

hiren accepted D11016: Add a sysctl to toggle the use of the sockets LOWAT when calculating auto window growth.

I know this has been in prod for quite some time and works. I don't want to engage in "best-practices" for this. :-) LGTM.

Jun 20 2017, 6:12 PM

Jun 6 2017

hiren added reviewers for D11003: Load balance sockets with new SO_REUSEPORT_LB option: adrian, eri.

I am not too sure on details but can this be done with PCBGROUPS/RSS? https://github.com/erikarn/freebsd-rss/ has some examples.

Jun 6 2017, 12:14 AM

May 26 2017

hiren added a reviewer for D10943: Static analysis: Improve DAD deletion code: hrs.
May 26 2017, 10:12 PM

May 25 2017

hiren updated subscribers of D10894: Hystart.

It'd be nice to have a bit of a writeup on what hystart is and how its implemented here.

May 25 2017, 6:41 PM

May 17 2017

hiren accepted D10769: Revert MFC of r313045 from stable/10.

Do mention stable/10 rev also in your commit.

May 17 2017, 5:21 PM

Apr 26 2017

hiren updated subscribers of D10514: Introducing sleepable locks into if_lagg.
Apr 26 2017, 5:45 PM

Apr 20 2017

hiren accepted D10424: Ignore TCP SYN-ACK segments with non-matching SEG.ACK in SYN-SENT state.

Thanks for the explanation. Change looks correct to me just that the code is a bit muddied with this single check moving elsewhere (for the right reasons) and a bit more code duplication in alt stack code. But I think those are out of the scope of this patch.

Apr 20 2017, 8:26 PM
hiren added a comment to D8803: Increasing Virtio driver TX scatter gather segments (VTNET_MIN_TX_SEGS) to support JUMBO MTU frames..

@bryanv do you have time to look at this now?

Apr 20 2017, 6:44 PM

Apr 19 2017

hiren added a comment to D10424: Ignore TCP SYN-ACK segments with non-matching SEG.ACK in SYN-SENT state.

I observed the bug by using a SYN-ACK without any options. The retransmitted SYN does not contain the SACK option anymore. So it wasn't retransmitted.

Apr 19 2017, 12:28 AM

Apr 18 2017

hiren added a comment to D10424: Ignore TCP SYN-ACK segments with non-matching SEG.ACK in SYN-SENT state.

For my understanding, what is the side-effect of this 'partial processing' before we eventually drop it? (I assume we do drop it but later in the path, right?)
Not against the patch but trying to understand what is driving this fix. :-)

Apr 18 2017, 8:54 PM

Apr 14 2017

hiren accepted D10388: ICMP6 rate-limit enhancements.

Very nice work! Thank you.

Apr 14 2017, 3:39 PM

Apr 13 2017

hiren accepted D10351: Restore ability to shutdown datagram sockets.

Other than it not being able to build, I like the var name change requested by Robert and the general approach.

Apr 13 2017, 4:58 PM

Mar 27 2017

hiren accepted D10135: Enable route and LLE (ndp) caching in TCP/IPv6.
Mar 27 2017, 6:58 PM

Mar 7 2017

hiren committed rS314838: Fix the KASSERT check from r314813..
Fix the KASSERT check from r314813.
Mar 7 2017, 6:46 AM
hiren committed rS314813: We've found a recurring problem where some userland process would be.
We've found a recurring problem where some userland process would be
Mar 7 2017, 12:20 AM

Jan 31 2017

hiren requested changes to D9365: Porting utility getaddrinfo from NetBSD.
In D9365#194220, @ae wrote:

I'm curious, you plan to add this code into FreeBSD base tree, not into the contrib section. Do we need to have all these #ifdefs in such case? I doubt that we have all such HAVE_XXX macros defined in our environment. Also we already have removed AppleTalk support from the tree.

Jan 31 2017, 7:58 PM
hiren accepted D9365: Porting utility getaddrinfo from NetBSD.

I'd appreciate another pair of eyes on this.

Jan 31 2017, 7:34 PM

Jan 30 2017

hiren committed rS312976: Man page update to go along with r312907..
Man page update to go along with r312907.
Jan 30 2017, 2:26 AM

Jan 28 2017

hiren updated subscribers of D9365: Porting utility getaddrinfo from NetBSD.
Jan 28 2017, 7:25 AM
hiren added a reviewer for D9365: Porting utility getaddrinfo from NetBSD: vangyzen.
Jan 28 2017, 7:25 AM

Jan 27 2017

hiren committed rS312907: Add a knob to change default behavior of inheriting listen socket's tcp stack.
Add a knob to change default behavior of inheriting listen socket's tcp stack
Jan 27 2017, 11:10 PM

Jan 23 2017

hiren edited reviewers for D9302: Eliminate misleading comments and dead code in lacp_port_create(), added: asomers; removed: hiren.
Jan 23 2017, 2:15 PM

Jan 16 2017

hiren committed rS312277: Add kevent EVFILT_EMPTY for notification when a client has received all data.
Add kevent EVFILT_EMPTY for notification when a client has received all data
Jan 16 2017, 8:25 AM
hiren closed D9150: Add kevent EVFILT_EMPTY for notification when a client has received all data by committing rS312277: Add kevent EVFILT_EMPTY for notification when a client has received all data.
Jan 16 2017, 8:25 AM

Jan 12 2017

hiren resigned from D9150: Add kevent EVFILT_EMPTY for notification when a client has received all data.

Can't actually review as an author of the patch. It'd be nice if someone else can look at it.

Jan 12 2017, 6:44 AM
hiren committed rS311955: MFC r311453.
MFC r311453
Jan 12 2017, 12:51 AM

Jan 6 2017

hiren added a comment to D4227: Implement per-thread counters for PMC sampling.

bump.
Is this still the most updated patch of this work?

Jan 6 2017, 11:25 PM

Jan 5 2017

hiren committed rS311453: sysctl net.inet.tcp.hostcache.list in a jail can see connections from other.
sysctl net.inet.tcp.hostcache.list in a jail can see connections from other
Jan 5 2017, 5:22 PM
hiren retitled D9047: sysctl net.inet.tcp.hostcache.list in a jail can see connections from other jails and the host. Proposed patch fixes that. from to sysctl net.inet.tcp.hostcache.list in a jail can see connections from other jails and the host. Proposed patch fixes that..
Jan 5 2017, 7:20 AM

Jan 4 2017

hiren committed rS311297: MFC r309858.
MFC r309858
Jan 4 2017, 6:03 PM
hiren accepted D9035: Protect calls to mtod() from accessing NULL mbufs.
Jan 4 2017, 2:11 AM

Jan 3 2017

hiren added a comment to D9035: Protect calls to mtod() from accessing NULL mbufs.
In D9035#186666, @gnn wrote:

I could make an uglier macro. If that would please the audience.

Jan 3 2017, 9:02 PM
hiren updated D9035: Protect calls to mtod() from accessing NULL mbufs.
Jan 3 2017, 8:58 PM
hiren added a comment to D9035: Protect calls to mtod() from accessing NULL mbufs.

Is it possible to handle 'm' being null in TCP_PROBE3() instead of these if/else checks everywhere?

Jan 3 2017, 8:58 PM

Dec 15 2016

hiren added a comment to D8667: Fix the handling of FIN segments in the CLOSED state.

Hi Michael, Is this ready to land in -HEAD?

Dec 15 2016, 7:50 PM

Dec 11 2016

hiren committed rS309859: MFC r307745.
MFC r307745
Dec 11 2016, 11:36 PM
hiren committed rS309858: We currently don't do TSO if ip options are present. In case of IPv6, we look at.
We currently don't do TSO if ip options are present. In case of IPv6, we look at
Dec 11 2016, 11:15 PM

Dec 10 2016

hiren added a comment to D8737: TSO handling in IPv6 when ip options are present..
In D8737#181056, @bz wrote:

Seems like this is a more conservative solution to avoid possible offload problems.

There's a couple of other things the came to my mind or I spotted in that code but for the sake of "just fixing" this looks right.

Right. This is fixing the *obvious* bug. Please let me know what else you have in mind and that way its logged for myself of someone else to pick up.

Dec 10 2016, 12:15 AM

Dec 9 2016

hiren added a comment to D8737: TSO handling in IPv6 when ip options are present..

[skip]

@kmacy suspects there might be drivers/firmware that cannot handle this but we haven't gone and dug any examples of that up. If that is the case, we should disable TSO on any packet with IP options set as the current code does, but additionally check for a flag on the output interface indicating that incompatibility.

Dec 9 2016, 7:29 AM

Dec 8 2016

hiren added a reviewer for D8737: TSO handling in IPv6 when ip options are present.: ae.
Dec 8 2016, 11:54 PM
hiren retitled D8737: TSO handling in IPv6 when ip options are present. from to TSO handling in IPv6 when ip options are present..
Dec 8 2016, 11:53 PM

Dec 5 2016

hiren committed rS309548: MFC r308943.
MFC r308943
Dec 5 2016, 6:20 AM

Dec 1 2016

hiren accepted D8667: Fix the handling of FIN segments in the CLOSED state.
Dec 1 2016, 11:13 PM

Nov 21 2016

hiren committed rS308944: r308942 broke kernel build..
r308942 broke kernel build.
Nov 21 2016, 9:07 PM
hiren closed D8552: Ignore ACKs with tsecr 0 during 3whs in syncache code. by committing rS308943: For RTT calculations mid-session, we explicitly ignore ACKs with tsecr of 0 as.
Nov 21 2016, 8:53 PM
hiren committed rS308943: For RTT calculations mid-session, we explicitly ignore ACKs with tsecr of 0 as.
For RTT calculations mid-session, we explicitly ignore ACKs with tsecr of 0 as
Nov 21 2016, 8:53 PM

Nov 18 2016

hiren accepted D8556: Fix spurious retransmit recovery on low latency networks.

Thanks for this fix. Nice catch.

Nov 18 2016, 4:32 AM · network

Nov 17 2016

hiren added a comment to D8552: Ignore ACKs with tsecr 0 during 3whs in syncache code..
  • If we find a matching syncache entry, but there is a problem with validating it (e.g. RST, etc.), ignore it.

Hum, can you please provide an example of this? what could 3rd maching ack bring that doesn't validate? I am probably missing something obvious.

Nov 17 2016, 11:59 PM
hiren added a comment to D8552: Ignore ACKs with tsecr 0 during 3whs in syncache code..
In D8552#177689, @jtl wrote:

Hiren,

Thanks for finding this bug and proposing a solution! Your solution looks fine in the sense that it mimics the rest of the behavior of this function when validation fails.

However, I think this function (and tcp_input(), which calls it) actually do the wrong thing. I believe the correct behavior should be:

  • If we have a matching and valid syncache entry, setup the connection.
  • If we do not find a matching connection, send a RST.
Nov 17 2016, 11:11 PM
hiren updated D8552: Ignore ACKs with tsecr 0 during 3whs in syncache code..
Nov 17 2016, 9:44 PM
hiren retitled D8552: Ignore ACKs with tsecr 0 during 3whs in syncache code. from to Ignore ACKs with tsecr 0 during 3whs in syncache code..
Nov 17 2016, 9:35 PM

Nov 15 2016

hiren committed rS308701: MFC r302474 (By gnn).
MFC r302474 (By gnn)
Nov 15 2016, 10:19 PM

Nov 14 2016

hiren accepted D8371: Improve handling of TCP RST segments in CLOSING and LAST-ACK state.
Nov 14 2016, 9:46 PM

Nov 1 2016

hiren committed rS308184: MFC r307545.
MFC r307545
Nov 1 2016, 10:40 PM
hiren committed rS308180: Set slow start threshold more accurately on loss to be flightsize/2 instead of.
Set slow start threshold more accurately on loss to be flightsize/2 instead of
Nov 1 2016, 9:09 PM
hiren closed D8349: Setting ssthresh more accurately on loss. by committing rS308180: Set slow start threshold more accurately on loss to be flightsize/2 instead of.
Nov 1 2016, 9:09 PM

Oct 31 2016

hiren updated the diff for D8349: Setting ssthresh more accurately on loss..

Also restore pre-r307901 behavior of alighning ssthresh on MSS boundary.

Oct 31 2016, 10:32 PM

Oct 27 2016

hiren added a comment to D8349: Setting ssthresh more accurately on loss..

This is a bug exposed by recent commit https://svnweb.freebsd.org/base?view=revision&revision=307901

Oct 27 2016, 8:44 PM

Oct 26 2016

hiren retitled D8349: Setting ssthresh more accurately on loss. from to Setting ssthresh more accurately on loss..
Oct 26 2016, 10:40 PM

Oct 25 2016

hiren committed rS307901: FreeBSD tcp stack used to inform respective congestion control module about the.
FreeBSD tcp stack used to inform respective congestion control module about the
Oct 25 2016, 5:46 AM
hiren committed rS307900: Undo r307899. It needs a bit more work and proper commit log..
Undo r307899. It needs a bit more work and proper commit log.
Oct 25 2016, 5:08 AM
hiren committed rS307899: In Collaboration with: Matt Macy <mmacy at nextbsd dot com>.
In Collaboration with: Matt Macy <mmacy at nextbsd dot com>
Oct 25 2016, 5:03 AM
hiren closed D8225: Let congestion control algorithms decide congestion window. by committing rS307899: In Collaboration with: Matt Macy <mmacy at nextbsd dot com>.
Oct 25 2016, 5:03 AM

Oct 23 2016

hiren accepted D7821: Preserve ECN bits when merging frames in LRO.

Talked to @rstone about adding some comments to make code more readable.

Oct 23 2016, 11:34 PM

Oct 22 2016

hiren added a comment to D8225: Let congestion control algorithms decide congestion window..

I tried running a few loss scenarios with various available CC algos and nothing seem broken. Loss scenarios include : dropping a single packet, dropping a bunch of packets, dropping a lot of packets to create severe loss situation, ack loss, etc.

Oct 22 2016, 8:01 AM

Oct 21 2016

hiren committed rS307745: Rework r306337..
Rework r306337.
Oct 21 2016, 6:27 PM
hiren closed D8152: Rework: Fix to avoid potential mbuf leak in network stack, if userland sends control messages to bad file descriptors. by committing rS307745: Rework r306337..
Oct 21 2016, 6:27 PM
hiren updated the diff for D8225: Let congestion control algorithms decide congestion window..

Changing snd_cwnd tracking variable's name from win to cwin and its type to uint32_t.
I'll run all my tests tomorrow and update here with results.

Oct 21 2016, 6:36 AM

Oct 19 2016

hiren updated D8279: Provide individual RTT measurements to CC algos..
Oct 19 2016, 12:32 AM

Oct 18 2016

hiren retitled D8279: Provide individual RTT measurements to CC algos. from A way to get individual RTT measurements. to Provide individual RTT measurements to CC algos..
Oct 18 2016, 10:06 PM
hiren retitled D8279: Provide individual RTT measurements to CC algos. from to A way to get individual RTT measurements..
Oct 18 2016, 10:04 PM
hiren closed D8272: Make sure tcp_mss() has the same check as tcp_mss_update() to have t_maxseg set to at least 64. by committing rS307545: Make sure tcp_mss() has the same check as tcp_mss_update() to have t_maxseg set.
Oct 18 2016, 2:40 AM
hiren committed rS307545: Make sure tcp_mss() has the same check as tcp_mss_update() to have t_maxseg set.
Make sure tcp_mss() has the same check as tcp_mss_update() to have t_maxseg set
Oct 18 2016, 2:40 AM

Oct 17 2016

hiren retitled D8272: Make sure tcp_mss() has the same check as tcp_mss_update() to have t_maxseg set to at least 64. from to Make sure tcp_mss() has the same check as tcp_mss_update() to have t_maxseg set to at least 64..
Oct 17 2016, 10:13 PM
hiren added a comment to D7986: Simplify cubic_ack_received.

@kmacy Can you please looks at my comments? I like the changes otherwise.

Oct 17 2016, 8:03 PM
hiren added a comment to D8225: Let congestion control algorithms decide congestion window..

Ping!

Oct 17 2016, 8:01 PM

Oct 14 2016

hiren added reviewers for D8253: Cubic changes for improved loss recovery.: rrs, lstewart.
Oct 14 2016, 6:51 PM
hiren retitled D8253: Cubic changes for improved loss recovery. from to Cubic changes for improved loss recovery..
Oct 14 2016, 6:49 PM
hiren committed rS307242: MFC r306464.
MFC r306464
Oct 14 2016, 1:38 AM

Oct 12 2016

hiren added inline comments to D8219: Remove TFO from the packet processing path when the kernel is not configured with TCP_RFC7413.
Oct 12 2016, 5:01 PM
hiren retitled D8225: Let congestion control algorithms decide congestion window. from to Let congestion control algorithms decide congestion window..
Oct 12 2016, 6:19 AM
hiren accepted D8072: Remove an extraneous call to soisconnected() in syncache_socket(), introduced with r261242..

As Kevin mentioned, this looks good on prod traffic at llnw.

Oct 12 2016, 1:03 AM

Oct 11 2016

hiren accepted D8219: Remove TFO from the packet processing path when the kernel is not configured with TCP_RFC7413.
Oct 11 2016, 11:54 PM
hiren accepted D8219: Remove TFO from the packet processing path when the kernel is not configured with TCP_RFC7413.

Thanks for fixing these corner-cases. :-)

Oct 11 2016, 4:03 PM

Oct 9 2016

hiren added a comment to D7986: Simplify cubic_ack_received.

@kmacy, about the exception you noted, I am a little puzzled.
a state where min_rtt_ticks is zero but we are *not* in slowstart - could still be processed in the old code if other rfc3465 conditions align as the guarding 'if' looks like this:

Oct 9 2016, 8:04 AM
hiren accepted D8199: Remove extra space between point to point links and netmask in ifconfig output.
Oct 9 2016, 2:58 AM

Oct 7 2016

hiren accepted D8185: Add compile-time option to activate hhook(9) framework for TCP.

You may want to briefly list pros/cons of having or not having the framework so people can decide whether its worth including it.

Oct 7 2016, 7:11 PM

Oct 4 2016

hiren updated subscribers of D4366: convert tcp timestamps to scaled sbintime.
Oct 4 2016, 12:46 AM · transport
hiren added a reviewer for D4366: convert tcp timestamps to scaled sbintime: rrs.
Oct 4 2016, 12:45 AM · transport

Sep 30 2016

hiren committed rS306517: MFC r304855.
MFC r304855
Sep 30 2016, 6:14 PM
hiren committed rS306464: This adds a sysctl which allows you to disable the TCP hostcache. This is handy.
This adds a sysctl which allows you to disable the TCP hostcache. This is handy
Sep 30 2016, 12:11 AM
hiren closed D6198: Add sysctl to disable the TCP hostcache by committing rS306464: This adds a sysctl which allows you to disable the TCP hostcache. This is handy.
Sep 30 2016, 12:11 AM

Sep 28 2016

hiren accepted D8053: Properly preserve ip_tos bits for IPv4 packets.

And I agree that it'd be nice if cleanup comes as a separate commit.

Sep 28 2016, 2:34 PM

Sep 26 2016

hiren committed rS306348: Revert r306337. dhw@ reproted a panic which seems related to this and bde@ has.
Revert r306337. dhw@ reproted a panic which seems related to this and bde@ has
Sep 26 2016, 3:45 PM
hiren closed D7910: Fix to avoid potential mbuf leak in network stack, if userland sends control messages to bad file descriptors. by committing rS306337: In sendit(), if mp->msg_control is present, then in sockargs() we are allocating.
Sep 26 2016, 10:14 AM
hiren committed rS306337: In sendit(), if mp->msg_control is present, then in sockargs() we are allocating.
In sendit(), if mp->msg_control is present, then in sockargs() we are allocating
Sep 26 2016, 10:14 AM

Sep 24 2016

hiren added a reviewer for D8021: Correctness fixes to Cubic : lstewart.
Sep 24 2016, 12:26 AM

Sep 18 2016

hiren accepted D7910: Fix to avoid potential mbuf leak in network stack, if userland sends control messages to bad file descriptors..

Thanks Lohith for the patch.

Sep 18 2016, 7:14 PM
hiren added a reviewer for D7910: Fix to avoid potential mbuf leak in network stack, if userland sends control messages to bad file descriptors.: network.
Sep 18 2016, 12:02 AM

Sep 16 2016

hiren committed rS305853: MFC r301522 (by bz).
MFC r301522 (by bz)
Sep 16 2016, 12:14 AM