]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
8 years agoMFC r293813
arybchik [Thu, 14 Jan 2016 16:26:42 +0000 (16:26 +0000)]
MFC r293813

sfxge: define FATSOv2 option descriptors

Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293812
arybchik [Thu, 14 Jan 2016 16:25:45 +0000 (16:25 +0000)]
MFC r293812

sfxge: add Medford firmware subtypes definitions

Pulled firmware_ids.h from firmwaresrc and applied genfwdef script.

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293811
arybchik [Thu, 14 Jan 2016 16:25:10 +0000 (16:25 +0000)]
MFC r293811

sfxge: support MC_CMD_GET_CAPABILITIES_V2

Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293810
arybchik [Thu, 14 Jan 2016 16:24:18 +0000 (16:24 +0000)]
MFC r293810

sfxge: simplify conversion of NVRAM types to/from partition ids

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293809
arybchik [Thu, 14 Jan 2016 16:21:58 +0000 (16:21 +0000)]
MFC r293809

sfxge: simplify MCDI request start

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293808
arybchik [Thu, 14 Jan 2016 16:20:52 +0000 (16:20 +0000)]
MFC r293808

sfxge: note VI_SHIFT reported in ALLOC_VIS response

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293807
arybchik [Thu, 14 Jan 2016 16:19:58 +0000 (16:19 +0000)]
MFC r293807

sfxge: rework RX prefix handling in the common code

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293806
arybchik [Thu, 14 Jan 2016 16:19:01 +0000 (16:19 +0000)]
MFC r293806

sfxge: remove unused common code EFSYS_OPT_RX_HDR_SPLIT

The EFSYS_OPT_RX_HDR_SPLIT optional feature in the common code
implemented the Lookahead Split feature of Windows. This split
received packets at a preconfigured byte offset, and delivered
the header and payload portions to separate receive queues.

Now the common code interface has no callers, so remove it.

Note that this should not be confused with the Header Data Split
feature of Windows, which splits packets at a header boundary.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293805
arybchik [Thu, 14 Jan 2016 16:18:04 +0000 (16:18 +0000)]
MFC r293805

sfxge: rename common hunt NIC methods to ef10

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293774
arybchik [Thu, 14 Jan 2016 16:15:19 +0000 (16:15 +0000)]
MFC r293774

sfxge: regenerate MCDI header

Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293773
arybchik [Thu, 14 Jan 2016 16:14:41 +0000 (16:14 +0000)]
MFC r293773

sfxge: remove obsolete lookahead split RXQ support

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293772
arybchik [Thu, 14 Jan 2016 16:14:04 +0000 (16:14 +0000)]
MFC r293772

sfxge: pass context type and num_queues to efx_mcdi_rss_context_alloc

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293770
arybchik [Thu, 14 Jan 2016 16:13:18 +0000 (16:13 +0000)]
MFC r293770

sfxge: cleanup: use consistent types for NVRAM partitions

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293769
arybchik [Thu, 14 Jan 2016 16:12:14 +0000 (16:12 +0000)]
MFC r293769

sfxge: fix interrupt handling for Medford

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293768
arybchik [Thu, 14 Jan 2016 16:10:57 +0000 (16:10 +0000)]
MFC r293768

sfxge: update NVRAM partition lookup for Medford

Prior to Medford, option ROM config was stored with one partition
per network port. Medford stores option ROM config in a single
partition (as an array of configurations, one per PF).

Update the EFXname /port to MCDI partition mapping for this.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293767
arybchik [Thu, 14 Jan 2016 16:10:01 +0000 (16:10 +0000)]
MFC r293767

sfxge: cleanup: improve consistency in efx_check.h

Make error messages consistent, and remove redundant checks.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293766
arybchik [Thu, 14 Jan 2016 16:09:09 +0000 (16:09 +0000)]
MFC r293766

sfxge: remove obsolete efx_mac_hash_set() from common code

