Public bug reported:

[Impact]
The current design of hisi_sas_task_prep() has two critical sections protected 
by different spin locks. This can lead to unnecessary thrashing. By merging the 
critical sections under one spin lock, we can avoid this.

[Test Case]
Use fio to measure performance difference, and verify that there is no 
performance decrease. Sample config attached. Test on D05 and D06 systems, 
since both are impacted.

[Fix]
commit 6cca51ee0aa2540d648ff8698c3889330d897f27
Author: Xiang Chen <chenxian...@hisilicon.com>
Date:   Wed Jul 18 22:14:31 2018 +0800

    scsi: hisi_sas: Tidy hisi_sas_task_prep()

[Regression Risk]
It's possible that decreasing the lock granularity like this will lead to 
unforeseen latency issues. However, the additional work done under the new spin 
lock is just a single list_add_tail() call, which appears to run in constant 
time.

** Affects: linux (Ubuntu)
     Importance: Undecided
     Assignee: dann frazier (dannf)
         Status: In Progress

** Affects: linux (Ubuntu Bionic)
     Importance: Undecided
     Assignee: dann frazier (dannf)
         Status: In Progress

** Attachment added: "fio"
   https://bugs.launchpad.net/bugs/1794165/+attachment/5192579/+files/fio

** Also affects: linux (Ubuntu Bionic)
   Importance: Undecided
       Status: New

** Changed in: linux (Ubuntu Bionic)
       Status: New => In Progress

** Changed in: linux (Ubuntu Bionic)
     Assignee: (unassigned) => dann frazier (dannf)

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1794165

Title:
  hisi_sas: Reduce unnecessary spin lock contention

Status in linux package in Ubuntu:
  In Progress
Status in linux source package in Bionic:
  In Progress

Bug description:
  [Impact]
  The current design of hisi_sas_task_prep() has two critical sections 
protected by different spin locks. This can lead to unnecessary thrashing. By 
merging the critical sections under one spin lock, we can avoid this.

  [Test Case]
  Use fio to measure performance difference, and verify that there is no 
performance decrease. Sample config attached. Test on D05 and D06 systems, 
since both are impacted.

  [Fix]
  commit 6cca51ee0aa2540d648ff8698c3889330d897f27
  Author: Xiang Chen <chenxian...@hisilicon.com>
  Date:   Wed Jul 18 22:14:31 2018 +0800

      scsi: hisi_sas: Tidy hisi_sas_task_prep()

  [Regression Risk]
  It's possible that decreasing the lock granularity like this will lead to 
unforeseen latency issues. However, the additional work done under the new spin 
lock is just a single list_add_tail() call, which appears to run in constant 
time.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1794165/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to