Public bug reported:

On this function stall 100 cycles

+++ b/include/asm-generic/qspinlock.h
@@ -102,7 +102,7 @@ static __always_inline void queued_spin_lock(struct 
qspinlock *lock)
        u32 val;
 
        val = atomic_cmpxchg_acquire(&lock->val, 0, _Q_LOCKED_VAL);
-       if (likely(val == 0))
+       if (likely(!val))
                return;
        queued_spin_lock_slowpath(lock, val);
 }
With this patch vas reduced on 20 cycles on perf.

ProblemType: Bug
DistroRelease: Ubuntu 16.04
Package: linux-image-4.4.0-24-generic 4.4.0-24.43
ProcVersionSignature: Ubuntu 4.4.0-24.43-generic 4.4.10
Uname: Linux 4.4.0-24-generic x86_64
ApportVersion: 2.20.1-0ubuntu2.1
Architecture: amd64
AudioDevicesInUse:
 USER        PID ACCESS COMMAND
 /dev/snd/controlC0:  asu        3254 F.... pulseaudio
CurrentDesktop: MATE
Date: Tue Jun 21 23:16:49 2016
InstallationDate: Installed on 2016-04-29 (53 days ago)
InstallationMedia: Ubuntu-Studio 16.04 LTS "Xenial Xerus" - Release amd64 
(20160420.1)
IwConfig:
 lo        no wireless extensions.
 
 enp1s0    no wireless extensions.
MachineType: Olidata S.p.A. ALABAMA
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-4.4.0-24-generic 
root=/dev/mapper/192--168--0--108--vg-root ro
RelatedPackageVersions:
 linux-restricted-modules-4.4.0-24-generic N/A
 linux-backports-modules-4.4.0-24-generic  N/A
 linux-firmware                            1.157
RfKill:
 
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 07/08/2008
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: S0101
dmi.board.asset.tag: To Be Filled By O.E.M.
dmi.board.name: To be filled by O.E.M.
dmi.board.vendor: To be filled by O.E.M.
dmi.board.version: To be filled by O.E.M.
dmi.chassis.asset.tag: To Be Filled By O.E.M.
dmi.chassis.type: 3
dmi.chassis.vendor: To Be Filled By O.E.M.
dmi.chassis.version: To Be Filled By O.E.M.
dmi.modalias: 
dmi:bvnAmericanMegatrendsInc.:bvrS0101:bd07/08/2008:svnOlidataS.p.A.:pnALABAMA:pvrToBeFilledByO.E.M.:rvnTobefilledbyO.E.M.:rnTobefilledbyO.E.M.:rvrTobefilledbyO.E.M.:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:
dmi.product.name: ALABAMA
dmi.product.version: To Be Filled By O.E.M.
dmi.sys.vendor: Olidata S.p.A.

** Affects: linux (Ubuntu)
     Importance: Undecided
         Status: Confirmed


** Tags: amd64 apport-bug xenial

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1594960

Title:
  On queued_spin_lock function issue.

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

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to