#
342529 |
|
26-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
|
#
342523 |
|
26-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
|
#
342476 |
|
26-Dec-2018 |
arybchik |
MFC r312868
sfxge(4): cleanup: remove unused soft context struct member rxq_cache
Sponsored by: Solarflare Communications, Inc.
|
#
312168 |
|
14-Jan-2017 |
arybchik |
MFC r311977
sfxge(4): add tunable to configure MAC stats update period
Sponsored by: Solarflare Communications, Inc.
|
#
312167 |
|
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.
Reviewed by: philip Sponsored by: Solarflare Communications, Inc.
|
#
311767 |
|
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.
|
#
310830 |
|
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.
|
#
301388 |
|
04-Jun-2016 |
arybchik |
MFC r300607
sfxge(4): cleanup: update copyright to 2016
Sponsored by: Solarflare Communications, Inc.
|
#
301315 |
|
04-Jun-2016 |
arybchik |
MFC r301105
sfxge(4): cope with code duplication on SW events composition
Sponsored by: Solarflare Communications, Inc.
|
#
301314 |
|
04-Jun-2016 |
arybchik |
MFC r301075
sfxge(4): avoid code duplication in SW events definition
Sponsored by: Solarflare Communications, Inc.
|
#
301313 |
|
04-Jun-2016 |
arybchik |
MFC r301067
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.
|
#
294390 |
|
20-Jan-2016 |
arybchik |
MFC r294077
sfxge: support FATSOv2
Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
|
#
293946 |
|
14-Jan-2016 |
arybchik |
MFC r291843
sfxge: support for MCDI logging implemented
Submitted by: Artem V. Andreev <Artem.Andreev at oktetlabs.ru> Sponsored by: Solarflare Communications, Inc.
|
#
292089 |
|
11-Dec-2015 |
arybchik |
sfxge: implement interface statistics shown by netstat
PR: 202907 Submitted by: Boris Misenov <Boris.Misenov at oktetlabs.ru> Reviewed by: gnn, philip Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D4317
|
#
284555 |
|
18-Jun-2015 |
arybchik |
MFC: r283514
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.
|
#
280612 |
|
25-Mar-2015 |
arybchik |
MFC: 280432
sfxge: cleanup: add a blank line before each #if to improve readability
Sponsored by: Solarflare Communications, Inc.
|
#
280606 |
|
25-Mar-2015 |
arybchik |
MFC: 280376
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. Original Differential Revision: https://reviews.freebsd.org/D2081
|
#
280541 |
|
25-Mar-2015 |
arybchik |
MFC: 278940
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)
|
#
280539 |
|
25-Mar-2015 |
arybchik |
MFC: 278939
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)
|
#
280538 |
|
25-Mar-2015 |
arybchik |
MFC: 278938
sfxge: add driver context member with number of transmit queues
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
280524 |
|
25-Mar-2015 |
arybchik |
MFC: 278250
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)
|
#
280522 |
|
25-Mar-2015 |
arybchik |
MFC: 278221
sfxge: Add macros to init, destroy, acquire, release and assert locks
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
280518 |
|
25-Mar-2015 |
arybchik |
MFC: 277894
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)
|
#
280511 |
|
25-Mar-2015 |
arybchik |
MFC: 277887
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)
|
#
280510 |
|
25-Mar-2015 |
arybchik |
MFC: 277886
sfxge: Make it possible to build without EVQ statistics
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
280508 |
|
25-Mar-2015 |
arybchik |
MFC: 277884
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)
|
#
280504 |
|
25-Mar-2015 |
arybchik |
MFC: 272330
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.
|
#
280502 |
|
25-Mar-2015 |
arybchik |
MFC: 272328
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.
|
#
280501 |
|
25-Mar-2015 |
arybchik |
MFC: 272325
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.
|
#
284555 |
|
18-Jun-2015 |
arybchik |
MFC: r283514
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.
|
#
280612 |
|
25-Mar-2015 |
arybchik |
MFC: 280432
sfxge: cleanup: add a blank line before each #if to improve readability
Sponsored by: Solarflare Communications, Inc.
|
#
280606 |
|
25-Mar-2015 |
arybchik |
MFC: 280376
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. Original Differential Revision: https://reviews.freebsd.org/D2081
|
#
280541 |
|
25-Mar-2015 |
arybchik |
MFC: 278940
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)
|
#
280539 |
|
25-Mar-2015 |
arybchik |
MFC: 278939
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)
|
#
280538 |
|
25-Mar-2015 |
arybchik |
MFC: 278938
sfxge: add driver context member with number of transmit queues
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
280524 |
|
25-Mar-2015 |
arybchik |
MFC: 278250
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)
|
#
280522 |
|
25-Mar-2015 |
arybchik |
MFC: 278221
sfxge: Add macros to init, destroy, acquire, release and assert locks
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
280518 |
|
25-Mar-2015 |
arybchik |
MFC: 277894
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)
|
#
280511 |
|
25-Mar-2015 |
arybchik |
MFC: 277887
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)
|
#
280510 |
|
25-Mar-2015 |
arybchik |
MFC: 277886
sfxge: Make it possible to build without EVQ statistics
Sponsored by: Solarflare Communications, Inc. Approved by: gnn (mentor)
|
#
280508 |
|
25-Mar-2015 |
arybchik |
MFC: 277884
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)
|
#
280504 |
|
25-Mar-2015 |
arybchik |
MFC: 272330
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.
|
#
280502 |
|
25-Mar-2015 |
arybchik |
MFC: 272328
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.
|
#
280501 |
|
25-Mar-2015 |
arybchik |
MFC: 272325
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.
|