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 11 次提交
  4. 20 10月, 2020 4 次提交
  5. 19 10月, 2020 2 次提交
  6. 17 10月, 2020 2 次提交
    • I
      net: pcs-xpcs: depend on MDIO_BUS instead of selecting it · f355a55f
      Ioana Ciornei 提交于
      The below compile time error can be seen when PHYLIB is configured as a
      module.
      
       ld: drivers/net/pcs/pcs-xpcs.o: in function `xpcs_read':
       pcs-xpcs.c:(.text+0x29): undefined reference to `mdiobus_read'
       ld: drivers/net/pcs/pcs-xpcs.o: in function `xpcs_soft_reset.constprop.7':
       pcs-xpcs.c:(.text+0x80): undefined reference to `mdiobus_write'
       ld: drivers/net/pcs/pcs-xpcs.o: in function `xpcs_config_aneg':
       pcs-xpcs.c:(.text+0x318): undefined reference to `mdiobus_write'
       ld: pcs-xpcs.c:(.text+0x38e): undefined reference to `mdiobus_write'
       ld: pcs-xpcs.c:(.text+0x3eb): undefined reference to `mdiobus_write'
       ld: pcs-xpcs.c:(.text+0x437): undefined reference to `mdiobus_write'
       ld: drivers/net/pcs/pcs-xpcs.o:pcs-xpcs.c:(.text+0xb1e): more undefined references to `mdiobus_write' follow
      
      PHYLIB being a module leads to MDIO_BUS being a module as well while the
      XPCS is still built-in. What should happen in this configuration is that
      PCS_XPCS should be forced to build as module. However, that select only
      acts in the opposite way so we should turn it into a depends.
      
      Fix this up by explicitly depending on MDIO_BUS.
      Reported-by: NRandy Dunlap <rdunlap@infradead.org>
      Acked-by: Randy Dunlap <rdunlap@infradead.org> # build-tested
      Fixes: 2fa4e4b7 ("net: pcs: Move XPCS into new PCS subdirectory")
      Signed-off-by: NIoana Ciornei <ioana.ciornei@nxp.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      f355a55f
    • D
      net: ftgmac100: Fix Aspeed ast2600 TX hang issue · 137d23ce
      Dylan Hung 提交于
      The new HW arbitration feature on Aspeed ast2600 will cause MAC TX to
      hang when handling scatter-gather DMA.  Disable the problematic feature
      by setting MAC register 0x58 bit28 and bit27.
      
      Fixes: 39bfab88 ("net: ftgmac100: Add support for DT phy-handle property")
      Signed-off-by: NDylan Hung <dylan_hung@aspeedtech.com>
      Reviewed-by: NJoel Stanley <joel@jms.id.au>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      137d23ce
  7. 16 10月, 2020 1 次提交
  8. 15 10月, 2020 5 次提交
  9. 14 10月, 2020 8 次提交