[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190506083623.GA127408@gmail.com>
Date: Mon, 6 May 2019 10:36:23 +0200
From: Ingo Molnar <mingo@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, Thomas Gleixner <tglx@...utronix.de>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Andrew Morton <akpm@...ux-foundation.org>,
Daniel Lezcano <daniel.lezcano@...aro.org>
Subject: [GIT PULL] IRQ changes for v5.2
Linus,
Please pull the latest irq-core-for-linus git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq-core-for-linus
# HEAD: 471ba0e686cb13752bc1ff3216c54b69a2d250ea irq_work: Do not raise an IPI when queueing work on the local CPU
The changes in this cycle were:
- Remove the irq timings/variance statistics code that tried to predict
when the next interrupt would occur, which didn't work out as hoped
and will is replaced by another mechanism.
- This new mechanism is the 'array suffix computation' estimate, which
is superior to the previous one as it can detect not just a single
periodic pattern, but independent periodic patterns along a log-2
scale of bucketing and exponential moving average. The comments are
longer than the code - and it works better at predicting various
complex interrupt patterns from real-world devices than the previous
estimate.
- avoid IRQ-work self-IPIs on the local CPU
- fix work-list corruption in irq_set_affinity_notifier()
Thanks,
Ingo
------------------>
Daniel Lezcano (2):
genirq/timings: Remove variance computation code
genirq/timings: Add array suffix computation code
Gustavo A. R. Silva (1):
genirq/devres: Use struct_size() in devm_kzalloc()
Nicholas Piggin (1):
irq_work: Do not raise an IPI when queueing work on the local CPU
Prasad Sodagudi (1):
genirq: Prevent use-after-free and work list corruption
kernel/irq/devres.c | 3 +-
kernel/irq/manage.c | 4 +-
kernel/irq/timings.c | 522 +++++++++++++++++++++++++++++++++++----------------
kernel/irq_work.c | 75 ++++----
4 files changed, 409 insertions(+), 195 deletions(-)
Powered by blists - more mailing lists