1. 19 Jul, 2020 11 commits
  2. 18 Jul, 2020 6 commits
  3. 17 Jul, 2020 9 commits
    • Wang Hai's avatar
      nfc: nci: add missed destroy_workqueue in nci_register_device · 0b4a66a3
      Wang Hai authored
      When nfc_register_device fails in nci_register_device,
      destroy_workqueue() shouled be called to destroy ndev->tx_wq.
      
      Fixes: 3c1c0f5d ("NFC: NCI: Fix nci_register_device init sequence")
      Reported-by: default avatarHulk Robot <hulkci@huawei.com>
      Signed-off-by: default avatarWang Hai <wanghai38@huawei.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0b4a66a3
    • David S. Miller's avatar
      Merge branch 'bcmgenet-WAKE_FILTER' · 12915174
      David S. Miller authored
      Doug Berger says:
      
      ====================
      net: bcmgenet: fix WAKE_FILTER resume from deep sleep
      
      The WAKE_FILTER logic can only wake the system from the standby
      power state. However, some systems that include the GENET IP
      support deeper power saving states and the driver should suspend
      and resume correctly from those states as well.
      
      This commit set squashes a few issues uncovered while testing
      suspend and resume from these deep sleep states.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      12915174
    • Doug Berger's avatar
      net: bcmgenet: restore HFB filters on resume · a8c64542
      Doug Berger authored
      The Hardware Filter Block RAM may not be preserved when the GENET
      block is reset during a deep sleep, so it is not sufficient to
      only backup and restore the enables.
      
      This commit clears out the HFB block and reprograms the rxnfc
      rules when the system resumes from a suspended state. To support
      this the bcmgenet_hfb_create_rxnfc_filter() function is modified
      to access the register space directly so that it can't fail due
      to memory allocation issues.
      
      Fixes: f50932cc ("net: bcmgenet: add WAKE_FILTER support")
      Signed-off-by: default avatarDoug Berger <opendmb@gmail.com>
      Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a8c64542
    • Doug Berger's avatar
      net: bcmgenet: test RBUF_ACPI_EN when resuming · 3d653adb
      Doug Berger authored
      When the GENET driver resumes from deep sleep the UMAC_CMD
      register may not be accessible and therefore should not be
      accessed from bcmgenet_wol_power_up_cfg() if the GENET has
      been reset.
      
      This commit adds a check of the RBUF_ACPI_EN flag when Wake
      on Filter is enabled. A clear flag indicates that the GENET
      hardware must have been reset so the remainder of the
      hardware programming is bypassed.
      
      Fixes: f50932cc ("net: bcmgenet: add WAKE_FILTER support")
      Signed-off-by: default avatarDoug Berger <opendmb@gmail.com>
      Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      3d653adb
    • Doug Berger's avatar
      net: bcmgenet: test MPD_EN when resuming · 2f11f0df
      Doug Berger authored
      When the GENET driver resumes from deep sleep the UMAC_CMD
      register may not be accessible and therefore should not be
      accessed from bcmgenet_wol_power_up_cfg() if the GENET has
      been reset.
      
      This commit adds a check of the MPD_EN flag when Wake on
      Magic Packet is enabled. A clear flag indicates that the
      GENET hardware must have been reset so the remainder of the
      hardware programming is bypassed.
      
      Fixes: 1a1d5106 ("net: bcmgenet: move clk_wol management to bcmgenet_wol")
      Signed-off-by: default avatarDoug Berger <opendmb@gmail.com>
      Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      2f11f0df
    • Paolo Pisati's avatar
      selftests: net: ip_defrag: modprobe missing nf_defrag_ipv6 support · aba69d49
      Paolo Pisati authored
      Fix ip_defrag.sh when CONFIG_NF_DEFRAG_IPV6=m:
      
      $ sudo ./ip_defrag.sh
      + set -e
      + mktemp -u XXXXXX
      + readonly NETNS=ns-rGlXcw
      + trap cleanup EXIT
      + setup
      + ip netns add ns-rGlXcw
      + ip -netns ns-rGlXcw link set lo up
      + ip netns exec ns-rGlXcw sysctl -w net.ipv4.ipfrag_high_thresh=9000000
      + ip netns exec ns-rGlXcw sysctl -w net.ipv4.ipfrag_low_thresh=7000000
      + ip netns exec ns-rGlXcw sysctl -w net.ipv4.ipfrag_time=1
      + ip netns exec ns-rGlXcw sysctl -w net.ipv6.ip6frag_high_thresh=9000000
      + ip netns exec ns-rGlXcw sysctl -w net.ipv6.ip6frag_low_thresh=7000000
      + ip netns exec ns-rGlXcw sysctl -w net.ipv6.ip6frag_time=1
      + ip netns exec ns-rGlXcw sysctl -w net.netfilter.nf_conntrack_frag6_high_thresh=9000000
      + cleanup
      + ip netns del ns-rGlXcw
      
      $ ls -la /proc/sys/net/netfilter/nf_conntrack_frag6_high_thresh
      ls: cannot access '/proc/sys/net/netfilter/nf_conntrack_frag6_high_thresh': No such file or directory
      
      $ sudo modprobe nf_defrag_ipv6
      $ ls -la /proc/sys/net/netfilter/nf_conntrack_frag6_high_thresh
      -rw-r--r-- 1 root root 0 Jul 14 12:34 /proc/sys/net/netfilter/nf_conntrack_frag6_high_thresh
      Signed-off-by: default avatarPaolo Pisati <paolo.pisati@canonical.com>
      Reviewed-by: default avatarJakub Kicinski <kuba@kernel.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      aba69d49
    • Wang Hai's avatar
      net: smc91x: Fix possible memory leak in smc_drv_probe() · bca9749b
      Wang Hai authored
      If try_toggle_control_gpio() failed in smc_drv_probe(), free_netdev(ndev)
      should be called to free the ndev created earlier. Otherwise, a memleak
      will occur.
      
      Fixes: 7d2911c4 ("net: smc91x: Fix gpios for device tree based booting")
      Reported-by: default avatarHulk Robot <hulkci@huawei.com>
      Signed-off-by: default avatarWang Hai <wanghai38@huawei.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bca9749b
    • Weilong Chen's avatar
      rtnetlink: Fix memory(net_device) leak when ->newlink fails · cebb6975
      Weilong Chen authored
      When vlan_newlink call register_vlan_dev fails, it might return error
      with dev->reg_state = NETREG_UNREGISTERED. The rtnl_newlink should
      free the memory. But currently rtnl_newlink only free the memory which
      state is NETREG_UNINITIALIZED.
      
      BUG: memory leak
      unreferenced object 0xffff8881051de000 (size 4096):
        comm "syz-executor139", pid 560, jiffies 4294745346 (age 32.445s)
        hex dump (first 32 bytes):
          76 6c 61 6e 32 00 00 00 00 00 00 00 00 00 00 00  vlan2...........
          00 45 28 03 81 88 ff ff 00 00 00 00 00 00 00 00  .E(.............
        backtrace:
          [<0000000047527e31>] kmalloc_node include/linux/slab.h:578 [inline]
          [<0000000047527e31>] kvmalloc_node+0x33/0xd0 mm/util.c:574
          [<000000002b59e3bc>] kvmalloc include/linux/mm.h:753 [inline]
          [<000000002b59e3bc>] kvzalloc include/linux/mm.h:761 [inline]
          [<000000002b59e3bc>] alloc_netdev_mqs+0x83/0xd90 net/core/dev.c:9929
          [<000000006076752a>] rtnl_create_link+0x2c0/0xa20 net/core/rtnetlink.c:3067
          [<00000000572b3be5>] __rtnl_newlink+0xc9c/0x1330 net/core/rtnetlink.c:3329
          [<00000000e84ea553>] rtnl_newlink+0x66/0x90 net/core/rtnetlink.c:3397
          [<0000000052c7c0a9>] rtnetlink_rcv_msg+0x540/0x990 net/core/rtnetlink.c:5460
          [<000000004b5cb379>] netlink_rcv_skb+0x12b/0x3a0 net/netlink/af_netlink.c:2469
          [<00000000c71c20d3>] netlink_unicast_kernel net/netlink/af_netlink.c:1303 [inline]
          [<00000000c71c20d3>] netlink_unicast+0x4c6/0x690 net/netlink/af_netlink.c:1329
          [<00000000cca72fa9>] netlink_sendmsg+0x735/0xcc0 net/netlink/af_netlink.c:1918
          [<000000009221ebf7>] sock_sendmsg_nosec net/socket.c:652 [inline]
          [<000000009221ebf7>] sock_sendmsg+0x109/0x140 net/socket.c:672
          [<000000001c30ffe4>] ____sys_sendmsg+0x5f5/0x780 net/socket.c:2352
          [<00000000b71ca6f3>] ___sys_sendmsg+0x11d/0x1a0 net/socket.c:2406
          [<0000000007297384>] __sys_sendmsg+0xeb/0x1b0 net/socket.c:2439
          [<000000000eb29b11>] do_syscall_64+0x56/0xa0 arch/x86/entry/common.c:359
          [<000000006839b4d0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
      
      Fixes: cb626bf5 ("net-sysfs: Fix reference count leak")
      Reported-by: default avatarHulk Robot <hulkci@huawei.com>
      Signed-off-by: default avatarWeilong Chen <chenweilong@huawei.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      cebb6975
    • Min Li's avatar
      docs: ptp.rst: add support for Renesas (IDT) ClockMatrix · 56a1c778
      Min Li authored
      Add below to “Ancillary clock features” section
        - Low Pass Filter (LPF) access from user space
      
      Add below to list of “Supported hardware” section
        + Renesas (IDT) ClockMatrixSigned-off-by: default avatarMin Li <min.li.xe@renesas.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      56a1c778
  4. 16 Jul, 2020 5 commits
  5. 14 Jul, 2020 7 commits
  6. 12 Jul, 2020 2 commits
    • David S. Miller's avatar
      Merge branch 'bnxt_en-fixes' · d99c6fa4
      David S. Miller authored
      Michael Chan says:
      
      ====================
      bnxt_en: 3 bug fixes.
      
      2 Fixes related to PHY/link settings.  The last one fixes the sizing of
      the completion ring.
      
      Please also queue for -stable.  Thanks.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d99c6fa4
    • Michael Chan's avatar
      bnxt_en: Fix completion ring sizing with TPA enabled. · 27640ce6
      Michael Chan authored
      The current completion ring sizing formula is wrong with TPA enabled.
      The formula assumes that the number of TPA completions are bound by the
      RX ring size, but that's not true.  TPA_START completions are immediately
      recycled so they are not bound by the RX ring size.  We must add
      bp->max_tpa to the worst case maximum RX and TPA completions.
      
      The completion ring can overflow because of this mistake.  This will
      cause hardware to disable the completion ring when this happens,
      leading to RX and TX traffic to stall on that ring.  This issue is
      generally exposed only when the RX ring size is set very small.
      
      Fix the formula by adding bp->max_tpa to the number of RX completions
      if TPA is enabled.
      
      Fixes: c0c050c5 ("bnxt_en: New Broadcom ethernet driver.");
      Reviewed-by: default avatarVasundhara Volam <vasundhara-v.volam@broadcom.com>
      Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      27640ce6