Skip to content

Commit 34229b2

Browse files
committed
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Pull networking fixes from David Miller: "This looks like a lot but it's a mixture of regression fixes as well as fixes for longer standing issues. 1) Fix on-channel cancellation in mac80211, from Johannes Berg. 2) Handle CHECKSUM_COMPLETE properly in xt_TCPMSS netfilter xtables module, from Eric Dumazet. 3) Avoid infinite loop in UDP SO_REUSEPORT logic, also from Eric Dumazet. 4) Avoid a NULL deref if we try to set SO_REUSEPORT after a socket is bound, from Craig Gallek. 5) GRO key comparisons don't take lightweight tunnels into account, from Jesse Gross. 6) Fix struct pid leak via SCM credentials in AF_UNIX, from Eric Dumazet. 7) We need to set the rtnl_link_ops of ipv6 SIT tunnels before we register them, otherwise the NEWLINK netlink message is missing the proper attributes. From Thadeu Lima de Souza Cascardo. 8) Several Spectrum chip bug fixes for mlxsw switch driver, from Ido Schimmel 9) Handle fragments properly in ipv4 easly socket demux, from Eric Dumazet. 10) Don't ignore the ifindex key specifier on ipv6 output route lookups, from Paolo Abeni" * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (128 commits) tcp: avoid cwnd undo after receiving ECN irda: fix a potential use-after-free in ircomm_param_request net: tg3: avoid uninitialized variable warning net: nb8800: avoid uninitialized variable warning net: vxge: avoid unused function warnings net: bgmac: clarify CONFIG_BCMA dependency net: hp100: remove unnecessary #ifdefs net: davinci_cpdma: use dma_addr_t for DMA address ipv6/udp: use sticky pktinfo egress ifindex on connect() ipv6: enforce flowi6_oif usage in ip6_dst_lookup_tail() netlink: not trim skb for mmaped socket when dump vxlan: fix a out of bounds access in __vxlan_find_mac net: dsa: mv88e6xxx: fix port VLAN maps fib_trie: Fix shift by 32 in fib_table_lookup net: moxart: use correct accessors for DMA memory ipv4: ipconfig: avoid unused ic_proto_used symbol bnxt_en: Fix crash in bnxt_free_tx_skbs() during tx timeout. bnxt_en: Exclude rx_drop_pkts hw counter from the stack's rx_dropped counter. bnxt_en: Ring free response from close path should use completion ring net_sched: drr: check for NULL pointer in drr_dequeue ...
2 parents 2c92341 + 53729eb commit 34229b2

File tree

154 files changed

+1402
-843
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

154 files changed

+1402
-843
lines changed

Documentation/devicetree/bindings/net/brcm,bcmgenet.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ ethernet@f0b60000 {
6868
phy1: ethernet-phy@1 {
6969
max-speed = <1000>;
7070
reg = <0x1>;
71-
compatible = "brcm,28nm-gphy", "ethernet-phy-ieee802.3-c22";
71+
compatible = "ethernet-phy-ieee802.3-c22";
7272
};
7373
};
7474
};
@@ -115,7 +115,7 @@ ethernet@f0ba0000 {
115115
phy0: ethernet-phy@0 {
116116
max-speed = <1000>;
117117
reg = <0x0>;
118-
compatible = "brcm,bcm53125", "ethernet-phy-ieee802.3-c22";
118+
compatible = "ethernet-phy-ieee802.3-c22";
119119
};
120120
};
121121
};

Documentation/devicetree/bindings/net/hisilicon-hns-dsaf.txt

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ Required properties:
44
- compatible: should be "hisilicon,hns-dsaf-v1" or "hisilicon,hns-dsaf-v2".
55
"hisilicon,hns-dsaf-v1" is for hip05.
66
"hisilicon,hns-dsaf-v2" is for Hi1610 and Hi1612.
7-
- dsa-name: dsa fabric name who provide this interface.
8-
should be "dsafX", X is the dsaf id.
97
- mode: dsa fabric mode string. only support one of dsaf modes like these:
108
"2port-64vf",
119
"6port-16rss",
@@ -26,9 +24,8 @@ Required properties:
2624

2725
Example:
2826

