projects/linux·commit ae50dfd6

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

ae50dfd6 · Linus Torvalds <[email protected]> · 2017-03-14 21:31:23 -07:00

Pull networking fixes from David Miller:

 1) Ensure that mtu is at least IPV6_MIN_MTU in ipv6 VTI tunnel driver,
    from Steffen Klassert.

 2) Fix crashes when user tries to get_next_key on an LPM bpf map, from
    Alexei Starovoitov.

 3) Fix detection of VLAN fitlering feature for bnx2x VF devices, from
    Michal Schmidt.

 4) We can get a divide by zero when TCP socket are morphed into
    listening state, fix from Eric Dumazet.

 5) Fix socket refcounting bugs in skb_complete_wifi_ack() and
    skb_complete_tx_timestamp(). From Eric Dumazet.

 6) Use after free in dccp_feat_activate_values(), also from Eric
    Dumazet.

 7) Like bonding team needs to use ETH_MAX_MTU as netdev->max_mtu, from
    Jarod Wilson.

 8) Fix use after free in vrf_xmit(), from David Ahern.

 9) Don't do UDP Fragmentation Offload on IPComp ipsec packets, from
    Alexey Kodanev.

10) Properly check napi_complete_done() return value in order to decide
    whether to re-enable IRQs or not in amd-xgbe driver, from Thomas
    Lendacky.

11) Fix double free of hwmon device in marvell phy driver, from Andrew
    Lunn.

12) Don't crash on malformed netlink attributes in act_connmark, from
    Etienne Noss.

13) Don't remove routes with a higher metric in ipv6 ECMP route replace,
    from Sabrina Dubroca.

14) Don't write into a cloned SKB in ipv6 fragmentation handling, from
    Florian Westphal.

15) Fix routing redirect races in dccp and tcp, basically the ICMP
    handler can't modify the socket's cached route in it's locked by the
    user at this moment. From Jon Maxwell.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (108 commits)
  qed: Enable iSCSI Out-of-Order
  qed: Correct out-of-bound access in OOO history
  qed: Fix interrupt flags on Rx LL2
  qed: Free previous connections when releasing iSCSI
  qed: Fix mapping leak on LL2 rx flow
  qed: Prevent creation of too-big u32-chains
  qed: Align CIDs according to DORQ requirement
  mlxsw: reg: Fix SPVMLR max record count
  mlxsw: reg: Fix SPVM max record count
  net: Resend IGMP memberships upon peer notification.
  dccp: fix memory leak during tear-down of unsuccessful connection request
  tun: fix premature POLLOUT notification on tun devices
  dccp/tcp: fix routing redirect race
  ucc/hdlc: fix two little issue
  vxlan: fix ovs support
  net: use net->count to check whether a netns is alive or not
  bridge: drop netfilter fake rtable unconditionally
  ipv6: avoid write to a possibly cloned skb
  net: wimax/i2400m: fix NULL-deref at probe
  isdn/gigaset: fix NULL-deref at probe
  ...
Commit
ae50dfd61665086e617cc9e554a1285d52765670
Parents
352526f4 · 1e6a1cd8

Merge commit. Changes below are compared with the first parent: 352526f4.

Changes

139 files changed · +1447 −826