This API has been replaced by efx_mac_multicast_list_set()
and has no callers.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293765
arybchik [Thu, 14 Jan 2016 16:08:32 +0000 (16:08 +0000)]
MFC r293765

sfxge: rework MCDI header version handling

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293764
arybchik [Thu, 14 Jan 2016 16:07:29 +0000 (16:07 +0000)]
MFC r293764

sfxge: rename hunt filter methods, types etc. to ef10 and use for Medford

New filters types may be added, but the same machinery should be able to
handle them.

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293763
arybchik [Thu, 14 Jan 2016 16:06:51 +0000 (16:06 +0000)]
MFC r293763

sfxge: add definitions for compressed satellite images to common code headers

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293762
arybchik [Thu, 14 Jan 2016 16:06:17 +0000 (16:06 +0000)]
MFC r293762

sfxge: add new MCDI sensors to common code

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293761
arybchik [Thu, 14 Jan 2016 16:05:33 +0000 (16:05 +0000)]
MFC r293761

sfxge: remove unnecessary pulling out of soft bits from RX events

These bits are changed on Medford.

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293758
arybchik [Thu, 14 Jan 2016 16:04:50 +0000 (16:04 +0000)]
MFC r293758

sfxge: remove obsolete common code PKTFILTER module

The pktfilter module has been obsolete for some time, as
it was replaced by newer features in filter module. With
the removal of the storport driver, this module has no
users and can be removed.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293757
arybchik [Thu, 14 Jan 2016 16:03:24 +0000 (16:03 +0000)]
MFC r293757

sfxge: rename hunt MCDI methods to ef10 and use for Medford

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293756
arybchik [Thu, 14 Jan 2016 16:02:15 +0000 (16:02 +0000)]
MFC r293756

sfxge: rename hunt nvram methods and use for Medford

Some new partitions have been added, but they shouldn't need to be
handled any differently.

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293755
arybchik [Thu, 14 Jan 2016 16:01:32 +0000 (16:01 +0000)]
MFC r293755

sfxge: rename Huntington VPD methods to ef10 and use for Medford

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293754
arybchik [Thu, 14 Jan 2016 16:00:35 +0000 (16:00 +0000)]
MFC r293754

sfxge: rename hunt RX methods to ef10 and use for Medford

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293753
arybchik [Thu, 14 Jan 2016 15:59:08 +0000 (15:59 +0000)]
MFC r293753

sfxge: rename hunt TX methods to ef10 and use for Medford

Rename all except hunt_tx_qdesc_tso_create(), which creates a
fw-assisted TSO v1 descriptor which isn't supported on Medford.

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293752
arybchik [Thu, 14 Jan 2016 15:58:30 +0000 (15:58 +0000)]
MFC r293752

sfxge: rename hunt ev methods to ef10 and use for Medford

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293751
arybchik [Thu, 14 Jan 2016 15:57:55 +0000 (15:57 +0000)]
MFC r293751

sfxge: rename hunt interrupt methods to ef10 and use on Medford

All of these apply to both Huntington and Medford.

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293750
arybchik [Thu, 14 Jan 2016 15:56:53 +0000 (15:56 +0000)]
MFC r293750

sfxge: update SRAM methods to be no-ops on Medford as well

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293749
arybchik [Thu, 14 Jan 2016 15:55:54 +0000 (15:55 +0000)]
MFC r293749

sfxge: use NIC config in place of some Huntington specific PIO constants

This should allow these functions to work for Medford as well.

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293748
arybchik [Thu, 14 Jan 2016 15:55:15 +0000 (15:55 +0000)]
MFC r293748

sfxge: change hunt specific fields of efx_nic_t to ef10

All these fields will be used in shared ef10 code, so put them in an
ef10 member of a per-architecture union, rather that in the per-chip
union.

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293740
arybchik [Thu, 14 Jan 2016 15:54:13 +0000 (15:54 +0000)]
MFC r293740