29-
dsa: dsa@c7000000 {
27+
dsaf0: dsa@c7000000 {
3028
compatible = "hisilicon,hns-dsaf-v1";
31-
dsa_name = "dsaf0";
3229
mode = "6port-16rss";
3330
interrupt-parent = <&mbigen_dsa>;
3431
reg = <0x0 0xC0000000 0x0 0x420000

Documentation/devicetree/bindings/net/hisilicon-hns-nic.txt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,9 @@ Required properties:
44
- compatible: "hisilicon,hns-nic-v1" or "hisilicon,hns-nic-v2".
55
"hisilicon,hns-nic-v1" is for hip05.
66
"hisilicon,hns-nic-v2" is for Hi1610 and Hi1612.
7-
- ae-name: accelerator name who provides this interface,
8-
is simply a name referring to the name of name in the accelerator node.
7+
- ae-handle: accelerator engine handle for hns,
8+
specifies a reference to the associating hardware driver node.
9+
see Documentation/devicetree/bindings/net/hisilicon-hns-dsaf.txt
910
- port-id: is the index of port provided by DSAF (the accelerator). DSAF can
1011
connect to 8 PHYs. Port 0 to 1 are both used for adminstration purpose. They
1112
are called debug ports.
@@ -41,7 +42,7 @@ Example:
4142

4243
ethernet@0{
4344
compatible = "hisilicon,hns-nic-v1";
44-
ae-name = "dsaf0";
45+
ae-handle = <&dsaf0>;
4546
port-id = <0>;
4647
local-mac-address = [a2 14 e4 4b 56 76];
4748
};

Documentation/devicetree/bindings/net/marvell-armada-370-neta.txt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,17 @@ Required properties:
66
- interrupts: interrupt for the device
77
- phy: See ethernet.txt file in the same directory.
88
- phy-mode: See ethernet.txt file in the same directory
9-
- clocks: a pointer to the reference clock for this device.
9+
- clocks: List of clocks for this device. At least one clock is
10+
mandatory for the core clock. If several clocks are given, then the
11+
clock-names property must be used to identify them.
1012

1113
Optional properties:
1214
- tx-csum-limit: maximum mtu supported by port that allow TX checksum.
1315
Value is presented in bytes. If not used, by default 1600B is set for
1416
"marvell,armada-370-neta" and 9800B for others.
17+
- clock-names: List of names corresponding to clocks property; shall be
18+
"core" for core clock and "bus" for the optional bus clock.
19+
1520

1621
Example:
1722

Documentation/devicetree/bindings/net/mdio-mux-gpio.txt

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ Example :
3838

3939
phy11: ethernet-phy@1 {
4040
reg = <1>;
41-
compatible = "marvell,88e1149r";
4241
marvell,reg-init = <3 0x10 0 0x5777>,
4342
<3 0x11 0 0x00aa>,
4443
<3 0x12 0 0x4105>,
@@ -48,7 +47,6 @@ Example :
4847
};
4948
phy12: ethernet-phy@2 {
5049
reg = <2>;
51-
compatible = "marvell,88e1149r";
5250
marvell,reg-init = <3 0x10 0 0x5777>,
5351
<3 0x11 0 0x00aa>,
5452
<3 0x12 0 0x4105>,
@@ -58,7 +56,6 @@ Example :
5856
};
5957
phy13: ethernet-phy@3 {
6058
reg = <3>;
61-
compatible = "marvell,88e1149r";
6259
marvell,reg-init = <3 0x10 0 0x5777>,
6360
<3 0x11 0 0x00aa>,
6461
<3 0x12 0 0x4105>,
@@ -68,7 +65,6 @@ Example :
6865
};
6966
phy14: ethernet-phy@4 {
7067
reg = <4>;
71-
compatible = "marvell,88e1149r";
7268
marvell,reg-init = <3 0x10 0 0x5777>,
7369
<3 0x11 0 0x00aa>,
7470
<3 0x12 0 0x4105>,
@@ -85,7 +81,6 @@ Example :
8581

8682
phy21: ethernet-phy@1 {
8783
reg = <1>;
88-
compatible = "marvell,88e1149r";
8984
marvell,reg-init = <3 0x10 0 0x5777>,
9085
<3 0x11 0 0x00aa>,
9186
<3 0x12 0 0x4105>,
@@ -95,7 +90,6 @@ Example :
9590
};
9691
phy22: ethernet-phy@2 {
9792
reg = <2>;
98-
compatible = "marvell,88e1149r";
9993
marvell,reg-init = <3 0x10 0 0x5777>,
10094
<3 0x11 0 0x00aa>,
10195
<3 0x12 0 0x4105>,
@@ -105,7 +99,6 @@ Example :
10599
};
106100
phy23: ethernet-phy@3 {
107101
reg = <3>;
108-
compatible = "marvell,88e1149r";
109102
marvell,reg-init = <3 0x10 0 0x5777>,
110103
<3 0x11 0 0x00aa>,
111104
<3 0x12 0 0x4105>,
@@ -115,7 +108,6 @@ Example :
115108
};
116109
phy24: ethernet-phy@4 {
117110
reg = <4>;
118-
compatible = "marvell,88e1149r";
119111
marvell,reg-init = <3 0x10 0 0x5777>,
120112
<3 0x11 0 0x00aa>,
121113
<3 0x12 0 0x4105>,

Documentation/devicetree/bindings/net/mdio-mux.txt

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@ Example :
4747

4848
phy11: ethernet-phy@1 {
4949
reg = <1>;
50-
compatible = "marvell,88e1149r";
5150
marvell,reg-init = <3 0x10 0 0x5777>,
5251
<3 0x11 0 0x00aa>,
5352
<3 0x12 0 0x4105>,
@@ -57,7 +56,6 @@ Example :
5756
};
5857
phy12: ethernet-phy@2 {
5958
reg = <2>;
60-
compatible = "marvell,88e1149r";
6159
marvell,reg-init = <3 0x10 0 0x5777>,
6260
<3 0x11 0 0x00aa>,
6361
<3 0x12 0 0x4105>,
@@ -67,7 +65,6 @@ Example :
6765
};
6866
phy13: ethernet-phy@3 {
6967
reg = <3>;
70-
compatible = "marvell,88e1149r";
7168
marvell,reg-init = <3 0x10 0 0x5777>,
7269
<3 0x11 0 0x00aa>,
7370
<3 0x12 0 0x4105>,
@@ -77,7 +74,6 @@ Example :
7774
};
7875
phy14: ethernet-phy@4 {
7976
reg = <4>;
80-
compatible = "marvell,88e1149r";
8177
marvell,reg-init = <3 0x10 0 0x5777>,
8278
<3 0x11 0 0x00aa>,
8379
<3 0x12 0 0x4105>,
@@ -94,7 +90,6 @@ Example :
9490

9591
phy21: ethernet-phy@1 {
9692
reg = <1>;
97-
compatible = "marvell,88e1149r";
9893
marvell,reg-init = <3 0x10 0 0x5777>,
9994
<3 0x11 0 0x00aa>,
10095
<3 0x12 0 0x4105>,
@@ -104,7 +99,6 @@ Example :
10499
};
105100
phy22: ethernet-phy@2 {
106101
reg = <2>;
107-
compatible = "marvell,88e1149r";
108102
marvell,reg-init = <3 0x10 0 0x5777>,
109103
<3 0x11 0 0x00aa>,
110104
<3 0x12 0 0x4105>,
@@ -114,7 +108,6 @@ Example :
114108
};
115109
phy23: ethernet-phy@3 {
116110
reg = <3>;
117-
compatible = "marvell,88e1149r";
118111
marvell,reg-init = <3 0x10 0 0x5777>,
119112
<3 0x11 0 0x00aa>,
120113
<3 0x12 0 0x4105>,
@@ -124,7 +117,6 @@ Example :
124117
};
125118
phy24: ethernet-phy@4 {
126119
reg = <4>;
127-
compatible = "marvell,88e1149r";
128120
marvell,reg-init = <3 0x10 0 0x5777>,
129121
<3 0x11 0 0x00aa>,
130122
<3 0x12 0 0x4105>,

Documentation/devicetree/bindings/net/phy.txt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ Optional Properties:
1717
"ethernet-phy-ieee802.3-c22" or "ethernet-phy-ieee802.3-c45" for
1818
PHYs that implement IEEE802.3 clause 22 or IEEE802.3 clause 45
1919
specifications. If neither of these are specified, the default is to
20-
assume clause 22. The compatible list may also contain other
21-
elements.
20+
assume clause 22.
2221

2322
If the phy's identifier is known then the list may contain an entry
2423
of the form: "ethernet-phy-idAAAA.BBBB" where
@@ -28,6 +27,9 @@ Optional Properties:
2827
4 hex digits. This is the chip vendor OUI bits 19:24,
2928
followed by 10 bits of a vendor specific ID.
3029

30+
The compatible list should not contain other values than those
31+
listed here.
32+
3133
- max-speed: Maximum PHY supported speed (10, 100, 1000...)
3234

3335
- broken-turn-around: If set, indicates the PHY device does not correctly

Documentation/networking/ip-sysctl.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -594,7 +594,7 @@ tcp_fastopen - INTEGER
594594

595595
tcp_syn_retries - INTEGER
596596
Number of times initial SYNs for an active TCP connection attempt
597-
will be retransmitted. Should not be higher than 255. Default value
597+
will be retransmitted. Should not be higher than 127. Default value
598598
is 6, which corresponds to 63seconds till the last retransmission
599599
with the current initial RTO of 1second. With this the final timeout
600600
for an active TCP connection attempt will happen after 127seconds.

MAINTAINERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10173,7 +10173,7 @@ F: drivers/net/ethernet/natsemi/sonic.*
1017310173

1017410174
SONICS SILICON BACKPLANE DRIVER (SSB)
1017510175
M: Michael Buesch <[email protected]>
10176-
L: netdev@vger.kernel.org
10176+
L: linux-wireless@vger.kernel.org
1017710177
S: Maintained
1017810178
F: drivers/ssb/
1017910179
F: include/linux/ssb/

arch/arm64/boot/dts/hisilicon/hip05_hns.dtsi

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,8 @@ soc0: soc@000000000 {
2323
};
2424
};
2525

26-
dsa: dsa@c7000000 {
26+
dsaf0: dsa@c7000000 {
2727
compatible = "hisilicon,hns-dsaf-v1";
28-
dsa_name = "dsaf0";
2928
mode = "6port-16rss";
3029
interrupt-parent = <&mbigen_dsa>;
3130

@@ -127,62 +126,62 @@ soc0: soc@000000000 {
127126

128127
eth0: ethernet@0{
129128
compatible = "hisilicon,hns-nic-v1";
130-
ae-name = "dsaf0";
129+
ae-handle = <&dsaf0>;
131130
port-id = <0>;
132131
local-mac-address = [00 00 00 01 00 58];
133132
status = "disabled";
134133
dma-coherent;
135134
};
136135
eth1: ethernet@1{
137136
compatible = "hisilicon,hns-nic-v1";
138-
ae-name = "dsaf0";
137+
ae-handle = <&dsaf0>;
139138
port-id = <1>;
140139
status = "disabled";
141140
dma-coherent;
142141
};
143142
eth2: ethernet@2{
144143
compatible = "hisilicon,hns-nic-v1";
145-
ae-name = "dsaf0";
144+
ae-handle = <&dsaf0>;
146145
port-id = <2>;
147146
local-mac-address = [00 00 00 01 00 5a];
148147
status = "disabled";
149148
dma-coherent;
150149
};
151150
eth3: ethernet@3{
152151
compatible = "hisilicon,hns-nic-v1";
153-
ae-name = "dsaf0";
152+
ae-handle = <&dsaf0>;
154153
port-id = <3>;
155154
local-mac-address = [00 00 00 01 00 5b];
156155
status = "disabled";
157156
dma-coherent;
158157
};
159158
eth4: ethernet@4{
160159
compatible = "hisilicon,hns-nic-v1";
161-
ae-name = "dsaf0";
160+
ae-handle = <&dsaf0>;
162161
port-id = <4>;
163162
local-mac-address = [00 00 00 01 00 5c];
164163
status = "disabled";
165164
dma-coherent;
166165
};
167166
eth5: ethernet@5{
168167
compatible = "hisilicon,hns-nic-v1";
169-
ae-name = "dsaf0";
168+
ae-handle = <&dsaf0>;
170169
port-id = <5>;
171170
local-mac-address = [00 00 00 01 00 5d];
172171
status = "disabled";
173172
dma-coherent;
174173
};
175174
eth6: ethernet@6{
176175
compatible = "hisilicon,hns-nic-v1";
177-
ae-name = "dsaf0";
176+
ae-handle = <&dsaf0>;
178177
port-id = <6>;
179178
local-mac-address = [00 00 00 01 00 5e];
180179
status = "disabled";
181180
dma-coherent;
182181
};
183182
eth7: ethernet@7{
184183
compatible = "hisilicon,hns-nic-v1";
185-
ae-name = "dsaf0";
184+
ae-handle = <&dsaf0>;
186185
port-id = <7>;
187186
local-mac-address = [00 00 00 01 00 5f];
188187
status = "disabled";

drivers/net/dsa/mv88e6xxx.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1532,7 +1532,7 @@ int mv88e6xxx_port_vlan_add(struct dsa_switch *ds, int port,
15321532

15331533
/* no PVID with ranges, otherwise it's a bug */
15341534
if (pvid)
1535-
err = _mv88e6xxx_port_pvid_set(ds, port, vid);
1535+
err = _mv88e6xxx_port_pvid_set(ds, port, vlan->vid_end);
15361536
unlock:
15371537
mutex_unlock(&ps->smi_mutex);
15381538

@@ -2163,7 +2163,8 @@ static int mv88e6xxx_setup_port(struct dsa_switch *ds, int port)
21632163
* database, and allow every port to egress frames on all other ports.
21642164
*/
21652165
reg = BIT(ps->num_ports) - 1; /* all ports */
2166-
ret = _mv88e6xxx_port_vlan_map_set(ds, port, reg & ~port);
2166+
reg &= ~BIT(port); /* except itself */
2167+
ret = _mv88e6xxx_port_vlan_map_set(ds, port, reg);
21672168
if (ret)
21682169
goto abort;
21692170

drivers/net/ethernet/apm/xgene/xgene_enet_main.c

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -628,13 +628,15 @@ static int xgene_enet_register_irq(struct net_device *ndev)
628628
int ret;
629629

630630
ring = pdata->rx_ring;
631+
irq_set_status_flags(ring->irq, IRQ_DISABLE_UNLAZY);
631632
ret = devm_request_irq(dev, ring->irq, xgene_enet_rx_irq,
632633
IRQF_SHARED, ring->irq_name, ring);
633634
if (ret)
634635
netdev_err(ndev, "Failed to request irq %s\n", ring->irq_name);
635636

636637
if (pdata->cq_cnt) {
637638
ring = pdata->tx_ring->cp_ring;
639+
irq_set_status_flags(ring->irq, IRQ_DISABLE_UNLAZY);
638640
ret = devm_request_irq(dev, ring->irq, xgene_enet_rx_irq,
639641
IRQF_SHARED, ring->irq_name, ring);
640642
if (ret) {
@@ -649,15 +651,19 @@ static int xgene_enet_register_irq(struct net_device *ndev)
649651
static void xgene_enet_free_irq(struct net_device *ndev)
650652
{
651653
struct xgene_enet_pdata *pdata;
654+
struct xgene_enet_desc_ring *ring;
652655
struct device *dev;
653656

654657
pdata = netdev_priv(ndev);
655658
dev = ndev_to_dev(ndev);
656-
devm_free_irq(dev, pdata->rx_ring->irq, pdata->rx_ring);
659+
ring = pdata->rx_ring;
660+
irq_clear_status_flags(ring->irq, IRQ_DISABLE_UNLAZY);
661+
devm_free_irq(dev, ring->irq, ring);
657662

658663
if (pdata->cq_cnt) {
659-
devm_free_irq(dev, pdata->tx_ring->cp_ring->irq,
660-
pdata->tx_ring->cp_ring);
664+
ring = pdata->tx_ring->cp_ring;
665+
irq_clear_status_flags(ring->irq, IRQ_DISABLE_UNLAZY);
666+
devm_free_irq(dev, ring->irq, ring);
661667
}
662668
}
663669

drivers/net/ethernet/apm/xgene/xgene_enet_main.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
#include <linux/acpi.h>
2626
#include <linux/clk.h>
2727
#include <linux/efi.h>
28+
#include <linux/irq.h>
2829
#include <linux/io.h>
2930
#include <linux/of_platform.h>
3031
#include <linux/of_net.h>

0 commit comments

Comments
 (0)