OpenCloudOS-Kernel/drivers/net
Yunsheng Lin 8c30e19460 net: hns3: optimize the rx clean process
Currently HNS3_RING_RX_RING_FBDNUM_REG register is read to determine
how many rx desc can be cleaned. To avoid the register read operation
in the critical data path, use the valid bit in the rx desc to determine
if a specific rx desc can be cleaned.

The hns3 driver clear valid bit in the rx desc before notifying the
rx desc to the hw, and hw will only set the valid bit of the rx desc
after corresponding buffer is filled with packet data and other field
in the rx desc is set accordingly.

Add hns3_rx_ring_move_fw() function to clear the valid bit in the rx
desc before moving rx ring's next_to_clean forward to avoid double
cleaning a rx desc, also add a dma_rmb() barrier in hns3_handle_rx_bd()
to make sure valid bit is set before reading other field in the rx desc.

Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com>
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2020-09-17 16:14:28 -07:00
..
appletalk treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
arcnet treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
bonding treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
caif
can treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
dsa net: dsa: mt7530: Add the support of MT7531 switch 2020-09-14 16:30:39 -07:00
ethernet net: hns3: optimize the rx clean process 2020-09-17 16:14:28 -07:00
fddi treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
fjes treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
hamradio treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
hippi hippi: switch from 'pci_' to 'dma_' API 2020-09-08 20:15:57 -07:00
hyperv hv_netvsc: Fix the queue_mapping in netvsc_vf_xmit() 2020-08-20 16:24:00 -07:00
ieee802154 net: ieee802154: adf7242: Replace HTTP links with HTTPS ones 2020-07-20 08:51:38 +02:00
ipa net: ipa: remove duplicate include 2020-08-26 16:12:31 -07:00
ipvlan ipvlan: advertise link netns via netlink 2020-08-24 15:53:33 -07:00
mdio net: mdio: Move MDIO drivers into a new subdirectory 2020-08-27 06:55:50 -07:00
netdevsim netdevsim: add pause frame stats 2020-09-15 13:26:28 -07:00
pcs net: phy: add Lynx PCS module 2020-08-31 12:52:33 -07:00
phy net: phy: mchp: Add support for LAN8814 QUAD PHY 2020-09-11 17:41:55 -07:00
plip treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
ppp mm, treewide: rename kzfree() to kfree_sensitive() 2020-08-07 11:33:22 -07:00
slip
team
usb Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-09-04 21:28:59 -07:00
vmxnet3 treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
wan drivers/net/wan/x25_asy: Remove an unnecessary x25_type_trans call 2020-09-14 14:41:02 -07:00
wimax net: wimax: i2400m: fix 'msg_skb' kernel-doc warning in i2400m_msg_to_dev() 2020-09-08 20:04:27 -07:00
wireguard netlink: consistently use NLA_POLICY_MIN_LEN() 2020-08-18 12:28:45 -07:00
wireless wireless-drivers-next patches for v5.10 2020-09-11 13:32:31 -07:00
xen-netback treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
Kconfig net: mdio: Move MDIO drivers into a new subdirectory 2020-08-27 06:55:50 -07:00
LICENSE.SRC
Makefile net: mdio: Move MDIO drivers into a new subdirectory 2020-08-27 06:55:50 -07:00
Space.c
bareudp.c tunnels: PMTU discovery support for directly bridged IP packets 2020-08-04 13:01:45 -07:00
dummy.c
eql.c
geneve.c geneve: Support for PMTU discovery on directly bridged links 2020-08-04 13:01:45 -07:00
gtp.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-09-04 21:28:59 -07:00
ifb.c
loopback.c
macsec.c netlink: consistently use NLA_POLICY_MIN_LEN() 2020-08-18 12:28:45 -07:00
macvlan.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
macvtap.c
mdio.c
mii.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
net_failover.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
sungem_phy.c
tap.c
thunderbolt.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next 2020-08-05 20:13:21 -07:00
tun.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-09-04 21:28:59 -07:00
veth.c net: remove napi_hash_del() from driver-facing API 2020-09-10 13:08:46 -07:00
virtio_net.c net: remove napi_hash_del() from driver-facing API 2020-09-10 13:08:46 -07:00
vrf.c vrf: Handle CONFIG_SYSCTL not set 2020-07-23 17:51:04 -07:00
vsockmon.c
vxlan.c Revert "vxlan: fix tos value before xmit" 2020-08-05 12:09:10 -07:00
xen-netfront.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00