sfxge: update autogenerated monitors lists

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293734
arybchik [Thu, 14 Jan 2016 15:52:44 +0000 (15:52 +0000)]
MFC r293734

sfxge: add medford_impl.h, medford_nic.c, ef10_impl.h

Creating some files together to do the build system changes in one go.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293733
arybchik [Thu, 14 Jan 2016 15:50:13 +0000 (15:50 +0000)]
MFC r293733

sfxge: add Medford sensor support

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293732
arybchik [Thu, 14 Jan 2016 15:49:15 +0000 (15:49 +0000)]
MFC r293732

sfxge: use MCDIv2 on Medford

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293731
arybchik [Thu, 14 Jan 2016 15:48:10 +0000 (15:48 +0000)]
MFC r293731

sfxge: add Medford PCI IDs to common code

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293730
arybchik [Thu, 14 Jan 2016 15:46:53 +0000 (15:46 +0000)]
MFC r293730

sfxge: add sanity checking for EFX_OPT_MEDFORD build option to efx_check.h

Submitted by:   Mark Spender <mspender at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293658
arybchik [Thu, 14 Jan 2016 15:45:47 +0000 (15:45 +0000)]
MFC r293658

sfxge: add Medford build option disabled by default

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292090
arybchik [Thu, 14 Jan 2016 15:44:07 +0000 (15:44 +0000)]
MFC r292090

sfxge: unify MCDI response polling

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    philip
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292088
arybchik [Thu, 14 Jan 2016 15:42:37 +0000 (15:42 +0000)]
MFC r292088

sfxge: simplify MCDI methods

It is a part of MCDI rework to share more code among NIC families.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292086
arybchik [Thu, 14 Jan 2016 15:41:03 +0000 (15:41 +0000)]
MFC r292086

sfxge: add tunable for maximum start attetmps after reset

Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292055
arybchik [Thu, 14 Jan 2016 15:33:50 +0000 (15:33 +0000)]
MFC r292055

sfxge: consolidate privilege check functions

To reduce code duplication in common code, consolidate similar privilege
check functions.

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292053
arybchik [Thu, 14 Jan 2016 15:33:13 +0000 (15:33 +0000)]
MFC r292053

sfxge: cleanup: fix header

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292052
arybchik [Thu, 14 Jan 2016 15:32:24 +0000 (15:32 +0000)]
MFC r292052

sfxge: simplify privilege checks with macro

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292010
arybchik [Thu, 14 Jan 2016 15:30:46 +0000 (15:30 +0000)]
MFC r292010

sfxge: cleanup: removed unused variable

Submitted by:   Artem V. Andreev <Artem.Andreev at oktetlabs.ru>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292009
arybchik [Thu, 14 Jan 2016 15:29:40 +0000 (15:29 +0000)]
MFC r292009

sfxge: cleanup: fix (unused) EFX_OR_BYTE macro

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292008
arybchik [Thu, 14 Jan 2016 15:28:46 +0000 (15:28 +0000)]
MFC r292008

sfxge: use MAC spoofing TX and MAC change privileges

Update of common code to provide a query on the MAC_SPOOFING_TX and
CHANGE_MAC privileges instead of the deprecated MAC_SPOOFING privilege.

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292051
arybchik [Thu, 14 Jan 2016 15:27:49 +0000 (15:27 +0000)]
MFC r292051

sfxge: [6/6] support for MCDI proxy authorization in common code

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292050
arybchik [Thu, 14 Jan 2016 15:26:58 +0000 (15:26 +0000)]
MFC r292050

sfxge: [5/6] rework event completion error handling

Required for MCDI proxy authorization support.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r292007
arybchik [Thu, 14 Jan 2016 15:26:06 +0000 (15:26 +0000)]
MFC r292007

sfxge: [4/6] rework MCDI response polling

Required for MCDI proxy authorization support.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291985
arybchik [Thu, 14 Jan 2016 15:25:17 +0000 (15:25 +0000)]
MFC r291985

