diff options
| author | Christos Margiolis <christos@FreeBSD.org> | 2026-08-21 00:47:03 +0000 |
|---|---|---|
| committer | Christos Margiolis <christos@FreeBSD.org> | 2026-08-21 00:47:03 +0000 |
| commit | f0778a6f9ba7045239a0055ebfbd7965d1f162c9 (patch) | |
| tree | fc6a4f43867e2ec1b1b4aacbd6e53481925a565b /source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h | |
| parent | 3b90096cf9bcaec70b717e9ff0a9e23d14b600b6 (diff) | |
chn_trigger() calls bcmchan_trigger() with the channel lock held.
However, bcmchan_trigger() calls chn_intr(), which also tries to lock,
which results in a lock recursion panic. chn_intr() is meant to be
called by the interrupt handler and not inside CHANNEL_TRIGGER()
methods. Remove the call altogether, the bcm2835_worker_play_start()
call that comes after is enough.
Fixes: 69cab2d1bfb5 ("Fix locking in bcm2835_audio driver")
Reported by: Marco Devesas Campos <devesas.campos@gmail.com>
Tested by: Marco Devesas Campos <devesas.campos@gmail.com>
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
Reviewed by: markj
Differential Revision: https://reviews.freebsd.org/D59055
Diffstat (limited to 'source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h')
0 files changed, 0 insertions, 0 deletions
