1. 14 Apr, 2021 38 commits
  2. 13 Apr, 2021 2 commits
    • Dan Carpenter's avatar
      ionic: return -EFAULT if copy_to_user() fails · 5871d0c6
      Dan Carpenter authored
      The copy_to_user() function returns the number of bytes that it wasn't
      able to copy.  We want to return -EFAULT to the user.
      
      Fixes: fee6efce ("ionic: add hw timestamp support files")
      Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Acked-by: default avatarShannon Nelson <snelson@pensando.io>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5871d0c6
    • David S. Miller's avatar
      Merge branch 'stmmac-xdp-zc' · 23ba5117
      David S. Miller authored
      Ong Boon Leong says:
      
      ====================
      stmmac: add XDP ZC support
      
      This is the v2 patch series to add XDP ZC support to stmmac driver.
      
      Summary of v2 patch change:-
      
      6/7: fix synchronize_rcu() is called stmmac_disable_all_queues() that is
           used by ndo_setup_tc().
      
       ########################################################################
      
      Continuous burst traffics are generated by pktgen script and in the midst
      of each packet processing operation by xdpsock the following tc-loop.sh
      script is looped continuously:-
      
       #!/bin/bash
       tc qdisc del dev eth0 parent root
       tc qdisc add dev eth0 ingress
       tc qdisc add dev eth0 root mqprio num_tc 4 map 0 1 2 3 0 0 0 0 0 0 0 0 0 0 0 0 queues 1@0 1@1 1@2 1@3 hw 0
       tc filter add dev eth0 parent ffff: protocol 802.1Q flower vlan_prio 0 hw_tc 0
       tc filter add dev eth0 parent ffff: protocol 802.1Q flower vlan_prio 1 hw_tc 1
       tc filter add dev eth0 parent ffff: protocol 802.1Q flower vlan_prio 2 hw_tc 2
       tc filter add dev eth0 parent ffff: protocol 802.1Q flower vlan_prio 3 hw_tc 3
       tc qdisc list dev eth0
       tc filter show dev eth0 ingress
      
       On different ssh terminal
       $ while true; do ./tc-loop.sh; sleep 1; done
      
      The v2 patch series have been tested using the xdpsock app:
       $ ./xdpsock -i eth0 -l -z
      
      From xdpsock poller pps report and dmesg, we don't find any warning
      related to rcu and the only difference when the script is executed is
      the pps rate drops momentarily.
      
       sock0@eth0:0 l2fwd xdp-drv
                         pps            pkts           1.00
      rx                 436347         191361334
      tx                 436411         191361334
      
       sock0@eth0:0 l2fwd xdp-drv
                         pps            pkts           1.00
      rx                 254117         191615476
      tx                 254053         191615412
      
       sock0@eth0:0 l2fwd xdp-drv
                         pps            pkts           1.00
      rx                 466395         192081924
      tx                 466395         192081860
      
       sock0@eth0:0 l2fwd xdp-drv
                         pps            pkts           1.00
      rx                 287410         192369365
      tx                 287474         192369365
      
       sock0@eth0:0 l2fwd xdp-drv
                         pps            pkts           1.00
      rx                 395853         192765329
      tx                 395789         192765265
      
       sock0@eth0:0 l2fwd xdp-drv
                         pps            pkts           1.00
      rx                 466132         193231514
      tx                 466132         193231450
      
       ########################################################################
      
      Based on the above result, the fix looks promising. Appreciate that if
      community can help to review the patch series and provide me feedback
      for improvement.
      ====================
      23ba5117