#
342455 |
|
25-Dec-2018 |
arybchik |
MFC r341785
sfxge(4): use n Tx queues instead of n + 2 on EF10 HW
On EF10 HW we can avoid sending packets without checksum offload or with IP-only checksum offload to dedicated queues. Instead, we can use option descriptors to change offload policy on any queue during runtime. Thus, we don't need to create two dedicated queues.
Submitted by: Ivan Malov <Ivan.Malov at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18390
|
#
342452 |
|
25-Dec-2018 |
arybchik |
MFC r341782
sfxge(4): populate per-event queue stats in sysctl
In order to find out why the first event queue and corresponding interrupt is triggered more frequent, it is useful to know which events go to each event queue.
Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18418
|
#
342403 |
|
25-Dec-2018 |
arybchik |
MFC r312868
sfxge(4): cleanup: remove unused soft context struct member rxq_cache
Sponsored by: Solarflare Communications, Inc.
|
#
331722 |
|
29-Mar-2018 |
eadler |
Revert r330897:
This was intended to be a non-functional change. It wasn't. The commit message was thus wrong. In addition it broke arm, and merged crypto related code.
Revert with prejudice.
This revert skips files touched in r316370 since that commit was since MFCed. This revert also skips files that require $FreeBSD$ property changes.
Thank you to those who helped me get out of this mess including but not limited to gonzo, kevans, rgrimes.
Requested by: gjb (re)
|
#
330897 |
|
14-Mar-2018 |
eadler |
Partial merge of the SPDX changes
These changes are incomplete but are making it difficult to determine what other changes can/should be merged.
No objections from: pfg
|
#
312160 |
|
14-Jan-2017 |
arybchik |
MFC r311977
sfxge(4): add tunable to configure MAC stats update period
Sponsored by: Solarflare Communications, Inc.
|
#
312159 |
|
14-Jan-2017 |
arybchik |
MFC r311962
sfxge(4): stats refresh in SW should depend on HW update period
The period should be taken into account by the function which refreshes driver stats.
Sponsored by: Solarflare Communications, Inc.
|
#
311764 |
|
09-Jan-2017 |
arybchik |
MFC r311639
sfxge(4): treat EFX_LINK_UNKOWN as link down
It is safer to consider EFX_LINK_UNKNOWN as link down. link_mode is set to EFX_LINK_UNKNOWN on port stop and fini.
Sponsored by: Solarflare Communications, Inc.
|
#
310831 |
|
30-Dec-2016 |
arybchik |
MFC r310627
sfxge(4): do not limit driver RSS table to RSS channels max
Specification of entire RSS table in the driver allows to spread traffic more equally across CPUs/RSS channels if number of RSS channels is not power of 2.
Sponsored by: Solarflare Communications, Inc.
|
#
302408 |
|
07-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
301105 |
|
01-Jun-2016 |
arybchik |
sfxge(4): cope with code duplication on SW events composition
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D6666
|
#
301075 |
|
31-May-2016 |
arybchik |
sfxge(4): avoid code duplication in SW events definition
Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D6662
|
#
301067 |
|
31-May-2016 |
arybchik |
sfxge(4): move definition of the SW events to sfxge.h
Tx flush done event is defined and Rx-specific header is not a good place for it.
Sponsored by: Solarflare Communications, Inc. MFC after: 2 days
|
#
300607 |
|
24-May-2016 |
arybchik |
sfxge(4): cleanup: update copyright to 2016
Sponsored by: Solarflare Communications, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D6509
|
#
294996 |
|
28-Jan-2016 |
glebius |
Use m_getjcl() instead of manually selecting zone.
Reviewed by: arybchik
|
#
294077 |
|
15-Jan-2016 |
arybchik |
sfxge: support FATSOv2
Reviewed by: gnn Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4934
|
#
291843 |
|
05-Dec-2015 |
arybchik |
sfxge: support for MCDI logging implemented
Submitted by: Artem V. Andreev <Artem.Andreev at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D4355
|
#
283514 |
|
25-May-2015 |
arybchik |
sfxge: add 7xxx NICs family support
Support 7xxx adapters including firmware-assisted TSO and VLAN tagging:
- Solarflare Flareon Ultra 7000 series 10/40G adapters: - Solarflare SFN7042Q QSFP+ Server Adapter - Solarflare SFN7142Q QSFP+ Server Adapter
- Solarflare Flareon Ultra 7000 series 10G adapters: - Solarflare SFN7022F SFP+ Server Adapter - Solarflare SFN7122F SFP+ Server Adapter - Solarflare SFN7322F Precision Time Synchronization Server Adapter
- Solarflare Flareon 7000 series 10G adapters: - Solarflare SFN7002F SFP+ Server Adapter
Support utilities to configure adapters and update firmware.
The work is done by Solarflare developers (Andy Moreton, Andrew Lee and many others), Artem V. Andreev <Artem.Andreev at oktetlabs.ru> and me.
Sponsored by: Solarflare Communications, Inc. MFC after: 2 weeks Causually read by: gnn Differential Revision: https://reviews.freebsd.org/D2618
|
#
280432 |
|
24-Mar-2015 |
arybchik |
sfxge: cleanup: add a blank line before each #if to improve readability
Sponsored by: Solarflare Communications, Inc.
|
#
280376 |
|
23-Mar-2015 |
arybchik |
sfxge: remove obsolete Tx non-multi queue support
Tx multi queue is added in FreeBSD 8.0. So, the changeset drops earlier versions support.
Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D2081
|
#
279184 |
|
22-Feb-2015 |
arybchik |
sfxge: implement if_get_counter callback
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
278940 |
|
18-Feb-2015 |
arybchik |
sfxge: add driver context member with number of event queues
Mainly to unify with similar member for transmit and receive queues. It will be used in the future for resources allocation processing.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
278939 |
|
18-Feb-2015 |
arybchik |
sfxge: add driver context member with number of receive queues
Mainly to unify with similar member for transmit queues.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
278938 |
|
18-Feb-2015 |
arybchik |
sfxge: add driver context member with number of transmit queues
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
278250 |
|
05-Feb-2015 |
arybchik |
sfxge: make lock names unique
Lock name should include interface name. Tx queue and event queue lock name should include queue number.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
278221 |
|
04-Feb-2015 |
arybchik |
sfxge: Add macros to init, destroy, acquire, release and assert locks
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
277894 |
|
29-Jan-2015 |
arybchik |
sfxge: implemented parameter to restrict RSS channels
Submitted by: Artem V. Andreev <Artem.Andreev at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
277887 |
|
29-Jan-2015 |
arybchik |
sfxge: Remove extra cache-line alignment and reorder sfxge_evq_t
Remove the first member alignment to cacheline since it is nop. Use __aligned() for the whole structure to make sure that the structure size is cacheline aligned. Remove lock alignment to make the structure smaller and fit all members used on event queue processing into one cacheline (128 bytes) on x86-64. The lock is obtained as well from different context when event queue statistics are retrived from sysctl context, but it is infrequent. Reorder members to avoid padding and go in usage order on event processing. As the result all structure members used on event queue processing fit into exactly one cacheline (128 byte) now.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
277886 |
|
29-Jan-2015 |
arybchik |
sfxge: Make it possible to build without EVQ statistics
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
277884 |
|
29-Jan-2015 |
arybchik |
sfxge: Change sfxge_ev_qpoll() proto to avoid EVQ pointers array access
It was the only place on data path where sc->evq array is accessed.
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
272330 |
|
30-Sep-2014 |
gnn |
The patch allows to check state of the software Tx queues at run time.
Submitted by: Andrew Rybchenko <arybchenko at solarflare.com> Sponsored by: Solarflare Communications, Inc.
|
#
272328 |
|
30-Sep-2014 |
gnn |
Make size of Tx and Rx rings configurable
Required size of event queue is calculated now.
Submitted by: Andrew Rybchenko <arybchenko at solarflare.com> Sponsored by: Solarflare Communications, Inc.
|
#
272325 |
|
30-Sep-2014 |
gnn |
cleanup: code style fixes
Remove trailing whitespaces and tabs. Enclose value in return statements in parentheses. Use tabs after #define. Do not skip comparison with 0/NULL in boolean expressions.
Submitted by: Andrew Rybchenko <arybchenko at solarflare.com> Sponsored by: Solarflare Communications, Inc.
|
#
257176 |
|
26-Oct-2013 |
glebius |
The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare to this event, adding if_var.h to files that do need it. Also, include all includes that now are included due to implicit pollution via if_var.h
Sponsored by: Netflix Sponsored by: Nginx, Inc.
|
#
227700 |
|
19-Nov-2011 |
philip |
sfxge: Remove interrupt self-test code
It's not currently used; it didn't build on 32-bit and the previous build fix is incorrect. If we really implement self-tests we can do this again properly.
Submitted by: Ben Hutchings <bwh -at- solarflare.com> MFC after: 3 weeks
|
#
227569 |
|
16-Nov-2011 |
philip |
Add the sfxge(4) device driver, providing support for 10Gb Ethernet adapters based on Solarflare SFC9000 family controllers. The driver supports jumbo frames, transmit/receive checksum offload, TCP Segmentation Offload (TSO), Large Receive Offload (LRO), VLAN checksum offload, VLAN TSO, and Receive Side Scaling (RSS) using MSI-X interrupts.
This work was sponsored by Solarflare Communications, Inc.
My sincere thanks to Ben Hutchings for doing a lot of the hard work!
Sponsored by: Solarflare Communications, Inc. MFC after: 3 weeks
|