aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-01-10r8169: move disabling MAC EEE for RTL8402/RTL8106eHeiner Kallweit1-2/+6
Move configuring EEE on MAC side out of the PHY configuration. Signed-off-by: Heiner Kallweit <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10r8169: move setting ERI register 0x1d0 for RTL8106Heiner Kallweit1-2/+2
Writing this ERI register is a MAC setting, so move it to rtl_hw_start_8106(). Signed-off-by: Heiner Kallweit <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10r8169: switch to phylib functions in rtl_writephy_batchHeiner Kallweit1-18/+21
Switch rtl_writephy_batch() to phylib functions, as a result we can avoid passing a rtl8169_private parameter. Signed-off-by: Heiner Kallweit <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10r8169: change argument type of RTL8168g-specific PHY config functionsHeiner Kallweit1-14/+12
These functions use only the phy_device member of rtl8169_private, so we can pass the phy_device as parameter directly. Signed-off-by: Heiner Kallweit <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10r8169: change argument type of EEE PHY functionsHeiner Kallweit1-24/+18
These functions use only the phy_device member of rtl8169_private, so we can pass the phy_device as parameter directly. Signed-off-by: Heiner Kallweit <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10r8169: move RTL8169scd Gigabyte PHY quirkHeiner Kallweit1-13/+5
In preparation of factoring out rtl8169scd_hw_phy_config() move this quirk to rtl8169_init_phy(). Signed-off-by: Heiner Kallweit <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10r8169: remove not needed debug print in rtl8169_init_phyHeiner Kallweit1-5/+4
Remove a useless debug statement. This also allows to remove the net_device parameter from rtl8169_init_phy(). Signed-off-by: Heiner Kallweit <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10r8169: prepare for exporting rtl_hw_phy_configHeiner Kallweit1-100/+117
In preperation of factoring out the PHY configuration to a separate source file this patch: - avoids accessing rtl8169_private internals by passing the phy_device and mac_version as separate parameters - renames rtl_hw_phy_config to r8169_hw_phy_config to avoid namespace clashes with other drivers for Realtek hardware Signed-off-by: Heiner Kallweit <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10Merge branch 'stmmac-Frame-Preemption-fixes'David S. Miller2-0/+2
Jose Abreu says: ==================== net: stmmac: Frame Preemption fixes Two single fixes for the -next tree for recently introduced Frame Preemption feature. 1) and 2) fixes the disabling of Frame Preemption that was not being correctly handled because of a missing return. ==================== Signed-off-by: David S. Miller <[email protected]>
2020-01-10net: stmmac: gmac5+: Fix missing returnJose Abreu1-0/+1
If FPE is supposed to be disabled we need to return after disabling it. Fixes: 7c7282746883 ("net: stmmac: gmac5+: Add support for Frame Preemption") Signed-off-by: Jose Abreu <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10net: stmmac: xgmac: Fix missing returnJose Abreu1-0/+1
If FPE is supposed to be disabled we need to return after disabling it. Fixes: f0e56c8d8f7d ("net: stmmac: xgmac3+: Add support for Frame Preemption") Signed-off-by: Jose Abreu <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10Merge branch 'sfc-even-more-code-refactoring'David S. Miller25-1266/+1353
Alex Maftei says: ==================== sfc: even more code refactoring Splitting even more of the driver code into different files, which will later be used in another driver for a new product. This is a continuation to my previous patch series, and the one before it. There will be a stand-alone patch as well after this - after which the refactoring will be concluded, for now. ==================== Signed-off-by: David S. Miller <[email protected]>
2020-01-10sfc: move RPS codeAlex Maftei (amaftei)8-276/+273
Includes a couple of filtering functions and also renames a constant. Style fixes included. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10sfc: move yet more functionsAlex Maftei (amaftei)6-64/+66
Functions are not related. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10sfc: move RSS codeAlex Maftei (amaftei)4-70/+72
Style fixes included. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10sfc: move a couple more functionsAlex Maftei (amaftei)6-51/+56
Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10sfc: move some ethtool codeAlex Maftei (amaftei)4-442/+489
Various ethtool entry points are moved. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10sfc: move various functionsAlex Maftei (amaftei)11-76/+88
Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10sfc: move more rx codeAlex Maftei (amaftei)4-208/+224
Page recycling code and GRO packet receipt code were moved. One function contains code extracted from another. Code style fixes included. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10sfc: move more tx codeAlex Maftei (amaftei)3-77/+78
The code that handles transmission finalization will also be common. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-10sfc: refactor selftest work init codeAlex Maftei (amaftei)3-3/+8
Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09Merge branch 'mptcp-prereq'David S. Miller18-79/+235
Mat Martineau says: ==================== Multipath TCP: Prerequisites v6 -> v7: Rename/move ULP clone helper to make inline-friendly (patch 5) v5 -> v6: Fix BPF accessors for sk_type and sk_protocol (patch 2), fix the width of an __unused bitfield (patch 6), and add some commit message and comment text (patches 5 & 7). v4 -> v5: Cover letter subject fix. No changes to commits. v3 -> v4: Update coalesce/collapse of incoming MPTCP skbs (patch 7) v2 -> v3: Ensure sk_type alignment in struct sock (patch 2) v1 -> v2: sk_pacing_shift left as a regular struct member (patch 2), and modified SACK space check based on recent -net fix (patch 9). The MPTCP upstreaming community has been collaborating on an upstreamable MPTCP implementation that complies with RFC 8684. A minimal set of features to comply with the specification involves a sizeable set of code changes, so David requested that we split this work in to multiple, smaller patch sets to build up MPTCP infrastructure. The minimal MPTCP feature set we are proposing for review in the v5.6 timeframe begins with these three parts: Part 1 (this patch set): MPTCP prerequisites. Introduce some MPTCP definitions, additional ULP and skb extension features, TCP option space checking, and a few exported symbols. Part 2: Single subflow implementation and self tests. Part 3: Switch from MPTCP v0 (RFC 6824) to MPTCP v1 (new RFC 8684, publication expected in the next few days). Additional patches for multiple subflow support, path management, active backup, and other features are in the pipeline for submission after making progress with the above reviews. Clone/fetch: https://github.com/multipath-tcp/mptcp_net-next.git (tag: netdev-v7-part1) Browse: https://github.com/multipath-tcp/mptcp_net-next/tree/netdev-v7-part1 Thank you for your review. You can find us at [email protected] and https://is.gd/mptcp_upstream ==================== Signed-off-by: David S. Miller <[email protected]>
2020-01-09skb: add helpers to allocate ext independently from sk_buffPaolo Abeni2-2/+36
Currently we can allocate the extension only after the skb, this change allows the user to do the opposite, will simplify allocation failure handling from MPTCP. Signed-off-by: Paolo Abeni <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09tcp: clean ext on tx recyclePaolo Abeni1-0/+1
Otherwise we will find stray/unexpected/old extensions value on next iteration. On tcp_write_xmit() we can end-up splitting an already queued skb in two parts, via tso_fragment(). The newly created skb can be allocated via the tx cache and an upper layer will not be aware of it, so that upper layer cannot set the ext properly. Resetting the ext on recycle ensures that stale data is not propagated in to packet headers or elsewhere. An alternative would be add an additional hook in tso_fragment() or in sk_stream_alloc_skb() to init the ext for upper layers that need it. Co-developed-by: Florian Westphal <[email protected]> Signed-off-by: Florian Westphal <[email protected]> Signed-off-by: Paolo Abeni <[email protected]> Reviewed-by: Eric Dumazet <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09tcp: Check for filled TCP option space before SACKMat Martineau1-3/+7
Update the SACK check to work with zero option space available, a case that's possible with MPTCP but not MD5+TS. Maintained only one conditional branch for insufficient SACK space. v1 -> v2: - Moves the check inside the SACK branch by taking recent SACK fix: 9424e2e7ad93 (tcp: md5: fix potential overestimation of TCP option space) in to account, but modifies it to work in MPTCP scenarios beyond the MD5+TS corner case. Co-developed-by: Paolo Abeni <[email protected]> Signed-off-by: Paolo Abeni <[email protected]> Reviewed-by: Eric Dumazet <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09tcp: Export TCP functions and ops structMat Martineau4-7/+15
MPTCP will make use of tcp_send_mss() and tcp_push() when sending data to specific TCP subflows. tcp_request_sock_ipvX_ops and ipvX_specific will be referenced during TCP subflow creation. Co-developed-by: Peter Krystad <[email protected]> Signed-off-by: Peter Krystad <[email protected]> Reviewed-by: Eric Dumazet <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09tcp: coalesce/collapse must respect MPTCP extensionsMat Martineau4-4/+74
Coalesce and collapse of packets carrying MPTCP extensions is allowed when the newer packet has no extension or the extensions carried by both packets are equal. This allows merging of TSO packet trains and even cross-TSO packets, and does not require any additional action when moving data into existing SKBs. v3 -> v4: - allow collapsing, under mptcp_skb_can_collapse() constraint v5 -> v6: - clarify MPTCP skb extensions must always be cleared at allocation time Co-developed-by: Paolo Abeni <[email protected]> Signed-off-by: Paolo Abeni <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09mptcp: Add MPTCP to skb extensionsMat Martineau4-0/+48
Add enum value for MPTCP and update config dependencies v5 -> v6: - fixed '__unused' field size Co-developed-by: Matthieu Baerts <[email protected]> Signed-off-by: Matthieu Baerts <[email protected]> Co-developed-by: Paolo Abeni <[email protected]> Signed-off-by: Paolo Abeni <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09tcp, ulp: Add clone operation to tcp_ulp_opsMat Martineau2-0/+17
If ULP is used on a listening socket, icsk_ulp_ops and icsk_ulp_data are copied when the listener is cloned. Sometimes the clone is immediately deleted, which will invoke the release op on the clone and likely corrupt the listening socket's icsk_ulp_data. The clone operation is invoked immediately after the clone is copied and gives the ULP type an opportunity to set up the clone socket and its icsk_ulp_data. The MPTCP ULP clone will silently fallback to plain TCP on allocation failure, so 'clone()' does not need to return an error code. v6 -> v7: - move and rename ulp clone helper to make it inline-friendly v5 -> v6: - clarified MPTCP clone usage in commit message Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09tcp: Add MPTCP option numberMat Martineau1-0/+1
TCP option 30 is allocated for MPTCP by the IANA. Reviewed-by: Eric Dumazet <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09tcp: Define IPPROTO_MPTCPMat Martineau3-1/+6
To open a MPTCP socket with socket(AF_INET, SOCK_STREAM, IPPROTO_MPTCP), IPPROTO_MPTCP needs a value that differs from IPPROTO_TCP. The existing IPPROTO numbers mostly map directly to IANA-specified protocol numbers. MPTCP does not have a protocol number allocated because MPTCP packets use the TCP protocol number. Use private number not used OTA. Reviewed-by: Eric Dumazet <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09sock: Make sk_protocol a 16-bit valueMat Martineau3-59/+28
Match the 16-bit width of skbuff->protocol. Fills an 8-bit hole so sizeof(struct sock) does not change. Also take care of BPF field access for sk_type/sk_protocol. Both of them are now outside the bitfield, so we can use load instructions without further shifting/masking. v5 -> v6: - update eBPF accessors, too (Intel's kbuild test robot) v2 -> v3: - keep 'sk_type' 2 bytes aligned (Eric) v1 -> v2: - preserve sk_pacing_shift as bit field (Eric) Cc: Alexei Starovoitov <[email protected]> Cc: Daniel Borkmann <[email protected]> Cc: [email protected] Co-developed-by: Paolo Abeni <[email protected]> Signed-off-by: Paolo Abeni <[email protected]> Co-developed-by: Matthieu Baerts <[email protected]> Signed-off-by: Matthieu Baerts <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09net: Make sock protocol value checks more specificMat Martineau3-3/+2
SK_PROTOCOL_MAX is only used in two places, for DECNet and AX.25. The limits have more to do with the those protocol definitions than they do with the data type of sk_protocol, so remove SK_PROTOCOL_MAX and use U8_MAX directly. Reviewed-by: Eric Dumazet <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09flow_dissector: fix document for skb_flow_get_icmp_tciLi RongQing1-1/+1
using correct input parameter name to fix the below warning: net/core/flow_dissector.c:242: warning: Function parameter or member 'thoff' not described in 'skb_flow_get_icmp_tci' net/core/flow_dissector.c:242: warning: Excess function parameter 'toff' description in 'skb_flow_get_icmp_tci' Signed-off-by: Li RongQing <[email protected]> Reviewed-by: Simon Horman <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09net/ncsi: Support for multi host mellanox cardVijay Khemka2-0/+89
Multi host Mellanox cards require MAC affinity to be set before receiving any config commands. All config commands should also have unicast address for source address in command header. Adding GMA and SMAF(Set Mac Affinity) for Mellanox card and call these in channel probe state machine if it is defined in device tree. Signed-off-by: Vijay Khemka <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09net: stmmac: pci: remove the duplicate code of set phy_maskDejin Zheng1-5/+0
All members of mdio_bus_data are cleared to 0 when it was obtained by devm_kzalloc(). so It doesn't need to set phy_mask as 0 again. Signed-off-by: Dejin Zheng <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09Merge branch 'mlxsw-Firmware-version-updates'David S. Miller1-9/+6
Ido Schimmel says: ==================== mlxsw: Firmware version updates This patch sets contains two firmware-related updates. Patch #1 bumps the required firmware version in order to support 2x50 Gb/s split on SN3800 systems. Patch #2 changes the driver to only enforce a minimum required firmware version, which should allow us to reduce the frequency in which we need to update the driver. ==================== Signed-off-by: David S. Miller <[email protected]>
2020-01-09mlxsw: spectrum: Only require minimum firmware versionIdo Schimmel1-7/+4
Currently, the driver ensures that the firmware version found on the device matches the branch of the required version. Remove this limitation so that the driver will accept the required version or a newer version, from any branch. This will allow us to reduce the frequency in which we need to update the required version. New firmware versions that include necessary bug fixes will be able to work with the driver, even if they are not from the required branch. Signed-off-by: Ido Schimmel <[email protected]> Acked-by: Jiri Pirko <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09mlxsw: spectrum: Update firmware version to xx.2000.2714Ido Schimmel1-2/+2
The version adds support for 2x50 Gb/s port split option on SN3800 systems. Signed-off-by: Ido Schimmel <[email protected]> Acked-by: Jiri Pirko <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/netDavid S. Miller232-869/+1551
The ungrafting from PRIO bug fixes in net, when merged into net-next, merge cleanly but create a build failure. The resolution used here is from Petr Machata. Signed-off-by: David S. Miller <[email protected]>
2020-01-09Merge branch 'sfc-more-code-refactoring'David S. Miller10-860/+958
Alex Maftei says: ==================== sfc: more code refactoring Splitting more of the driver code into different files, which will later be used in another driver for a new product. This is a continuation to my previous patch series. There will be another series and a stand-alone patch as well after this. This series in particular covers MCDI (management controller driver interface) code. ==================== Signed-off-by: David S. Miller <[email protected]>
2020-01-09sfc: move MCDI logging device attributeAlex Maftei (amaftei)3-37/+50
A few bits were extracted from other functions. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09sfc: conditioned some functionalityAlex Maftei (amaftei)2-21/+32
Before calling certain function pointers, check that they are non-NULL. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09sfc: move MCDI receive queue management codeAlex Maftei (amaftei)3-93/+93
One function's prototype was changed in the header. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09sfc: move MCDI transmit queue management codeAlex Maftei (amaftei)2-85/+109
A function was split, the others were renamed. Code style fixes included. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09sfc: move MCDI event queue management codeAlex Maftei (amaftei)2-104/+116
A function was split, the others were renamed. Code style fixes included. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09sfc: move MCDI VI alloc/free codeAlex Maftei (amaftei)3-40/+68
One function was renamed here, the other contains code extracted from another. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09sfc: move more MCDI port codeAlex Maftei (amaftei)2-138/+139
Various functions dealing with flow control, forward error correction, polling, port number, and PHY testing. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09sfc: move some MCDI port utility functionsAlex Maftei (amaftei)2-148/+148
They just convert between different sets of flags/registers. Some block comments were adjusted. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2020-01-09sfc: move some port link state/caps codeAlex Maftei (amaftei)4-195/+204
The moved code handles MCDI port link state and capabilities. Signed-off-by: Alexandru-Mihai Maftei <[email protected]> Signed-off-by: David S. Miller <[email protected]>