Applied, thanks! Samuel
David Bidner, le lun. 12 oct. 2026 20:28:24 +0200, a ecrit: > Hello, > > v2 of the pfinet backlog-locking patch, following your review. It drops > the extra lock and uses net_bh_lock as you suggested: loopback_xmit() and > dev_loopback_xmit() take net_bh_lock around netif_rx(), net_bh_worker() > no longer takes global_lock, and net_bh() releases net_bh_lock and takes > global_lock after skb_dequeue() from the backlog, then the converse > before looking back at the queue. net_bh() never holds both locks, and > the order is global_lock -> net_bh_lock everywhere. dev_clear_backlog() > also takes net_bh_lock. > > The hang that I hit when I first tested v2 was not a pfinet locking > problem. It is two DDE softirq bugs in netdde, and I have sent the two > fixes as a separate series. > > The concurrency between the receive path and the send path makes > those DDE bugs much easier to hit. > > David Bidner (1): > pfinet: Serialize the backlog queue with net_bh_lock > > pfinet/glue-include/linux/interrupt.h | 2 +- > pfinet/linux-src/net/core/dev.c | 57 ++++++++++++++++----------- > pfinet/loopback.c | 6 +-- > pfinet/sched.c | 9 +++-- > 4 files changed, 43 insertions(+), 31 deletions(-) > > -- > 2.47.3 >