FileStatusAddDelContent
Documentation/devicetree/bindings/powerpc/4xx/emac.txtmodified+60−2View file
Documentation/networking/ip-sysctl.txtmodified+2−1View file
crypto/af_alg.cmodified+5−4View file
crypto/algif_hash.cmodified+5−4View file
drivers/isdn/gigaset/bas-gigaset.cmodified+3−0View file
drivers/net/ethernet/amd/xgbe/xgbe-drv.cmodified+2−8View file
drivers/net/ethernet/aquantia/atlantic/aq_pci_func.cmodified+1−1View file
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.cmodified+30−6View file
drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.cmodified+16−8View file
drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.hmodified+1−0View file
drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.cmodified+28−12View file
drivers/net/ethernet/broadcom/bnxt/bnxt.cmodified+18−7View file
drivers/net/ethernet/broadcom/bnxt/bnxt.hmodified+1−0View file
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.cmodified+1−1View file
drivers/net/ethernet/broadcom/genet/bcmgenet.cmodified+147−59View file
drivers/net/ethernet/broadcom/genet/bcmgenet.hmodified+11−5View file
drivers/net/ethernet/cavium/liquidio/lio_main.cmodified+55−55View file
drivers/net/ethernet/cavium/liquidio/lio_vf_main.cmodified+55−49View file
drivers/net/ethernet/cavium/liquidio/octeon_config.hmodified+3−3View file
drivers/net/ethernet/cavium/liquidio/octeon_droq.cmodified+2−15View file
drivers/net/ethernet/cavium/liquidio/octeon_droq.hmodified+2−2View file
drivers/net/ethernet/cavium/liquidio/octeon_main.hmodified+0−42View file
drivers/net/ethernet/cavium/liquidio/octeon_network.hmodified+27−16View file
drivers/net/ethernet/cavium/thunder/nic.hmodified+1−0View file
drivers/net/ethernet/cavium/thunder/nicvf_main.cmodified+11−1View file
drivers/net/ethernet/cavium/thunder/nicvf_queues.cmodified+145−39View file
drivers/net/ethernet/cavium/thunder/nicvf_queues.hmodified+3−1View file
drivers/net/ethernet/cavium/thunder/thunder_bgx.cmodified+45−19View file
drivers/net/ethernet/cavium/thunder/thunder_bgx.hmodified+0−1View file
drivers/net/ethernet/ibm/emac/core.cmodified+17−8View file
drivers/net/ethernet/ibm/ibmvnic.cmodified+34−9View file
drivers/net/ethernet/ibm/ibmvnic.hmodified+1−0View file
drivers/net/ethernet/mellanox/mlx5/core/Kconfigmodified+1−0View file
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.cmodified+5−5View file
drivers/net/ethernet/mellanox/mlx5/core/en_selftest.cmodified+1−4View file
drivers/net/ethernet/mellanox/mlx5/core/en_tc.cmodified+18−15View file
drivers/net/ethernet/mellanox/mlx5/core/fs_core.cmodified+1−1View file
drivers/net/ethernet/mellanox/mlx5/core/main.cmodified+3−2View file
drivers/net/ethernet/mellanox/mlxsw/reg.hmodified+2−2View file
drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.cmodified+2−2View file
drivers/net/ethernet/qlogic/qed/qed_cxt.cmodified+2−1View file
drivers/net/ethernet/qlogic/qed/qed_dev.cmodified+2−3View file
drivers/net/ethernet/qlogic/qed/qed_iscsi.cmodified+31−0View file
drivers/net/ethernet/qlogic/qed/qed_ll2.cmodified+8−5View file
drivers/net/ethernet/qlogic/qed/qed_ooo.cmodified+2−0View file
drivers/net/ethernet/smsc/smc91x.cmodified+25−22View file
drivers/net/hyperv/hyperv_net.hmodified+2−1View file
drivers/net/hyperv/netvsc.cmodified+2−6View file
drivers/net/hyperv/netvsc_drv.cmodified+3−8View file
drivers/net/phy/marvell.cmodified+0−15View file
drivers/net/phy/phy_device.cmodified+1−1View file
drivers/net/phy/spi_ks8995.cmodified+2−1View file
drivers/net/team/team.cmodified+1−0View file
drivers/net/tun.cmodified+15−4View file
drivers/net/vrf.cmodified+2−1View file
drivers/net/vxlan.cmodified+40−33View file
drivers/net/wan/fsl_ucc_hdlc.cmodified+2−2View file
drivers/net/wimax/i2400m/usb.cmodified+3−0View file
drivers/net/xen-netback/interface.cmodified+17−9View file
drivers/net/xen-netback/netback.cmodified+1−1View file
drivers/net/xen-netback/xenbus.cmodified+10−10View file
drivers/staging/lustre/lnet/lnet/lib-socket.cmodified+2−2View file
fs/dlm/lowcomms.cmodified+1−1View file
fs/ocfs2/cluster/tcp.cmodified+1−1View file
include/crypto/if_alg.hmodified+1−1View file
include/linux/dccp.hmodified+1−0View file
include/linux/filter.hmodified+12−4View file
include/linux/list_nulls.hmodified+5−0View file
include/linux/net.hmodified+1−1View file
include/linux/phy.hmodified+4−0View file
include/linux/rculist_nulls.hmodified+14−0View file
include/net/inet_common.hmodified+2−1View file
include/net/inet_connection_sock.hmodified+1−1View file
include/net/sctp/structs.hmodified+2−1View file
include/net/sock.hmodified+6−3View file
include/uapi/linux/packet_diag.hmodified+1−1View file
kernel/bpf/hashtab.cmodified+80−39View file
kernel/bpf/lpm_trie.cmodified+6−0View file
net/atm/svc.cmodified+3−2View file
net/ax25/af_ax25.cmodified+2−1View file
net/bluetooth/l2cap_sock.cmodified+1−1View file
net/bluetooth/rfcomm/sock.cmodified+2−1View file
net/bluetooth/sco.cmodified+1−1View file
net/bridge/br_input.cmodified+1−0View file
net/bridge/br_netfilter_hooks.cmodified+0−21View file
net/core/dev.cmodified+1−0View file
net/core/net-sysfs.cmodified+3−3View file
net/core/skbuff.cmodified+16−14View file
net/core/sock.cmodified+57−49View file
net/dccp/ccids/ccid2.cmodified+1−0View file
net/dccp/ipv4.cmodified+2−1View file
net/dccp/ipv6.cmodified+5−3View file
net/dccp/minisocks.cmodified+16−8View file
net/decnet/af_decnet.cmodified+3−2View file
net/ipv4/af_inet.cmodified+6−3View file
net/ipv4/inet_connection_sock.cmodified+1−1View file
net/ipv4/ip_output.cmodified+1−1View file
net/ipv4/tcp_ipv4.cmodified+7−3View file
net/ipv4/tcp_timer.cmodified+4−2View file
net/ipv6/af_inet6.cmodified+5−5View file
net/ipv6/ip6_fib.cmodified+2−0View file
net/ipv6/ip6_offload.cmodified+3−1View file
net/ipv6/ip6_output.cmodified+7−2View file
net/ipv6/ip6_vti.cmodified+6−2View file
net/ipv6/route.cmodified+6−5View file
net/ipv6/tcp_ipv6.cmodified+5−3View file
net/irda/af_irda.cmodified+3−2View file
net/iucv/af_iucv.cmodified+1−1View file
net/llc/af_llc.cmodified+3−1View file
net/mpls/af_mpls.cmodified+3−1View file
net/netrom/af_netrom.cmodified+2−1View file
net/nfc/llcp_sock.cmodified+1−1View file
net/phonet/pep.cmodified+4−2View file
net/phonet/socket.cmodified+2−2View file
net/rds/connection.cmodified+1−0View file
net/rds/ib_cm.cmodified+36−11View file
net/rds/rds.hmodified+3−3View file
net/rds/tcp.cmodified+21−17View file
net/rds/tcp.hmodified+1−1View file
net/rds/tcp_listen.cmodified+8−3View file
net/rose/af_rose.cmodified+2−1View file
net/rxrpc/input.cmodified+19−8View file
net/rxrpc/recvmsg.cmodified+2−2View file
net/rxrpc/sendmsg.cmodified+31−18View file
net/sched/act_connmark.cmodified+3−0View file
net/sched/act_skbmod.cmodified+0−1View file
net/sctp/ipv6.cmodified+3−2View file
net/sctp/protocol.cmodified+3−2View file
net/sctp/socket.cmodified+2−2View file
net/smc/af_smc.cmodified+1−1View file
net/socket.cmodified+3−2View file
net/tipc/socket.cmodified+5−3View file
net/unix/af_unix.cmodified+3−2View file
net/vmw_vsock/af_vsock.cmodified+2−1View file
net/x25/af_x25.cmodified+2−1View file
net/xfrm/xfrm_policy.cmodified+9−10View file
tools/include/uapi/linux/bpf_perf_event.hadded+18−0View file
tools/testing/selftests/bpf/Makefilemodified+3−1View file
tools/testing/selftests/bpf/test_verifier.cmodified+4−0View file

