#
c012cfe6 |
| 28-Mar-2020 |
Ed Maste <emaste@FreeBSD.org> |
sys/netinet: remove spurious doubled ;s
|
#
16b90565 |
| 10-Mar-2020 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r358731 through r358831.
|
#
98085bae |
| 09-Mar-2020 |
Andrew Gallatin <gallatin@FreeBSD.org> |
make lacp's use_numa hashing aware of send tags
When I did the use_numa support, I missed the fact that there is a separate hash function for send tag nic selection. So when use_numa is enabled, ktl
make lacp's use_numa hashing aware of send tags
When I did the use_numa support, I missed the fact that there is a separate hash function for send tag nic selection. So when use_numa is enabled, ktls offload does not work properly, as it does not reliably allocate a send tag on the proper egress nic since different egress nics are selected for send-tag allocation and packet transmit. To fix this, this change:
- refectors lacp_select_tx_port_by_hash() and lacp_select_tx_port() to make lacp_select_tx_port_by_hash() always called by lacp_select_tx_port()
- pre-shifts flowids to convert them to hashes when calling lacp_select_tx_port_by_hash()
- adds a numa_domain field to if_snd_tag_alloc_params
- plumbs the numa domain into places where we allocate send tags
In testing with NIC TLS setup on a NUMA machine, I see thousands of output errors before the change when enabling kern.ipc.tls.ifnet.permitted=1. After the change, I see no errors, and I see the NIC sysctl counters showing active TLS offload sessions.
Reviewed by: rrs, hselasky, jhb Sponsored by: Netflix
show more ...
|
#
75dfc66c |
| 27-Feb-2020 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r358269 through r358399.
|
#
7029da5c |
| 26-Feb-2020 |
Pawel Biernacki <kaktus@FreeBSD.org> |
Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)
r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that are still not MPSAFE (or already are but aren’t properly mark
Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)
r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that are still not MPSAFE (or already are but aren’t properly marked). Use it in preparation for a general review of all nodes.
This is non-functional change that adds annotations to SYSCTL_NODE and SYSCTL_PROC nodes using one of the soon-to-be-required flags.
Mark all obvious cases as MPSAFE. All entries that haven't been marked as MPSAFE before are by default marked as NEEDGIANT
Approved by: kib (mentor, blanket) Commented by: kib, gallatin, melifaro Differential Revision: https://reviews.freebsd.org/D23718
show more ...
|
#
d7313dc6 |
| 26-Feb-2020 |
Randall Stewart <rrs@FreeBSD.org> |
This commit expands tcp_ratelimit to be able to handle cards like the mlx-c5 and c6 that require a "setup" routine before the tcp_ratelimit code can declare and use a rate. I add the setup routine to
This commit expands tcp_ratelimit to be able to handle cards like the mlx-c5 and c6 that require a "setup" routine before the tcp_ratelimit code can declare and use a rate. I add the setup routine to if_var as well as fix tcp_ratelimit to call it. I also revisit the rates so that in the case of a mlx card of type c5/6 we will use about 100 rates concentrated in the range where the most gain can be had (1-200Mbps). Note that I have tested these on a c5 and they work and perform well. In fact in an unloaded system they pace right to the correct rate (great job mlx!). There will be a further commit here from Hans that will add the respective changes to the mlx driver to support this work (which I was testing with).
Sponsored by: Netflix Inc. Differential Revision: ttps://reviews.freebsd.org/D23647
show more ...
|
#
44e86fbd |
| 13-Feb-2020 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r357662 through r357854.
|
#
348404bc |
| 12-Feb-2020 |
Randall Stewart <rrs@FreeBSD.org> |
Lets get the real correct version.. gessh. I need more coffee evidently.
Sponsored by: Netflix
|
#
b8f8a6b7 |
| 12-Feb-2020 |
Randall Stewart <rrs@FreeBSD.org> |
Opps committed the wrong ratelimit version in the whitespace cleanup.. Restore it to the proper version.
Sponsored by: Netfilx Inc.
|
#
481be5de |
| 12-Feb-2020 |
Randall Stewart <rrs@FreeBSD.org> |
White space cleanup -- remove trailing tab's or spaces from any line.
Sponsored by: Netflix Inc.
|
#
df341f59 |
| 12-Feb-2020 |
Randall Stewart <rrs@FreeBSD.org> |
Whitespace, remove from three files trailing white space (leftover presents from emacs).
Sponsored by: Netflix Inc.
|
#
ed0282f4 |
| 15-Jan-2020 |
Gleb Smirnoff <glebius@FreeBSD.org> |
A miss from r356754.
|
#
2a4bd982 |
| 15-Jan-2020 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Introduce NET_EPOCH_CALL() macro and use it everywhere where we free data based on the network epoch. The macro reverses the argument order of epoch_call(9) - first function, then its argument. NFC
|
#
b1328235 |
| 15-Jan-2020 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Use official macro to enter/exit the network epoch. NFC
|
#
8fd73e91 |
| 15-Jan-2020 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Since this code dereferences struct ifnet, it must include if_var.h explicitly, not via header pollution. While here move TCPSTATES declaration right above the include that is going to make use of i
Since this code dereferences struct ifnet, it must include if_var.h explicitly, not via header pollution. While here move TCPSTATES declaration right above the include that is going to make use of it.
show more ...
|
#
9cdc43b1 |
| 15-Jan-2020 |
Gleb Smirnoff <glebius@FreeBSD.org> |
The non-preemptible network epoch identified by net_epoch isn't used. This code definitely meant net_epoch_preempt.
|
Revision tags: release/12.1.0 |
|
#
eabddb25 |
| 09-Oct-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Factor out TCP rateset destruction code.
Ensure the epoch_call() function is not called more than one time before the callback has been executed, by always checking the RS_FUNERAL_SCHD flag before i
Factor out TCP rateset destruction code.
Ensure the epoch_call() function is not called more than one time before the callback has been executed, by always checking the RS_FUNERAL_SCHD flag before invoking epoch_call().
The "rs_number_dead" is balanced again after r353353.
Discussed with: rrs@ Sponsored by: Mellanox Technologies
show more ...
|
#
24be1353 |
| 09-Oct-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Fix locking order reversal in the TCP ratelimit code by moving destructors outside the rsmtx mutex.
Witness message: lock order reversal: (sleepable after non-sleepable) 1st tcp_rs_mtx (rsmtx) @
Fix locking order reversal in the TCP ratelimit code by moving destructors outside the rsmtx mutex.
Witness message: lock order reversal: (sleepable after non-sleepable) 1st tcp_rs_mtx (rsmtx) @ sys/netinet/tcp_ratelimit.c:242 2nd sysctl lock (sysctl lock) @ sys/kern/kern_sysctl.c:607
Backtrace: witness_debugger witness_checkorder _rm_wlock_debug sysctl_ctx_free rs_destroy epoch_call_task gtaskqueue_run_locked gtaskqueue_thread_loop
Discussed with: rrs@ Sponsored by: Mellanox Technologies
show more ...
|
#
61c1328e |
| 13-Sep-2019 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r352105 through r352307.
|
#
6f32ca19 |
| 11-Sep-2019 |
Randall Stewart <rrs@FreeBSD.org> |
With the recent commit of ktls, we no longer have a sb_tls_flags, its just the sb_flags. Also the ratelimit code, now that the defintion is in sockbuf.h, does not need the ktls.h file (or its predece
With the recent commit of ktls, we no longer have a sb_tls_flags, its just the sb_flags. Also the ratelimit code, now that the defintion is in sockbuf.h, does not need the ktls.h file (or its predecessor).
Sponsored by: Netflix Inc
show more ...
|
#
c5c3ba6b |
| 03-Sep-2019 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r351317 through r351731.
|
#
15ddc5e4 |
| 26-Aug-2019 |
Michael Tuexen <tuexen@FreeBSD.org> |
Don't hold the rs_mtx lock while calling malloc().
Reviewed by: rrs@ Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D21416
|
#
903c4ee6 |
| 03-Aug-2019 |
Xin LI <delphij@FreeBSD.org> |
Fix !INET build.
|
#
99c311c4 |
| 02-Aug-2019 |
Randall Stewart <rrs@FreeBSD.org> |
Fix one more atomic for i86 Obtained from: mtuexen@freebsd.org
|
#
a1589eb8 |
| 01-Aug-2019 |
Randall Stewart <rrs@FreeBSD.org> |
Opps use fetchadd_u64 not long to keep old 32 bit platforms happy.
|