1. 23 5月, 2023 1 次提交
  2. 19 4月, 2023 1 次提交
  3. 09 2月, 2023 2 次提交
  4. 27 10月, 2022 1 次提交
  5. 04 8月, 2022 1 次提交
  6. 06 7月, 2022 1 次提交
  7. 07 6月, 2022 1 次提交
  8. 26 5月, 2022 2 次提交
  9. 14 1月, 2022 2 次提交
  10. 15 11月, 2021 3 次提交
  11. 21 10月, 2021 1 次提交
  12. 23 7月, 2021 2 次提交
  13. 03 6月, 2021 3 次提交
  14. 09 4月, 2021 2 次提交
  15. 09 3月, 2021 1 次提交
  16. 27 1月, 2021 1 次提交
  17. 29 10月, 2020 1 次提交
  18. 20 9月, 2020 3 次提交
  19. 24 8月, 2020 1 次提交
  20. 23 8月, 2020 1 次提交
  21. 09 7月, 2020 1 次提交
  22. 24 6月, 2020 3 次提交
  23. 21 4月, 2020 1 次提交
  24. 13 3月, 2020 1 次提交
  25. 11 12月, 2019 2 次提交
  26. 16 11月, 2019 1 次提交
    • S
      usb: host: xhci: Support running urb giveback in tasklet context · 36dc0165
      Suwan Kim 提交于
      Patch "USB: HCD: support giveback of URB in tasklet context"[1]
      introduced giveback of urb in tasklet context. [1] This patch was
      applied to ehci but not xhci. [2] This patch significantly reduces
      the hard irq time of xhci. Especially for uvc driver, the hard irq
      including the uvc completion function runs quite long but applying
      this patch reduces the hard irq time of xhci.
      
      I have tested four SS devices to check if performance degradation
      occurs when urb completion functions run in the tasklet context.
      
      As a result of the test, all devices works well and shows very
      similar performance with the upstream kernel. Moreover, usb ethernet
      adapter show better performance than the upstream kernel about 5% for
      RX and 2% for TX. Four SS devices is as follows.
      
      SS devices for test
      
      1. WD My Passport 2TB (external hard drive)
      2. Sandisk Ultra Flair USB 3.0 32GB
      3. Logitech Brio webcam
      4. Iptime 1gigabit ethernet adapter (Mediatek RTL8153)
      
      Test description
      
      1. Mass storage (hard drive) performance test
      - run below command 10 times and compute the average performance
      
          dd if=/dev/sdN iflag=direct of=/dev/null bs=1G count=1
      
      2. Mass storage (flash memory) performance test
      - run below command 10 times and compute the average performance
      
          dd if=/dev/sdN iflag=direct of=/dev/null bs=1G count=1
      
      3. Webcam streaming performance test
      - run simple capture program and get the average frame rate per second
      - capture 1500 frames
      - program link
      
          https://github.com/asfaca/Webcam-performance-analyzing-tool
      
      - video resolution : 4096 X 2160 (4K) at 30 or 24 fps
      - device (Logitech Brio) spec url for the highest resolution and fps
      
          https://support.logitech.com/en_gb/product/brio-stream/specs
      
      4. USB Ethernet adapter performance test
      - directly connect two linux machines with ethernet cable
      - run pktgen of linux kernel and send 1500 bytes packets
      - run vnstat to measure the network bandwidth for 180 seconds
      
      Test machine
      
      - CPU : Intel i5-7600 @ 3.5GHz
      
      Test results
      
      1. Mass storage (hard drive) performance test
      
                  WD My Passport 2TB (external hard drive)
      --------------------------------------------------------------------
          xhci without tasklet        |          xhci with tasklet
      --------------------------------------------------------------------
               103.667MB/s            |            103.692MB/s
      --------------------------------------------------------------------
      
      2. Mass storage (flash memory) performance test
      
                     Sandisk Ultra Flair USB 3.0 32GB
      --------------------------------------------------------------------
          xhci without tasklet        |          xhci with tasklet
      --------------------------------------------------------------------
               129.727MB/s            |            130.2MB/s
      --------------------------------------------------------------------
      
      3. Webcam streaming performance test
      
                           Logitech Brio webcam
      --------------------------------------------------------------------
          xhci without tasklet        |          xhci with tasklet
      --------------------------------------------------------------------
                26.4451 fps           |            26.3949 fps
      --------------------------------------------------------------------
      
      4. USB Ethernet adapter performance test
      
            Iptime 1gigabit ethernet adapter (Mediatek RTL8153)
      --------------------------------------------------------------------
          xhci without tasklet        |          xhci with tasklet
      --------------------------------------------------------------------
      RX      933.86 Mbit/s           |            983.86 Mbit/s
      --------------------------------------------------------------------
      TX      830.18 Mbit/s           |            882.75 Mbit/s
      --------------------------------------------------------------------
      
      [1], https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=94dfd7edfd5c9b605caf7b562de7a813d216e011
      [2], https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=428aac8a81058e2303677a8fbf26670229e51d3aSigned-off-by: NSuwan Kim <suwan.kim027@gmail.com>
      Signed-off-by: NMathias Nyman <mathias.nyman@linux.intel.com>
      Link: https://lore.kernel.org/r/1573836603-10871-4-git-send-email-mathias.nyman@linux.intel.comSigned-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      36dc0165