Only the first 600 diff lines are shown. Download the complete patch.

Documentation/devicetree/bindings/powerpc/4xx/emac.txt

View file
diff --git a/Documentation/devicetree/bindings/powerpc/4xx/emac.txt b/Documentation/devicetree/bindings/powerpc/4xx/emac.txt
index 712baf6..44b842b 100644
--- a/Documentation/devicetree/bindings/powerpc/4xx/emac.txt
+++ b/Documentation/devicetree/bindings/powerpc/4xx/emac.txt
@@ -71,6 +71,9 @@
For Axon it can be absent, though my current driver
doesn't handle phy-address yet so for now, keep
0x00ffffff in it.
+ - phy-handle : Used to describe configurations where a external PHY
+ is used. Please refer to:
+ Documentation/devicetree/bindings/net/ethernet.txt
- rx-fifo-size-gige : 1 cell, Rx fifo size in bytes for 1000 Mb/sec
operations (if absent the value is the same as
rx-fifo-size). For Axon, either absent or 2048.
@@ -81,8 +84,22 @@
offload, phandle of the TAH device node.
- tah-channel : 1 cell, optional. If appropriate, channel used on the
TAH engine.
+ - fixed-link : Fixed-link subnode describing a link to a non-MDIO
+ managed entity. See
+ Documentation/devicetree/bindings/net/fixed-link.txt
+ for details.
+ - mdio subnode : When the EMAC has a phy connected to its local
+ mdio, which us supported by the kernel's network
+ PHY library in drivers/net/phy, there must be device
+ tree subnode with the following required properties:
+ - #address-cells: Must be <1>.
+ - #size-cells: Must be <0>.
- Example:
+ For PHY definitions: Please refer to
+ Documentation/devicetree/bindings/net/phy.txt and
+ Documentation/devicetree/bindings/net/ethernet.txt
+
+ Examples:
EMAC0: ethernet@40000800 {
device_type = "network";
@@ -104,6 +121,48 @@
zmii-channel = <0>;
};
+ EMAC1: ethernet@ef600c00 {
+ device_type = "network";
+ compatible = "ibm,emac-apm821xx", "ibm,emac4sync";
+ interrupt-parent = <&EMAC1>;
+ interrupts = <0 1>;
+ #interrupt-cells = <1>;
+ #address-cells = <0>;
+ #size-cells = <0>;
+ interrupt-map = <0 &UIC2 0x10 IRQ_TYPE_LEVEL_HIGH /* Status */
+ 1 &UIC2 0x14 IRQ_TYPE_LEVEL_HIGH /* Wake */>;
+ reg = <0xef600c00 0x000000c4>;
+ local-mac-address = [000000000000]; /* Filled in by U-Boot */
+ mal-device = <&MAL0>;
+ mal-tx-channel = <0>;
+ mal-rx-channel = <0>;
+ cell-index = <0>;
+ max-frame-size = <9000>;
+ rx-fifo-size = <16384>;
+ tx-fifo-size = <2048>;
+ fifo-entry-size = <10>;
+ phy-mode = "rgmii";
+ phy-handle = <&phy0>;
+ phy-map = <0x00000000>;
+ rgmii-device = <&RGMII0>;
+ rgmii-channel = <0>;
+ tah-device = <&TAH0>;
+ tah-channel = <0>;
+ has-inverted-stacr-oc;
+ has-new-stacr-staopc;
+
+ mdio {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ phy0: ethernet-phy@0 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <0>;
+ };
+ };
+ };
+
+
ii) McMAL node
Required properties:
@@ -145,4 +204,3 @@
- revision : as provided by the RGMII new version register if
available.
For Axon: 0x0000012a
-

Documentation/networking/ip-sysctl.txt

View file
diff --git a/Documentation/networking/ip-sysctl.txt b/Documentation/networking/ip-sysctl.txt
index fc73eeb..ab02304 100644
--- a/Documentation/networking/ip-sysctl.txt
+++ b/Documentation/networking/ip-sysctl.txt
@@ -1006,7 +1006,8 @@ accept_redirects - BOOLEAN
FALSE (router)
forwarding - BOOLEAN
- Enable IP forwarding on this interface.
+ Enable IP forwarding on this interface. This controls whether packets
+ received _on_ this interface can be forwarded.
mc_forwarding - BOOLEAN
Do multicast routing. The kernel needs to be compiled with CONFIG_MROUTE

crypto/af_alg.c

