Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net

Merge in networking bug fixes for merge window.

Signed-off-by: David S. Miller <davem@davemloft.net>

+22 -11
+5 -5
drivers/net/dsa/sja1105/sja1105_main.c
··· 557 557 int i; 558 558 559 559 for (i = 0; i < SJA1105_NUM_PORTS; i++) { 560 - if (ports->role == XMII_MAC) 560 + if (ports[i].role == XMII_MAC) 561 561 continue; 562 562 563 - if (ports->phy_mode == PHY_INTERFACE_MODE_RGMII_RXID || 564 - ports->phy_mode == PHY_INTERFACE_MODE_RGMII_ID) 563 + if (ports[i].phy_mode == PHY_INTERFACE_MODE_RGMII_RXID || 564 + ports[i].phy_mode == PHY_INTERFACE_MODE_RGMII_ID) 565 565 priv->rgmii_rx_delay[i] = true; 566 566 567 - if (ports->phy_mode == PHY_INTERFACE_MODE_RGMII_TXID || 568 - ports->phy_mode == PHY_INTERFACE_MODE_RGMII_ID) 567 + if (ports[i].phy_mode == PHY_INTERFACE_MODE_RGMII_TXID || 568 + ports[i].phy_mode == PHY_INTERFACE_MODE_RGMII_ID) 569 569 priv->rgmii_tx_delay[i] = true; 570 570 571 571 if ((priv->rgmii_rx_delay[i] || priv->rgmii_tx_delay[i]) &&
+2 -1
drivers/net/macvlan.c
··· 359 359 } 360 360 spin_unlock(&port->bc_queue.lock); 361 361 362 + schedule_work(&port->bc_work); 363 + 362 364 if (err) 363 365 goto free_nskb; 364 366 365 - schedule_work(&port->bc_work); 366 367 return; 367 368 368 369 free_nskb:
+4 -2
drivers/net/phy/mdio_bus.c
··· 62 62 struct reset_control *reset = NULL; 63 63 64 64 if (mdiodev->dev.of_node) 65 - reset = devm_reset_control_get_exclusive(&mdiodev->dev, 66 - "phy"); 65 + reset = of_reset_control_get_exclusive(mdiodev->dev.of_node, 66 + "phy"); 67 67 if (IS_ERR(reset)) { 68 68 if (PTR_ERR(reset) == -ENOENT || PTR_ERR(reset) == -ENOTSUPP) 69 69 reset = NULL; ··· 106 106 { 107 107 if (mdiodev->bus->mdio_map[mdiodev->addr] != mdiodev) 108 108 return -EINVAL; 109 + 110 + reset_control_put(mdiodev->reset_ctrl); 109 111 110 112 mdiodev->bus->mdio_map[mdiodev->addr] = NULL; 111 113
+1
drivers/net/slip/slip.c
··· 855 855 sl->tty = NULL; 856 856 tty->disc_data = NULL; 857 857 clear_bit(SLF_INUSE, &sl->flags); 858 + sl_free_netdev(sl->dev); 858 859 free_netdev(sl->dev); 859 860 860 861 err_exit:
+3
include/net/sctp/structs.h
··· 1243 1243 /* What socket does this endpoint belong to? */ 1244 1244 struct sock *sk; 1245 1245 1246 + /* Cache netns and it won't change once set */ 1247 + struct net *net; 1248 + 1246 1249 /* This is where we receive inbound chunks. */ 1247 1250 struct sctp_inq inqueue; 1248 1251
+1
net/sctp/associola.c
··· 64 64 /* Discarding const is appropriate here. */ 65 65 asoc->ep = (struct sctp_endpoint *)ep; 66 66 asoc->base.sk = (struct sock *)sk; 67 + asoc->base.net = sock_net(sk); 67 68 68 69 sctp_endpoint_hold(asoc->ep); 69 70 sock_hold(asoc->base.sk);
+1
net/sctp/endpointola.c
··· 110 110 111 111 /* Remember who we are attached to. */ 112 112 ep->base.sk = sk; 113 + ep->base.net = sock_net(sk); 113 114 sock_hold(ep->base.sk); 114 115 115 116 return ep;
+2 -2
net/sctp/input.c
··· 882 882 if (!sctp_transport_hold(t)) 883 883 return err; 884 884 885 - if (!net_eq(sock_net(t->asoc->base.sk), x->net)) 885 + if (!net_eq(t->asoc->base.net, x->net)) 886 886 goto out; 887 887 if (x->lport != htons(t->asoc->base.bind_addr.port)) 888 888 goto out; ··· 897 897 { 898 898 const struct sctp_transport *t = data; 899 899 900 - return sctp_hashfn(sock_net(t->asoc->base.sk), 900 + return sctp_hashfn(t->asoc->base.net, 901 901 htons(t->asoc->base.bind_addr.port), 902 902 &t->ipaddr, seed); 903 903 }
+3 -1
net/sctp/sm_statefuns.c
··· 2160 2160 2161 2161 /* Update socket peer label if first association. */ 2162 2162 if (security_sctp_assoc_request((struct sctp_endpoint *)ep, 2163 - chunk->skb)) 2163 + chunk->skb)) { 2164 + sctp_association_free(new_asoc); 2164 2165 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); 2166 + } 2165 2167 2166 2168 /* Set temp so that it won't be added into hashtable */ 2167 2169 new_asoc->temp = 1;