sfxge: [3/6] rework MCDI response handling

Required for MCDI proxy authorization support.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291928
arybchik [Thu, 14 Jan 2016 15:24:15 +0000 (15:24 +0000)]
MFC r291928

sfxge: [2/6] rework MCDI response polling

Required to support MCDI proxy authorization.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291927
arybchik [Thu, 14 Jan 2016 15:23:23 +0000 (15:23 +0000)]
MFC r291927

sfxge: [1/6] add common code MCDI proxy auth build option

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291926
arybchik [Thu, 14 Jan 2016 15:22:31 +0000 (15:22 +0000)]
MFC r291926

sfxge: fix pointer parameter/value signedness mismatch warnings

TLV routines use 'uint8_t *', NVRAM code uses caddr_t. Just cast to
required type to fix the warning.

Required to build with -Werror=pointer-signg.

Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291925
arybchik [Thu, 14 Jan 2016 15:21:51 +0000 (15:21 +0000)]
MFC r291925

sfxge: fix name conflict with crc32_table from sys/crc32.h

The header is not present on FreeBSD, but exists on OmniOS where sfxge
common code is used as well.

Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291924
arybchik [Thu, 14 Jan 2016 15:16:24 +0000 (15:16 +0000)]
MFC r291924

sfxge: switch to TxQ creation specific flags

It is better do not mix TxQ creation and receive event flags since only
checksum flags are applicable to TxQ.
Also it will allow to add a new TxQ creation specific flags.

Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291923
arybchik [Thu, 14 Jan 2016 15:15:01 +0000 (15:15 +0000)]
MFC r291923

sfxge: [Sorrento] support writing of MUM firmware

When writing the MUM firmware the chunk size must be equal to the erase
size.

Submitted by:   Laurence Evans <levans at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291922
arybchik [Thu, 14 Jan 2016 15:13:54 +0000 (15:13 +0000)]
MFC r291922

sfxge: support PERMIT_SET_MAC_WHEN_FILTERS_INSTALLED flag

Use flag on vadapter alloc when reported as a supported capability.
Use the slow device reset only when the capability is missing.

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291862
arybchik [Thu, 14 Jan 2016 15:12:48 +0000 (15:12 +0000)]
MFC r291862

sfxge: erase nvram partitions in chunks equal to their erase size

The erase size is reported by the nvram info command.

Submitted by:   Paul Fox <pfox at solarflare.com>
Reviewed by:    gnn
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291849
arybchik [Thu, 14 Jan 2016 15:11:56 +0000 (15:11 +0000)]
MFC r291849

sfxge: pick up the new TLV structures

The header is auto-generated from firmware sources.

Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291848
arybchik [Thu, 14 Jan 2016 15:11:19 +0000 (15:11 +0000)]
MFC r291848

sfxge: cleanup: remove set but not used trailer variable

Required to build with -Werror=unused-but-set-variable.

Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291847
arybchik [Thu, 14 Jan 2016 15:10:35 +0000 (15:10 +0000)]
MFC r291847

sfxge: cleanup: remove set but not used variable with parse error indication

Required to build with -Werror=unused-but-set-variable.
Keep it under #if 0 as a reminder for parse error processing.

Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291846
arybchik [Thu, 14 Jan 2016 15:08:48 +0000 (15:08 +0000)]
MFC r291846

sfxge: cleanup: remove set but not used saved_spec variable

Required to build with -Werror=unused-but-set-variable.

Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291845
arybchik [Thu, 14 Jan 2016 15:08:10 +0000 (15:08 +0000)]
MFC r291845

sfxge: cleanup: remove SFL9122 "Huntington" PCI IDs

The SFL9122 "Huntington" controller was never built.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291843
arybchik [Thu, 14 Jan 2016 15:07:02 +0000 (15:07 +0000)]
MFC r291843

sfxge: support for MCDI logging implemented

