1. 14 11月, 2020 2 次提交
  2. 22 10月, 2020 5 次提交
    • L
      ibmvnic: save changed mac address to adapter->mac_addr · d9b0e599
      Lijun Pan 提交于
      After mac address change request completes successfully, the new mac
      address need to be saved to adapter->mac_addr as well as
      netdev->dev_addr. Otherwise, adapter->mac_addr still holds old
      data.
      
      Fixes: 62740e97 ("net/ibmvnic: Update MAC address settings after adapter reset")
      Signed-off-by: NLijun Pan <ljp@linux.ibm.com>
      Link: https://lore.kernel.org/r/20201020223919.46106-1-ljp@linux.ibm.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      d9b0e599
    • M
      Revert "virtio-net: ethtool configurable RXCSUM" · cf8691cb
      Michael S. Tsirkin 提交于
      This reverts commit 3618ad2a.
      
      When control vq is not negotiated, that commit causes a crash:
      
      [   72.229171] kernel BUG at drivers/net/virtio_net.c:1667!
      [   72.230266] invalid opcode: 0000 [#1] PREEMPT SMP
      [   72.231172] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.9.0-rc8-02934-g3618ad2a #1
      [   72.231172] EIP: virtnet_send_command+0x120/0x140
      [   72.231172] Code: 00 0f 94 c0 8b 7d f0 65 33 3d 14 00 00 00 75 1c 8d 65 f4 5b 5e 5f 5d c3 66 90 be 01 00 00 00 e9 6e ff ff ff 8d b6 00
      +00 00 00 <0f> 0b e8 d9 bb 82 00 eb 17 8d b4 26 00 00 00 00 8d b4 26 00 00 00
      [   72.231172] EAX: 0000000d EBX: f72895c0 ECX: 00000017 EDX: 00000011
      [   72.231172] ESI: f7197800 EDI: ed69bd00 EBP: ed69bcf4 ESP: ed69bc98
      [   72.231172] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068 EFLAGS: 00010246
      [   72.231172] CR0: 80050033 CR2: 00000000 CR3: 02c84000 CR4: 000406f0
      [   72.231172] Call Trace:
      [   72.231172]  ? __virt_addr_valid+0x45/0x60
      [   72.231172]  ? ___cache_free+0x51f/0x760
      [   72.231172]  ? kobject_uevent_env+0xf4/0x560
      [   72.231172]  virtnet_set_guest_offloads+0x4d/0x80
      [   72.231172]  virtnet_set_features+0x85/0x120
      [   72.231172]  ? virtnet_set_guest_offloads+0x80/0x80
      [   72.231172]  __netdev_update_features+0x27a/0x8e0
      [   72.231172]  ? kobject_uevent+0xa/0x20
      [   72.231172]  ? netdev_register_kobject+0x12c/0x160
      [   72.231172]  register_netdevice+0x4fe/0x740
      [   72.231172]  register_netdev+0x1c/0x40
      [   72.231172]  virtnet_probe+0x728/0xb60
      [   72.231172]  ? _raw_spin_unlock+0x1d/0x40
      [   72.231172]  ? virtio_vdpa_get_status+0x1c/0x20
      [   72.231172]  virtio_dev_probe+0x1c6/0x271
      [   72.231172]  really_probe+0x195/0x2e0
      [   72.231172]  driver_probe_device+0x26/0x60
      [   72.231172]  device_driver_attach+0x49/0x60
      [   72.231172]  __driver_attach+0x46/0xc0
      [   72.231172]  ? device_driver_attach+0x60/0x60
      [   72.231172]  bus_add_driver+0x197/0x1c0
      [   72.231172]  driver_register+0x66/0xc0
      [   72.231172]  register_virtio_driver+0x1b/0x40
      [   72.231172]  virtio_net_driver_init+0x61/0x86
      [   72.231172]  ? veth_init+0x14/0x14
      [   72.231172]  do_one_initcall+0x76/0x2e4
      [   72.231172]  ? rdinit_setup+0x2a/0x2a
      [   72.231172]  do_initcalls+0xb2/0xd5
      [   72.231172]  kernel_init_freeable+0x14f/0x179
      [   72.231172]  ? rest_init+0x100/0x100
      [   72.231172]  kernel_init+0xd/0xe0
      [   72.231172]  ret_from_fork+0x1c/0x30
      [   72.231172] Modules linked in:
      [   72.269563] ---[ end trace a6ebc4afea0e6cb1 ]---
      
      The reason is that virtnet_set_features now calls virtnet_set_guest_offloads
      unconditionally, it used to only call it when there is something
      to configure.
      
      If device does not have a control vq, everything breaks.
      
      Revert the original commit for now.
      
      Cc: Tonghao Zhang <xiangxia.m.yue@gmail.com>
      Fixes: 3618ad2a ("virtio-net: ethtool configurable RXCSUM")
      Reported-by: Nkernel test robot <lkp@intel.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Acked-by: NWillem de Bruijn <willemb@google.com>
      Acked-by: NJason Wang <jasowang@redhat.com>
      Link: https://lore.kernel.org/r/20201021142944.13615-1-mst@redhat.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      cf8691cb
    • B
      net: ethernet: mtk-star-emac: select REGMAP_MMIO · 5403caf2
      Bartosz Golaszewski 提交于
      The driver depends on mmio regmap API but doesn't select the appropriate
      Kconfig option. This fixes it.
      
      Fixes: 8c7bd5a4 ("net: ethernet: mtk-star-emac: new driver")
      Signed-off-by: NBartosz Golaszewski <bgolaszewski@baylibre.com>
      Link: https://lore.kernel.org/r/20201020073515.22769-1-brgl@bgdev.plSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      5403caf2
    • X
      net: hdlc_raw_eth: Clear the IFF_TX_SKB_SHARING flag after calling ether_setup · 5fce1e43
      Xie He 提交于
      This driver calls ether_setup to set up the network device.
      The ether_setup function would add the IFF_TX_SKB_SHARING flag to the
      device. This flag indicates that it is safe to transmit shared skbs to
      the device.
      
      However, this is not true. This driver may pad the frame (in eth_tx)
      before transmission, so the skb may be modified.
      
      Fixes: 550fd08c ("net: Audit drivers to identify those needing IFF_TX_SKB_SHARING cleared")
      Cc: Neil Horman <nhorman@tuxdriver.com>
      Cc: Krzysztof Halasa <khc@pm.waw.pl>
      Signed-off-by: NXie He <xie.he.0141@gmail.com>
      Link: https://lore.kernel.org/r/20201020063420.187497-1-xie.he.0141@gmail.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      5fce1e43
    • X
      net: hdlc: In hdlc_rcv, check to make sure dev is an HDLC device · 01c4ceae
      Xie He 提交于
      The hdlc_rcv function is used as hdlc_packet_type.func to process any
      skb received in the kernel with skb->protocol == htons(ETH_P_HDLC).
      The purpose of this function is to provide second-stage processing for
      skbs not assigned a "real" L3 skb->protocol value in the first stage.
      
      This function assumes the device from which the skb is received is an
      HDLC device (a device created by this module). It assumes that
      netdev_priv(dev) returns a pointer to "struct hdlc_device".
      
      However, it is possible that some driver in the kernel (not necessarily
      in our control) submits a received skb with skb->protocol ==
      htons(ETH_P_HDLC), from a non-HDLC device. In this case, the skb would
      still be received by hdlc_rcv. This will cause problems.
      
      hdlc_rcv should be able to recognize and drop invalid skbs. It should
      first make sure "dev" is actually an HDLC device, before starting its
      processing. This patch adds this check to hdlc_rcv.
      
      Fixes: 1da177e4 ("Linux-2.6.12-rc2")
      Cc: Krzysztof Halasa <khc@pm.waw.pl>
      Signed-off-by: NXie He <xie.he.0141@gmail.com>
      Link: https://lore.kernel.org/r/20201020013152.89259-1-xie.he.0141@gmail.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      01c4ceae
  3. 21 10月, 2020 31 次提交
  4. 20 10月, 2020 2 次提交
    • T
      PCI: v3-semi: Remove unneeded break · 58e0cd3e
      Tom Rix 提交于
      A break is not needed if it is preceded by a return
      
      Link: https://lore.kernel.org/r/20201019190249.7825-1-trix@redhat.comSigned-off-by: NTom Rix <trix@redhat.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Reviewed-by: NLinus Walleij <linus.walleij@linaro.org>
      58e0cd3e
    • H
      PCI: dwc: Add link up check in dw_child_pcie_ops.map_bus() · 15b23906
      Hou Zhiqiang 提交于
      NXP Layerscape (ls1028a, ls2088a), dra7xxx and imx6 platforms are either
      programmed or statically configured to forward the error triggered by a
      link-down state (eg no connected endpoint device) on the system bus for
      PCI configuration transactions; these errors are reported as an SError
      at system level, which is fatal.
      
      Enumerating a PCI tree when the PCIe link is down is not sensible
      either, so even if the link-up check is racy (link can go down after
      map_bus() is called) add a link-up check in map_bus() to prevent issuing
      configuration transactions when the link is down.
      
      SError report:
      
       SError Interrupt on CPU2, code 0xbf000002 -- SError
       CPU: 2 PID: 1 Comm: swapper/0 Not tainted 5.9.0-rc5-next-20200914-00001-gf965d3ec86fa #67
       Hardware name: LS1046A RDB Board (DT)
       pstate: 20000085 (nzCv daIf -PAN -UAO BTYPE=--)
       pc : pci_generic_config_read+0x3c/0xe0
       lr : pci_generic_config_read+0x24/0xe0
       sp : ffff80001003b7b0
       x29: ffff80001003b7b0 x28: ffff80001003ba74
       x27: ffff000971d96800 x26: ffff00096e77e0a8
       x25: ffff80001003b874 x24: ffff80001003b924
       x23: 0000000000000004 x22: 0000000000000000
       x21: 0000000000000000 x20: ffff80001003b874
       x19: 0000000000000004 x18: ffffffffffffffff
       x17: 00000000000000c0 x16: fffffe0025981840
       x15: ffffb94c75b69948 x14: 62203a383634203a
       x13: 666e6f635f726568 x12: 202c31203d207265
       x11: 626d756e3e2d7375 x10: 656877202c307830
       x9 : 203d206e66766564 x8 : 0000000000000908
       x7 : 0000000000000908 x6 : ffff800010900000
       x5 : ffff00096e77e080 x4 : 0000000000000000
       x3 : 0000000000000003 x2 : 84fa3440ff7e7000
       x1 : 0000000000000000 x0 : ffff800010034000
       Kernel panic - not syncing: Asynchronous SError Interrupt
       CPU: 2 PID: 1 Comm: swapper/0 Not tainted 5.9.0-rc5-next-20200914-00001-gf965d3ec86fa #67
       Hardware name: LS1046A RDB Board (DT)
       Call trace:
        dump_backtrace+0x0/0x1c0
        show_stack+0x18/0x28
        dump_stack+0xd8/0x134
        panic+0x180/0x398
        add_taint+0x0/0xb0
        arm64_serror_panic+0x78/0x88
        do_serror+0x68/0x180
        el1_error+0x84/0x100
        pci_generic_config_read+0x3c/0xe0
        dw_pcie_rd_other_conf+0x78/0x110
        pci_bus_read_config_dword+0x88/0xe8
        pci_bus_generic_read_dev_vendor_id+0x30/0x1b0
        pci_bus_read_dev_vendor_id+0x4c/0x78
        pci_scan_single_device+0x80/0x100
      
      Link: https://lore.kernel.org/r/20200916054130.8685-1-Zhiqiang.Hou@nxp.comSigned-off-by: NHou Zhiqiang <Zhiqiang.Hou@nxp.com>
      [lorenzo.pieralisi@arm.com: rewrote the commit log, remove Fixes tag]
      Signed-off-by: NLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
      15b23906