This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Hurd".
The branch, master has been updated
via 58965509625a5b8e094ae2d467e374a4d2c48de8 (commit)
from 14d126b18e147c0a7f09e550ea031cdd55d69cda (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 58965509625a5b8e094ae2d467e374a4d2c48de8
Author: David Bidner <[email protected]>
Date: Tue Sep 15 14:47:26 2026 +0200
pfinet: Fix tunnel lock order
trivfs_S_io_write takes tdev->lock before net_bh_lock, while tunnel_xmit
(which runs under net_bh, with net_bh_lock held by net_bh_worker) takes
tdev->lock. This is an ABBA deadlock: a thread can hold tdev and wait for
net_bh while the net_bh worker holds net_bh and waits for tdev. A few
rapid TCP connections through the TUN can deadlock pfinet, which then
stops answering RPCs and takes the whole host off the network while the
machine itself keeps running.
Take net_bh_lock before tdev->lock, matching the order used by
tunnel_xmit.
* pfinet/tunnel.c (trivfs_S_io_write): Lock net_bh_lock before tdev->lock.
Message-ID: <[email protected]>
-----------------------------------------------------------------------
Summary of changes:
pfinet/tunnel.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
hooks/post-receive
--
Hurd