Submitted by:   Artem V. Andreev <Artem.Andreev at oktetlabs.ru>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291747
arybchik [Thu, 14 Jan 2016 14:35:46 +0000 (14:35 +0000)]
MFC r291747

sfxge: [EF10] support RxQ scattering control

If, for example, a VF is configured to use a 1500 byte MTU, but the port
it is attached to is set to 9000 bytes, overlength frames can be received
by the VF. As Huntington scatters by default, these overlength packets
would be scattered across several descriptors, with all except the last
having the CONT bit set.

To avoid this, disable scatter when creating RXQs if the firmware
supports doing so, which all recent versions do. Then we only get
a single descriptor from an overlength frame. This will have the CONT
bit set to indicate it was truncated, so we can discard it.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291746
arybchik [Thu, 14 Jan 2016 14:34:47 +0000 (14:34 +0000)]
MFC r291746

sfxge: add additional WRITESIZE value for NVRAM_INFO command

Submitted by:   Paul Fox <pfox at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291682
arybchik [Thu, 14 Jan 2016 14:33:30 +0000 (14:33 +0000)]
MFC r291682

sfxge: regenerate MCDI headers

Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291680
arybchik [Thu, 14 Jan 2016 14:32:21 +0000 (14:32 +0000)]
MFC r291680

sfxge: remove internal register definitions that should not be used by host code

Submitted by:   Guido Barzini <gbarzini at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291679
arybchik [Thu, 14 Jan 2016 14:31:41 +0000 (14:31 +0000)]
MFC r291679

sfxge: add markers for autogenerated defines

Move use defines outside.

Submitted by:   Guido Barzini <gbarzini at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291678
arybchik [Thu, 14 Jan 2016 14:30:25 +0000 (14:30 +0000)]
MFC r291678

sfxge: sync TLV layout headers with firmwaresrc for event merging config

Submitted by:   Tom Millington <tmillington at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291677
arybchik [Thu, 14 Jan 2016 14:28:30 +0000 (14:28 +0000)]
MFC r291677

sfxge: add MCDI logging support to common code

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291590
arybchik [Thu, 14 Jan 2016 14:27:20 +0000 (14:27 +0000)]
MFC r291590

sfxge: retry VF vAdaptor allocation if it fails because of no EVB port yet

After an MC reboot, a VF driver may reset before the PF driver has
finished bringing everything back up. This includes the VFs EVB port.
MC_CMD_VADAPTOR_ALLOC is the first MCDI call after an MC reboot to
require the EVB port, so if it fails with MC_CMD_ERR_NO_EVB_PORT,
retry the command a few times after waiting a while.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291588
arybchik [Thu, 14 Jan 2016 14:25:49 +0000 (14:25 +0000)]
MFC r291588

sfxge: add function to query link control privilege

Make link control privilege visible to OS driver to guard updates to
flow control and PHY advertised capabilities.

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291587
arybchik [Thu, 14 Jan 2016 14:25:07 +0000 (14:25 +0000)]
MFC r291587

sfxge: FPGA and FPGA backup (diagnostic) partitions added to hunt_parttbl

It allows manftest to program them.

Submitted by:   Paul Fox <pfox at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291586
arybchik [Thu, 14 Jan 2016 14:24:25 +0000 (14:24 +0000)]
MFC r291586

sfxge: allow VFs to have locally administered MAC addresses

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291585
arybchik [Thu, 14 Jan 2016 14:23:38 +0000 (14:23 +0000)]
MFC r291585

sfxge: support MAC spoofing for 4.2.x firmare

Common code should infer other privileges from Admin privilege to
support firmware that pre-dates introduction of specific privilege
flags.

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291584
arybchik [Thu, 14 Jan 2016 14:22:16 +0000 (14:22 +0000)]
MFC r291584

sfxge: parse packets for TSO early in if_transmit

