Hi Klement, Dave,

Could you please review/approve 46720 PS2?
https://gerrit.fd.io/r/c/vpp/+/46720/2
 CI is already Verified+1, and I found a recent real CI occurrence of the 
lock-poisoning cascade this patch addresses.

On 1 November, the CI for HTTP change 47386 PS1 failed on both Ubuntu 24.04 
ARM64 and Ubuntu 22.04 ARM64. The traces show a worker stuck in an ip link del 
subprocess while holding the global multiprocessing lock. The runner terminates 
timed-out workers; subsequent workers then remain blocked in 
multiprocessing.synchronize.__enter__ -> delete_all_namespaces.

I counted 15 distinct workers blocked there on Ubuntu 24.04 and 16 on Ubuntu 
22.04, including TAP/AF_XDP, HTTP static and Prometheus setup. The lock-wait 
cascades persisted for more than an hour in each job.

Ubuntu 24.04 ARM64:
https://github.com/FDio/vpp/actions/runs/41346130867/job/124966682460
Ubuntu 22.04 ARM64:
https://github.com/FDio/vpp/actions/runs/41346130867/job/124966682502

This is concrete evidence for preventing the secondary false failures: flock 
releases the lock when the Python owner dies, and host-network commands are 
bounded. It does not establish that the initial host-network fault would 
disappear; I have not replayed those historical CI jobs with the patch.

I also exercised the exact PS2 helper on Linux: 23 targeted process/namespace 
cases pass, including SIGKILL/SIGTERM owner death, concurrent access, command 
timeouts, descriptor cleanup and a private network namespace lifecycle. The 
negative control against the parent reproduces the poisoned lock after owner 
termination.

Thanks,
Jerome
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#27324): https://lists.fd.io/g/vpp-dev/message/27324
Mute This Topic: https://lists.fd.io/mt/122074487/21656
Group Owner: [email protected]
Unsubscribe: https://lists.fd.io/g/vpp-dev/leave/14379924/21656/631435203/xyzzy 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to