Public bug reported: This is a public version of https://bugs.launchpad.net/bugs/2028897
Backport: bc9d3a9f2afc (net: dst: Switch to rcuref_t reference counting, 2023-03-23) d288a162dd1c (net: dst: Prevent false sharing vs. dst_entry:: __refcnt, 2023-03-23) e5ab9eff46b0 (atomics: Provide atomic_add_negative() variants, 2023-03-23) ee1ee6db0779 (atomics: Provide rcuref - scalable reference counting, 2023-03-23) merged in 6.4 to jammy. [Impact] Address a bottleneck in the networking code related to struct dst_entry reference count, which results in networking performance loss with large number of connections, by adding rcuref as a scalable alternative solution. Developers report in the patch: The overall gain of both changes for localhost memtier ranges from 1.2X to 3.2X and from +2% to %5% range for networked operations on a 1Gb connection. A micro benchmark which enforces maximized concurrency shows a gain between 1.2X and 4.7X. [Fix] Upstream patch: bc9d3a9f2afc (net: dst: Switch to rcuref_t reference counting, 2023-03-23) d288a162dd1c (net: dst: Prevent false sharing vs. dst_entry:: __refcnt, 2023-03-23) e5ab9eff46b0 (atomics: Provide atomic_add_negative() variants, 2023-03-23) ee1ee6db0779 (atomics: Provide rcuref - scalable reference counting, 2023-03-23) [Test Plan] I have tested this code. [Where problems could occur] TODO ** Affects: linux (Ubuntu) Importance: Undecided Status: New ** Affects: linux (Ubuntu Jammy) Importance: Undecided Status: New ** Also affects: linux (Ubuntu Jammy) Importance: Undecided Status: New -- 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/2058481 Title: [SPR] Networking performance fix for concurrency with the dst_entry data structure Status in linux package in Ubuntu: New Status in linux source package in Jammy: New Bug description: This is a public version of https://bugs.launchpad.net/bugs/2028897 Backport: bc9d3a9f2afc (net: dst: Switch to rcuref_t reference counting, 2023-03-23) d288a162dd1c (net: dst: Prevent false sharing vs. dst_entry:: __refcnt, 2023-03-23) e5ab9eff46b0 (atomics: Provide atomic_add_negative() variants, 2023-03-23) ee1ee6db0779 (atomics: Provide rcuref - scalable reference counting, 2023-03-23) merged in 6.4 to jammy. [Impact] Address a bottleneck in the networking code related to struct dst_entry reference count, which results in networking performance loss with large number of connections, by adding rcuref as a scalable alternative solution. Developers report in the patch: The overall gain of both changes for localhost memtier ranges from 1.2X to 3.2X and from +2% to %5% range for networked operations on a 1Gb connection. A micro benchmark which enforces maximized concurrency shows a gain between 1.2X and 4.7X. [Fix] Upstream patch: bc9d3a9f2afc (net: dst: Switch to rcuref_t reference counting, 2023-03-23) d288a162dd1c (net: dst: Prevent false sharing vs. dst_entry:: __refcnt, 2023-03-23) e5ab9eff46b0 (atomics: Provide atomic_add_negative() variants, 2023-03-23) ee1ee6db0779 (atomics: Provide rcuref - scalable reference counting, 2023-03-23) [Test Plan] I have tested this code. [Where problems could occur] TODO To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2058481/+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