Submitted by:   Artem V. Andreev <Artem.Andreev at oktetlabs.ru>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293357:
garga [Thu, 14 Jan 2016 14:21:43 +0000 (14:21 +0000)]
MFC r293357:

Obsolete inetd related files when WITHOUT_INETD is set

Reviewed by: bapt
Approved by: gnn
Sponsored by: Rubiconn Communications (Netgate)
Differential Revision: https://reviews.freebsd.org/D4742

8 years agoMFC r291570
arybchik [Thu, 14 Jan 2016 14:20:33 +0000 (14:20 +0000)]
MFC r291570

sfxge: added setting TSO-related parameters

Submitted by:   Artem V. Andreev <Artem.Andreev at oktetlabs.ru>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291569
arybchik [Thu, 14 Jan 2016 14:19:03 +0000 (14:19 +0000)]
MFC r291569

sfxge: avoid TSO packets collapses if packet header uses 2 segments

It is really observed in the case of VLAN over sfxge interface.
Also this change makes total value equal to 35 which is default assumed
by the kernel for if_hw_tsomaxsegcount.

Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r293312:
garga [Thu, 14 Jan 2016 14:18:10 +0000 (14:18 +0000)]
MFC r293312:

Make cap_mkdb and services_mkdb file operations sync

Similar fix was done for passwd and group operations in r285050. When a
temporary file is created and then renamed to replace official file there
are no checks to make sure data was written to disk and if a power cycle
happens at this time, system can end up with a 0 length file

Approved by: bapt
Sponsored by: Netgate
Differential Revision: https://reviews.freebsd.org/D2982

8 years agoMFC r291488
arybchik [Thu, 14 Jan 2016 14:17:05 +0000 (14:17 +0000)]
MFC r291488

sfxge: avoid TSO packets collapses bacause of not 2K aligned data

Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291436
arybchik [Thu, 14 Jan 2016 14:16:26 +0000 (14:16 +0000)]
MFC r291436

sfxge: add prefast annotation to common code return types

Using a typedef for common code return types (rather than "int")
allows the Prefast static analyser to understand when a function
has been successful (and thus when its postconditions must hold).

This greatly reduces then number of false positives reported by
prefast for error paths in common code functions.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291434
arybchik [Thu, 14 Jan 2016 14:15:07 +0000 (14:15 +0000)]
MFC r291434

sfxge: cleanup: fix prefast annotations on mac stats updates

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291432
arybchik [Thu, 14 Jan 2016 14:14:00 +0000 (14:14 +0000)]
MFC r291432

sfxge: modify nvram update functions for uio platform to support
RFID-selectable presets

Dynamic config partitions on boards that support RFID are divided into
a number of segments, each formatted like a partition, with header,
trailer and end tags. The first segment is the current active
configuration.

The segments are initialised by manftest and each contain a different
configuration e.g. firmware variant. The firmware can be instructed
via RFID to copy a segment over the first segment, hence changing the
active configuration. This allows ops to change the configuration of
a board prior to shipment using RFID.

Changes to the dynamic config may need to be written to all segments (in
particular firmware versions written by manftest) or just the first
segment (changes to the active configuration). See SF-111324-SW.
If only the first segment is written the code still needs to be aware of
the possible presence of subsequent segments as writing to a segment may
cause its size to increase, which would overwrite the subsequent
segments and invalidate them.

Boards that do not support RFID will only have one segment in their
dynamic config partition.

Submitted by:   Paul Fox <pfox at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291398
arybchik [Thu, 14 Jan 2016 14:13:13 +0000 (14:13 +0000)]
MFC r291398

sfxge: cleanup: report error on failure path in efx_vpd_hunk_verify

If the VPD is corrupt and contains an 'RV' keyword before the
END tag, then this function could return without setting the
return code to report the error.

Found by prefast.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291397
arybchik [Thu, 14 Jan 2016 14:11:56 +0000 (14:11 +0000)]
MFC r291397