View file
diff --git a/crypto/af_alg.c b/crypto/af_alg.c
index f5e18c2..690deca 100644
--- a/crypto/af_alg.c
+++ b/crypto/af_alg.c
@@ -266,7 +266,7 @@ unlock:
return err;
}
-int af_alg_accept(struct sock *sk, struct socket *newsock)
+int af_alg_accept(struct sock *sk, struct socket *newsock, bool kern)
{
struct alg_sock *ask = alg_sk(sk);
const struct af_alg_type *type;
@@ -281,7 +281,7 @@ int af_alg_accept(struct sock *sk, struct socket *newsock)
if (!type)
goto unlock;
- sk2 = sk_alloc(sock_net(sk), PF_ALG, GFP_KERNEL, &alg_proto, 0);
+ sk2 = sk_alloc(sock_net(sk), PF_ALG, GFP_KERNEL, &alg_proto, kern);
err = -ENOMEM;
if (!sk2)
goto unlock;
@@ -323,9 +323,10 @@ unlock:
}
EXPORT_SYMBOL_GPL(af_alg_accept);
-static int alg_accept(struct socket *sock, struct socket *newsock, int flags)
+static int alg_accept(struct socket *sock, struct socket *newsock, int flags,
+ bool kern)
{
- return af_alg_accept(sock->sk, newsock);
+ return af_alg_accept(sock->sk, newsock, kern);
}
static const struct proto_ops alg_proto_ops = {

crypto/algif_hash.c

View file
diff --git a/crypto/algif_hash.c b/crypto/algif_hash.c
index 54fc90e..5e92bd2 100644
--- a/crypto/algif_hash.c
+++ b/crypto/algif_hash.c
@@ -239,7 +239,8 @@ unlock:
return err ?: len;
}
-static int hash_accept(struct socket *sock, struct socket *newsock, int flags)
+static int hash_accept(struct socket *sock, struct socket *newsock, int flags,
+ bool kern)
{
struct sock *sk = sock->sk;
struct alg_sock *ask = alg_sk(sk);
@@ -260,7 +261,7 @@ static int hash_accept(struct socket *sock, struct socket *newsock, int flags)
if (err)
return err;
- err = af_alg_accept(ask->parent, newsock);
+ err = af_alg_accept(ask->parent, newsock, kern);
if (err)
return err;
@@ -378,7 +379,7 @@ static int hash_recvmsg_nokey(struct socket *sock, struct msghdr *msg,
}
static int hash_accept_nokey(struct socket *sock, struct socket *newsock,
- int flags)
+ int flags, bool kern)
{
int err;
@@ -386,7 +387,7 @@ static int hash_accept_nokey(struct socket *sock, struct socket *newsock,
if (err)
return err;
- return hash_accept(sock, newsock, flags);
+ return hash_accept(sock, newsock, flags, kern);
}
static struct proto_ops algif_hash_ops_nokey = {

drivers/isdn/gigaset/bas-gigaset.c

View file
diff --git a/drivers/isdn/gigaset/bas-gigaset.c b/drivers/isdn/gigaset/bas-gigaset.c
index 11e13c5..2da3ff6 100644
--- a/drivers/isdn/gigaset/bas-gigaset.c
+++ b/drivers/isdn/gigaset/bas-gigaset.c
@@ -2317,6 +2317,9 @@ static int gigaset_probe(struct usb_interface *interface,
return -ENODEV;
}
+ if (hostif->desc.bNumEndpoints < 1)
+ return -ENODEV;
+
dev_info(&udev->dev,
"%s: Device matched (Vendor: 0x%x, Product: 0x%x)\n",
__func__, le16_to_cpu(udev->descriptor.idVendor),

drivers/net/ethernet/amd/xgbe/xgbe-drv.c

View file
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-drv.c b/drivers/net/ethernet/amd/xgbe/xgbe-drv.c
index 248f60d..ffea985 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe-drv.c
+++ b/drivers/net/ethernet/amd/xgbe/xgbe-drv.c
@@ -2272,10 +2272,7 @@ static int xgbe_one_poll(struct napi_struct *napi, int budget)
processed = xgbe_rx_poll(channel, budget);
/* If we processed everything, we are done */
- if (processed < budget) {
- /* Turn off polling */
- napi_complete_done(napi, processed);
-
+ if ((processed < budget) && napi_complete_done(napi, processed)) {
/* Enable Tx and Rx interrupts */
if (pdata->channel_irq_mode)
xgbe_enable_rx_tx_int(pdata, channel);
@@ -2317,10 +2314,7 @@ static int xgbe_all_poll(struct napi_struct *napi, int budget)
} while ((processed < budget) && (processed != last_processed));
/* If we processed everything, we are done */
- if (processed < budget) {
- /* Turn off polling */
- napi_complete_done(napi, processed);
-
+ if ((processed < budget) && napi_complete_done(napi, processed)) {
/* Enable Tx and Rx interrupts */
xgbe_enable_rx_tx_ints(pdata);
}

drivers/net/ethernet/aquantia/atlantic/aq_pci_func.c

View file
diff --git a/drivers/net/ethernet/aquantia/atlantic/aq_pci_func.c b/drivers/net/ethernet/aquantia/atlantic/aq_pci_func.c
index 581de71..4c6c882 100644
--- a/drivers/net/ethernet/aquantia/atlantic/aq_pci_func.c
+++ b/drivers/net/ethernet/aquantia/atlantic/aq_pci_func.c
@@ -213,9 +213,9 @@ void aq_pci_func_free_irqs(struct aq_pci_func_s *self)
if (!((1U << i) & self->msix_entry_mask))
continue;
- free_irq(pci_irq_vector(pdev, i), self->aq_vec[i]);
if (pdev->msix_enabled)
irq_set_affinity_hint(pci_irq_vector(pdev, i), NULL);
+ free_irq(pci_irq_vector(pdev, i), self->aq_vec[i]);
self->msix_entry_mask &= ~(1U << i);
}
}

drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c

View file
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
index d8d06fd..ac76fc2 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
@@ -13292,17 +13292,15 @@ static int bnx2x_init_dev(struct bnx2x *bp, struct pci_dev *pdev,
dev->vlan_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
NETIF_F_TSO | NETIF_F_TSO_ECN | NETIF_F_TSO6 | NETIF_F_HIGHDMA;
- /* VF with OLD Hypervisor or old PF do not support filtering */
if (IS_PF(bp)) {
if (chip_is_e1x)
bp->accept_any_vlan = true;
else
dev->hw_features |= NETIF_F_HW_VLAN_CTAG_FILTER;
-#ifdef CONFIG_BNX2X_SRIOV
- } else if (bp->acquire_resp.pfdev_info.pf_cap & PFVF_CAP_VLAN_FILTER) {
- dev->hw_features |= NETIF_F_HW_VLAN_CTAG_FILTER;
-#endif
}
+ /* For VF we'll know whether to enable VLAN filtering after
+ * getting a response to CHANNEL_TLV_ACQUIRE from PF.
+ */
dev->features |= dev->hw_features | NETIF_F_HW_VLAN_CTAG_RX;
dev->features |= NETIF_F_HIGHDMA;
@@ -13738,7 +13736,7 @@ static int bnx2x_ptp_adjfreq(struct ptp_clock_info *ptp, s32 ppb)
if (!netif_running(bp->dev)) {
DP(BNX2X_MSG_PTP,
"PTP adjfreq called while the interface is down\n");
- return -EFAULT;
+ return -ENETDOWN;
}
if (ppb < 0) {
@@ -13797,6 +13795,12 @@ static int bnx2x_ptp_adjtime(struct ptp_clock_info *ptp, s64 delta)
{
struct bnx2x *bp = container_of(ptp, struct bnx2x, ptp_clock_info);
+ if (!netif_running(bp->dev)) {
+ DP(BNX2X_MSG_PTP,
+ "PTP adjtime called while the interface is down\n");
+ return -ENETDOWN;
+ }
+
DP(BNX2X_MSG_PTP, "PTP adjtime called, delta = %llx\n", delta);
timecounter_adjtime(&bp->timecounter, delta);
@@ -13809,6 +13813,12 @@ static int bnx2x_ptp_gettime(struct ptp_clock_info *ptp, struct timespec64 *ts)
struct bnx2x *bp = container_of(ptp, struct bnx2x, ptp_clock_info);
u64 ns;
+ if (!netif_running(bp->dev)) {
+ DP(BNX2X_MSG_PTP,
+ "PTP gettime called while the interface is down\n");
+ return -ENETDOWN;
+ }
+
ns = timecounter_read(&bp->timecounter);
DP(BNX2X_MSG_PTP, "PTP gettime called, ns = %llu\n", ns);
@@ -13824,6 +13834,12 @@ static int bnx2x_ptp_settime(struct ptp_clock_info *ptp,
struct bnx2x *bp = container_of(ptp, struct bnx2x, ptp_clock_info);
u64 ns;
+ if (!netif_running(bp->dev)) {
+ DP(BNX2X_MSG_PTP,
+ "PTP settime called while the interface is down\n");
+ return -ENETDOWN;
+ }
+
ns = timespec64_to_ns(ts);
DP(BNX2X_MSG_PTP, "PTP settime called, ns = %llu\n", ns);
@@ -13991,6 +14007,14 @@ static int bnx2x_init_one(struct pci_dev *pdev,
rc = bnx2x_vfpf_acquire(bp, tx_count, rx_count);
if (rc)
goto init_one_freemem;
+
+#ifdef CONFIG_BNX2X_SRIOV
+ /* VF with OLD Hypervisor or old PF do not support filtering */
+ if (bp->acquire_resp.pfdev_info.pf_cap & PFVF_CAP_VLAN_FILTER) {
+ dev->hw_features |= NETIF_F_HW_VLAN_CTAG_FILTER;
+ dev->features |= NETIF_F_HW_VLAN_CTAG_FILTER;
+ }
+#endif
}
/* Enable SRIOV if capability found in configuration space */

drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c

View file
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
index 6fad22a..bdfd53b 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
@@ -434,7 +434,9 @@ static int bnx2x_vf_mac_vlan_config(struct bnx2x *bp,
/* Add/Remove the filter */
rc = bnx2x_config_vlan_mac(bp, &ramrod);
- if (rc && rc != -EEXIST) {
+ if (rc == -EEXIST)
+ return 0;
+ if (rc) {
BNX2X_ERR("Failed to %s %s\n",
filter->add ? "add" : "delete",
(filter->type == BNX2X_VF_FILTER_VLAN_MAC) ?
@@ -444,6 +446,8 @@ static int bnx2x_vf_mac_vlan_config(struct bnx2x *bp,
return rc;
}
+ filter->applied = true;
+
return 0;
}
@@ -469,8 +473,10 @@ int bnx2x_vf_mac_vlan_config_list(struct bnx2x *bp, struct bnx2x_virtf *vf,
/* Rollback if needed */
if (i != filters->count) {
BNX2X_ERR("Managed only %d/%d filters - rolling back\n",
- i, filters->count + 1);
+ i, filters->count);
while (--i >= 0) {
+ if (!filters->filters[i].applied)
+ continue;
filters->filters[i].add = !filters->filters[i].add;
bnx2x_vf_mac_vlan_config(bp, vf, qid,
&filters->filters[i],
@@ -1899,7 +1905,8 @@ void bnx2x_iov_adjust_stats_req(struct bnx2x *bp)
continue;
}
- DP(BNX2X_MSG_IOV, "add addresses for vf %d\n", vf->abs_vfid);
+ DP_AND((BNX2X_MSG_IOV | BNX2X_MSG_STATS),
+ "add addresses for vf %d\n", vf->abs_vfid);
for_each_vfq(vf, j) {
struct bnx2x_vf_queue *rxq = vfq_get(vf, j);
@@ -1920,11 +1927,12 @@ void bnx2x_iov_adjust_stats_req(struct bnx2x *bp)
cpu_to_le32(U64_HI(q_stats_addr));
cur_query_entry->address.lo =
cpu_to_le32(U64_LO(q_stats_addr));
- DP(BNX2X_MSG_IOV,
- "added address %x %x for vf %d queue %d client %d\n",
- cur_query_entry->address.hi,
- cur_query_entry->address.lo, cur_query_entry->funcID,
- j, cur_query_entry->index);
+ DP_AND((BNX2X_MSG_IOV | BNX2X_MSG_STATS),
+ "added address %x %x for vf %d queue %d client %d\n",
+ cur_query_entry->address.hi,
+ cur_query_entry->address.lo,
+ cur_query_entry->funcID,
+ j, cur_query_entry->index);
cur_query_entry++;
cur_data_offset += sizeof(struct per_queue_stats);
stats_count++;

drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h

View file
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h
index 7a6d406..888d0b6 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h
@@ -114,6 +114,7 @@ struct bnx2x_vf_mac_vlan_filter {
(BNX2X_VF_FILTER_MAC | BNX2X_VF_FILTER_VLAN) /*shortcut*/
bool add;
+ bool applied;
u8 *mac;
u16 vid;
};

drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c

View file
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c
index bfae300..76a4668 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c
@@ -868,7 +868,7 @@ int bnx2x_vfpf_set_mcast(struct net_device *dev)
struct bnx2x *bp = netdev_priv(dev);
struct vfpf_set_q_filters_tlv *req = &bp->vf2pf_mbox->req.set_q_filters;
struct pfvf_general_resp_tlv *resp = &bp->vf2pf_mbox->resp.general_resp;
- int rc, i = 0;
+ int rc = 0, i = 0;
struct netdev_hw_addr *ha;
if (bp->state != BNX2X_STATE_OPEN) {
@@ -883,6 +883,15 @@ int bnx2x_vfpf_set_mcast(struct net_device *dev)
/* Get Rx mode requested */
DP(NETIF_MSG_IFUP, "dev->flags = %x\n", dev->flags);
+ /* We support PFVF_MAX_MULTICAST_PER_VF mcast addresses tops */
+ if (netdev_mc_count(dev) > PFVF_MAX_MULTICAST_PER_VF) {
+ DP(NETIF_MSG_IFUP,
+ "VF supports not more than %d multicast MAC addresses\n",
+ PFVF_MAX_MULTICAST_PER_VF);
+ rc = -EINVAL;
+ goto out;
+ }
+
netdev_for_each_mc_addr(ha, dev) {
DP(NETIF_MSG_IFUP, "Adding mcast MAC: %pM\n",
bnx2x_mc_addr(ha));
@@ -890,16 +899,6 @@ int bnx2x_vfpf_set_mcast(struct net_device *dev)
i++;
}
- /* We support four PFVF_MAX_MULTICAST_PER_VF mcast
- * addresses tops
- */
- if (i >= PFVF_MAX_MULTICAST_PER_VF) {
- DP(NETIF_MSG_IFUP,
- "VF supports not more than %d multicast MAC addresses\n",
- PFVF_MAX_MULTICAST_PER_VF);
- return -EINVAL;
- }
-
req->n_multicast = i;
req->flags |= VFPF_SET_Q_FILTERS_MULTICAST_CHANGED;
req->vf_qid = 0;
@@ -924,7 +923,7 @@ int bnx2x_vfpf_set_mcast(struct net_device *dev)
out:
bnx2x_vfpf_finalize(bp, &req->first_tlv);
- return 0;
+ return rc;
}
/* request pf to add a vlan for the vf */
@@ -1778,6 +1777,23 @@ static int bnx2x_vf_mbx_qfilters(struct bnx2x *bp, struct bnx2x_virtf *vf)
goto op_err;
}
+ /* build vlan list */
+ fl = NULL;
+
+ rc = bnx2x_vf_mbx_macvlan_list(bp, vf, msg, &fl,
+ VFPF_VLAN_FILTER);
+ if (rc)
+ goto op_err;
+
+ if (fl) {
+ /* set vlan list */
+ rc = bnx2x_vf_mac_vlan_config_list(bp, vf, fl,
+ msg->vf_qid,
+ false);
+ if (rc)
+ goto op_err;
+ }
+
}
if (msg->flags & VFPF_SET_Q_FILTERS_RX_MASK_CHANGED) {

drivers/net/ethernet/broadcom/bnxt/bnxt.c

View file
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 235733e..32de458 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -4465,6 +4465,10 @@ static int bnxt_hwrm_func_qcfg(struct bnxt *bp)
vf->vlan = le16_to_cpu(resp->vlan) & VLAN_VID_MASK;
}
#endif
+ if (BNXT_PF(bp) && (le16_to_cpu(resp->flags) &
+ FUNC_QCFG_RESP_FLAGS_FW_DCBX_AGENT_ENABLED))
+ bp->flags |= BNXT_FLAG_FW_LLDP_AGENT;
+
switch (resp->port_partition_type) {
case FUNC_QCFG_RESP_PORT_PARTITION_TYPE_NPAR1_0:
case FUNC_QCFG_RESP_PORT_PARTITION_TYPE_NPAR1_5:
@@ -5507,8 +5511,9 @@ static int bnxt_hwrm_phy_qcaps(struct bnxt *bp)
bp->lpi_tmr_hi = le32_to_cpu(resp->valid_tx_lpi_timer_high) &
PORT_PHY_QCAPS_RESP_TX_LPI_TIMER_HIGH_MASK;
}
- link_info->support_auto_speeds =
- le16_to_cpu(resp->supported_speeds_auto_mode);
+ if (resp->supported_speeds_auto_mode)
+ link_info->support_auto_speeds =
+ le16_to_cpu(resp->supported_speeds_auto_mode);
hwrm_phy_qcaps_exit:
mutex_unlock(&bp->hwrm_cmd_lock);
@@ -6495,8 +6500,14 @@ static void bnxt_reset_task(struct bnxt *bp, bool silent)
if (!silent)
bnxt_dbg_dump_states(bp);
if (netif_running(bp->dev)) {
+ int rc;
+
+ if (!silent)
+ bnxt_ulp_stop(bp);
bnxt_close_nic(bp, false, false);
- bnxt_open_nic(bp, false, false);
+ rc = bnxt_open_nic(bp, false, false);
+ if (!silent && !rc)
+ bnxt_ulp_start(bp);
}
}
@@ -7444,6 +7455,10 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
if (rc)
goto init_err_pci_clean;
+ rc = bnxt_hwrm_func_reset(bp);
+ if (rc)
+ goto init_err_pci_clean;
+
bnxt_hwrm_fw_set_time(bp);
dev->hw_features = NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_SG |
@@ -7554,10 +7569,6 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
if (rc)
goto init_err_pci_clean;
- rc = bnxt_hwrm_func_reset(bp);
- if (rc)
- goto init_err_pci_clean;
-
rc = bnxt_init_int_mode(bp);
if (rc)
goto init_err_pci_clean;

drivers/net/ethernet/broadcom/bnxt/bnxt.h

View file
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.h b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
index faf26a2..c7a5b84 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.h
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
@@ -993,6 +993,7 @@ struct bnxt {
BNXT_FLAG_ROCEV2_CAP)
#define BNXT_FLAG_NO_AGG_RINGS 0x20000
#define BNXT_FLAG_RX_PAGE_MODE 0x40000
+ #define BNXT_FLAG_FW_LLDP_AGENT 0x80000
#define BNXT_FLAG_CHIP_NITRO_A0 0x1000000
#define BNXT_FLAG_ALL_CONFIG_FEATS (BNXT_FLAG_TPA | \

drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c

View file
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
index fdf2d8c..0353206 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c
@@ -474,7 +474,7 @@ void bnxt_dcb_init(struct bnxt *bp)
return;
bp->dcbx_cap = DCB_CAP_DCBX_VER_IEEE;
- if (BNXT_PF(bp))
+ if (BNXT_PF(bp) && !(bp->flags & BNXT_FLAG_FW_LLDP_AGENT))
bp->dcbx_cap |= DCB_CAP_DCBX_HOST;
else
bp->dcbx_cap |= DCB_CAP_DCBX_LLD_MANAGED;

drivers/net/ethernet/broadcom/genet/bcmgenet.c

View file
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
index f928968..69015fa 100644
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -1,7 +1,7 @@
/*
* Broadcom GENET (Gigabit Ethernet) controller driver
*
- * Copyright (c) 2014 Broadcom Corporation
+ * Copyright (c) 2014-2017 Broadcom
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
@@ -450,6 +450,22 @@ static inline void bcmgenet_rdma_ring_writel(struct bcmgenet_priv *priv,
genet_dma_ring_regs[r]);
}
+static int bcmgenet_begin(struct net_device *dev)
+{
+ struct bcmgenet_priv *priv = netdev_priv(dev);
+
+ /* Turn on the clock */
+ return clk_prepare_enable(priv->clk);
+}
+
+static void bcmgenet_complete(struct net_device *dev)
+{
+ struct bcmgenet_priv *priv = netdev_priv(dev);

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/broadcom/genet/bcmgenet.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/liquidio/lio_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/liquidio/lio_vf_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/liquidio/octeon_config.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/liquidio/octeon_droq.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/liquidio/octeon_droq.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/liquidio/octeon_main.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/liquidio/octeon_network.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/thunder/nic.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/thunder/nicvf_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/thunder/nicvf_queues.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/thunder/nicvf_queues.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/thunder/thunder_bgx.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/cavium/thunder/thunder_bgx.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/ibm/emac/core.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/ibm/ibmvnic.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/ibm/ibmvnic.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_selftest.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/en_tc.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/fs_core.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlx5/core/main.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlxsw/reg.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/qlogic/qed/qed_cxt.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/qlogic/qed/qed_dev.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/qlogic/qed/qed_iscsi.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/qlogic/qed/qed_ll2.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/qlogic/qed/qed_ooo.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/ethernet/smsc/smc91x.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/hyperv/hyperv_net.h

View file

This diff is incomplete. Download the complete patch.

drivers/net/hyperv/netvsc.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/hyperv/netvsc_drv.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/phy/marvell.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/phy/phy_device.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/phy/spi_ks8995.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/team/team.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/tun.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/vrf.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/vxlan.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wan/fsl_ucc_hdlc.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/wimax/i2400m/usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/xen-netback/interface.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/xen-netback/netback.c

View file

This diff is incomplete. Download the complete patch.

drivers/net/xen-netback/xenbus.c

View file

This diff is incomplete. Download the complete patch.

drivers/staging/lustre/lnet/lnet/lib-socket.c

View file

This diff is incomplete. Download the complete patch.

fs/dlm/lowcomms.c

View file

This diff is incomplete. Download the complete patch.

fs/ocfs2/cluster/tcp.c

View file

This diff is incomplete. Download the complete patch.

include/crypto/if_alg.h

View file

This diff is incomplete. Download the complete patch.

include/linux/dccp.h

View file

This diff is incomplete. Download the complete patch.

include/linux/filter.h

View file

This diff is incomplete. Download the complete patch.

include/linux/list_nulls.h

View file

This diff is incomplete. Download the complete patch.

include/linux/net.h

View file

This diff is incomplete. Download the complete patch.

include/linux/phy.h

View file

This diff is incomplete. Download the complete patch.

include/linux/rculist_nulls.h

View file

This diff is incomplete. Download the complete patch.

include/net/inet_common.h

View file

This diff is incomplete. Download the complete patch.

include/net/inet_connection_sock.h

View file

This diff is incomplete. Download the complete patch.

include/net/sctp/structs.h

View file

This diff is incomplete. Download the complete patch.

include/net/sock.h

View file

This diff is incomplete. Download the complete patch.

include/uapi/linux/packet_diag.h

View file

This diff is incomplete. Download the complete patch.

kernel/bpf/hashtab.c

View file

This diff is incomplete. Download the complete patch.

kernel/bpf/lpm_trie.c

View file

This diff is incomplete. Download the complete patch.

net/atm/svc.c

View file

This diff is incomplete. Download the complete patch.

net/ax25/af_ax25.c

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/l2cap_sock.c

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/rfcomm/sock.c

View file

This diff is incomplete. Download the complete patch.

net/bluetooth/sco.c

View file

This diff is incomplete. Download the complete patch.

net/bridge/br_input.c

View file

This diff is incomplete. Download the complete patch.

net/bridge/br_netfilter_hooks.c

View file

This diff is incomplete. Download the complete patch.

net/core/dev.c

View file

This diff is incomplete. Download the complete patch.

net/core/net-sysfs.c

View file

This diff is incomplete. Download the complete patch.

net/core/skbuff.c

View file

This diff is incomplete. Download the complete patch.

net/core/sock.c

View file

This diff is incomplete. Download the complete patch.

net/dccp/ccids/ccid2.c

View file

This diff is incomplete. Download the complete patch.

net/dccp/ipv4.c

View file

This diff is incomplete. Download the complete patch.

net/dccp/ipv6.c

View file

This diff is incomplete. Download the complete patch.

net/dccp/minisocks.c

View file

This diff is incomplete. Download the complete patch.

net/decnet/af_decnet.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/af_inet.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/inet_connection_sock.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/ip_output.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/tcp_ipv4.c

View file

This diff is incomplete. Download the complete patch.

net/ipv4/tcp_timer.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/af_inet6.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ip6_fib.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ip6_offload.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ip6_output.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/ip6_vti.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/route.c

View file

This diff is incomplete. Download the complete patch.

net/ipv6/tcp_ipv6.c

View file

This diff is incomplete. Download the complete patch.

net/irda/af_irda.c

View file

This diff is incomplete. Download the complete patch.

net/iucv/af_iucv.c

View file

This diff is incomplete. Download the complete patch.

net/llc/af_llc.c

View file

This diff is incomplete. Download the complete patch.

net/mpls/af_mpls.c

View file

This diff is incomplete. Download the complete patch.

net/netrom/af_netrom.c

View file

This diff is incomplete. Download the complete patch.

net/nfc/llcp_sock.c

View file

This diff is incomplete. Download the complete patch.

net/phonet/pep.c

View file

This diff is incomplete. Download the complete patch.

net/phonet/socket.c

View file

This diff is incomplete. Download the complete patch.

net/rds/connection.c

View file

This diff is incomplete. Download the complete patch.

net/rds/ib_cm.c

View file

This diff is incomplete. Download the complete patch.

net/rds/rds.h

View file

This diff is incomplete. Download the complete patch.

net/rds/tcp.c

View file

This diff is incomplete. Download the complete patch.

net/rds/tcp.h

View file

This diff is incomplete. Download the complete patch.

net/rds/tcp_listen.c

View file

This diff is incomplete. Download the complete patch.

net/rose/af_rose.c

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/input.c

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/recvmsg.c

View file

This diff is incomplete. Download the complete patch.

net/rxrpc/sendmsg.c

View file

This diff is incomplete. Download the complete patch.

net/sched/act_connmark.c

View file

This diff is incomplete. Download the complete patch.

net/sched/act_skbmod.c

View file

This diff is incomplete. Download the complete patch.

net/sctp/ipv6.c

View file

This diff is incomplete. Download the complete patch.

net/sctp/protocol.c

View file

This diff is incomplete. Download the complete patch.

net/sctp/socket.c

View file

This diff is incomplete. Download the complete patch.

net/smc/af_smc.c

View file

This diff is incomplete. Download the complete patch.

net/socket.c

View file

This diff is incomplete. Download the complete patch.

net/tipc/socket.c

View file

This diff is incomplete. Download the complete patch.

net/unix/af_unix.c

View file

This diff is incomplete. Download the complete patch.

net/vmw_vsock/af_vsock.c

View file

This diff is incomplete. Download the complete patch.

net/x25/af_x25.c

View file

This diff is incomplete. Download the complete patch.

net/xfrm/xfrm_policy.c

View file

This diff is incomplete. Download the complete patch.

tools/include/uapi/linux/bpf_perf_event.h

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/bpf/Makefile

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/bpf/test_verifier.c

View file

This diff is incomplete. Download the complete patch.