diff options
author | Sergey Bugaev <bugaevc@gmail.com> | 2024-12-10 14:57:05 +0300 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2024-12-10 18:52:29 +0100 |
commit | 79d66af4d2b325c6c6f9e6bbfce03eacdec740aa (patch) | |
tree | 3a0b14e2afdc15cf49201bf0fb8f2238d345cd12 /kern | |
parent | 88c774182baae04358b59e769c46e6ffb1562df4 (diff) | |
download | gnumach-79d66af4d2b325c6c6f9e6bbfce03eacdec740aa.tar.gz gnumach-79d66af4d2b325c6c6f9e6bbfce03eacdec740aa.tar.bz2 gnumach-79d66af4d2b325c6c6f9e6bbfce03eacdec740aa.zip |
intr: Protect internals with a lock
On SMP builds with 2 CPU cores, we've seen whole-system lock-ups caused
by irqdev.tot_num_intr getting set to -1, even though it's supposed to
always stay non-negative. Indeed, it was modified without the
appropriate synchronization. Fix this by protecting it, as well as
various other internals of device/intr with a simple_lock_irq.
Reported-by: Damien Zammit <damien@zamaudio.com>
Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
Message-ID: <20241210115705.710555-3-bugaevc@gmail.com>
Diffstat (limited to 'kern')
0 files changed, 0 insertions, 0 deletions