sfxge: cleanup: fix prefast annotations on mac stats updates

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291396
arybchik [Thu, 14 Jan 2016 14:10:28 +0000 (14:10 +0000)]
MFC r291396

sfxge: fix prefast warning in falconsiena_tx_qcreate

Keep prefast happy by returning the initial queue index
from falconsiena_tx_qcreate(). No change in behaviour, as
etxo_qcreate already zeros *addedp before the call.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291395
arybchik [Thu, 14 Jan 2016 14:09:40 +0000 (14:09 +0000)]
MFC r291395

sfxge: cleanup: fix prefast annotations for stats buffers

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291394
arybchik [Thu, 14 Jan 2016 14:08:57 +0000 (14:08 +0000)]
MFC r291394

sfxge: unlink PIO buffers from VIs in WC mapping in hunt_nic_fini()

PIO is not yet supported in the FreeBSD driver.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291393
arybchik [Thu, 14 Jan 2016 14:08:13 +0000 (14:08 +0000)]
MFC r291393

sfxge: infer external port numbering for Pavia

Adjust external port mapping table to distinguish Pavia from Monza.
Now the presence of any 40G mode implies at least 2 outputs per
external port.  So Pavia 4x10G ports are now mapped to 1,2,3,4;
Monza 4x10G ports map to 1,1,2,2 as before.

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291392
arybchik [Thu, 14 Jan 2016 14:05:00 +0000 (14:05 +0000)]
MFC r291392

sfxge: cleanup: fix prefast annotation

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291391
arybchik [Thu, 14 Jan 2016 14:04:08 +0000 (14:04 +0000)]
MFC r291391

sfxge: do not use unnamed union in siena_mc_combo_rom_hdr_t

GCC 4.2.1 used on FreeBSD 8 and 9 branches does not like unnamed
union member in the structure. It is not strictly required in head,
but nice to have to minimize difference with out-of-tree driver.

Sponsored by:   Solarflare Communications, Inc.

8 years agoMFC r291390
arybchik [Thu, 14 Jan 2016 14:03:05 +0000 (14:03 +0000)]
MFC r291390

sfxge: cleanup: error probe correction

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.

8 years agoDocument EN-16:01, EN-16:02, EN-16:03, SA-15:27, SA-16:01,
gjb [Thu, 14 Jan 2016 11:11:46 +0000 (11:11 +0000)]
Document EN-16:01, EN-16:02, EN-16:03, SA-15:27, SA-16:01,
SA-16:02, SA-16:03, SA-16:04, SA-16:05, SA-16:06.

Bump copyright date.

Sponsored by: The FreeBSD Foundation

8 years agoo Fix SCTP ICMPv6 error message vulnerability. [SA-16:01.sctp]
glebius [Thu, 14 Jan 2016 09:11:42 +0000 (09:11 +0000)]
o Fix SCTP ICMPv6 error message vulnerability. [SA-16:01.sctp]
o Fix Linux compatibility layer incorrect futex handling. [SA-16:03.linux]
o Fix Linux compatibility layer setgroups(2) system call. [SA-16:04.linux]
o Fix TCP MD5 signature denial of service. [SA-16:05.tcp]
o Fix insecure default bsnmpd.conf permissions. [SA-16:06.bsnmpd]

Security: FreeBSD-SA-16:01.sctp, CVE-2016-1879
Security: FreeBSD-SA-16:03.linux, CVE-2016-1880
Security: FreeBSD-SA-16:04.linux, CVE-2016-1881
Security: FreeBSD-SA-16:05.tcp, CVE-2016-1882
Security: FreeBSD-SA-16:06.bsnmpd, CVE-2015-5677

8 years agoConvert usr.sbin/sesutil to LPADD/DPADD for stable/10
allanjude [Thu, 14 Jan 2016 04:25:29 +0000 (04:25 +0000)]
Convert usr.sbin/sesutil to LPADD/DPADD for stable/10

Direct commit to stable/10

Pointy Hat To: allanjude