This bug is awaiting verification that the linux/5.15.0-104.114 kernel
in -proposed solves the problem. Please test the kernel and update this
bug with the results. If the problem is solved, change the tag
'verification-needed-jammy-linux' to 'verification-done-jammy-linux'. If
the problem still exists, change the tag 'verification-needed-jammy-
linux' to 'verification-failed-jammy-linux'.


If verification is not done by 5 working days from today, this fix will
be dropped from the source code, and this bug will be closed.


See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how
to enable and use -proposed. Thank you!


** Tags added: kernel-spammed-jammy-linux-v2 verification-needed-jammy-linux

-- 
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/2058485

Title:
   [ICX] [SPR] [ipc/msg] performance: Mitigate the lock contention with
  percpu counter

Status in linux package in Ubuntu:
  Fix Released
Status in linux source package in Jammy:
  Fix Committed

Bug description:
  This is a public version of https://bugs.launchpad.net/bugs/2034980

  Backport: ipc/msg: mitigate the lock contention with percpu counter
  (merged upstream in 6.1) to jammy

  [Impact]

  The msg_bytes and msg_hdrs atomic counters are frequently updated when IPC 
msg queue is in heavy use, causing heavy
  cache bounce and overhead. Change them to percpu_counter greatly improve the 
performance. Since there is one percpu
  struct per namespace, additional memory cost is minimal. Reading of the count 
done in msgctl call, which is infrequent.
  So the need to sum up the counts in each CPU is infrequent.

  [Fix]

  Backport:
    72d1e611082e ipc/msg: mitigate the lock contention with percpu counter

  For clean backport/build, those are also required:

  5d0ce3595ab75 percpu: add percpu_counter_add_local and 
percpu_counter_sub_local
  38cd5b12b7854 ipc: Remove extra braces
  0889f44e28103 ipc: Check permissions for checkpoint_restart sysctls at open 
time
  dd141a4955d5e ipc: Remove extra1 field abuse to pass ipc namespace
  def7343ff03bb ipc: Use the same namespace to modify and validate
  1f5c135ee509e ipc: Store ipc sysctls in the ipc namespace
  dc55e35f9e810 ipc: Store mqueue sysctls in the ipc namespace
  0e9beb8a96f21 ipc/ipc_sysctl.c: remove fallback for !CONFIG_PROC_SYSCTL
  5563cabdde7ee ipc: check checkpoint_restore_ns_capable() to modify C/R proc 
files

  
  [Test Plan]

  Test as the original patch, with pts/stress-ng message passing
  and compare performance.

  [Where problems could occur]

  Performance regression in IPC communication/workload.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2058485/+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