On Wed, 20 Jul 2022 at 17:47, Ian Rogers [off-list ref] wrote:
On Tue, Jul 12, 2022 at 6:41 AM Marco Elver [off-list ref] wrote:
quoted
On Mon, 4 Jul 2022 at 17:05, Marco Elver [off-list ref] wrote:
quoted
The hw_breakpoint subsystem's code has seen little change in over 10
years. In that time, systems with >100s of CPUs have become common,
along with improvements to the perf subsystem: using breakpoints on
thousands of concurrent tasks should be a supported usecase.
[...]
quoted
Marco Elver (14):
perf/hw_breakpoint: Add KUnit test for constraints accounting
perf/hw_breakpoint: Provide hw_breakpoint_is_used() and use in test
perf/hw_breakpoint: Clean up headers
perf/hw_breakpoint: Optimize list of per-task breakpoints
perf/hw_breakpoint: Mark data __ro_after_init
perf/hw_breakpoint: Optimize constant number of breakpoint slots
perf/hw_breakpoint: Make hw_breakpoint_weight() inlinable
perf/hw_breakpoint: Remove useless code related to flexible
breakpoints
powerpc/hw_breakpoint: Avoid relying on caller synchronization
locking/percpu-rwsem: Add percpu_is_write_locked() and
percpu_is_read_locked()
perf/hw_breakpoint: Reduce contention with large number of tasks
perf/hw_breakpoint: Introduce bp_slots_histogram
perf/hw_breakpoint: Optimize max_bp_pinned_slots() for CPU-independent
task targets
perf/hw_breakpoint: Optimize toggle_bp_slot() for CPU-independent task
targets
[...]
This is ready from our side, and given the silence, assume it's ready
to pick up and/or have a maintainer take a look. Since this is mostly
kernel/events, would -tip/perf/core be appropriate?
These are awesome improvements, I've added my acked-by to every
change. I hope we can pull these changes, as you say, into tip.git
perf/core and get them into 5.20.
These still apply cleanly to 6.0-rc1 and the test passes, but let me
know if I shall send a rebased version.
Thanks
-- Marco