zdtm: add test for UDP multicast socket membership restoration#2878
zdtm: add test for UDP multicast socket membership restoration#2878euphoricair7 wants to merge 7 commits intocheckpoint-restore:criu-devfrom
Conversation
| test_waitsig(); | ||
|
|
||
| /* Small delay to ensure everything is ready */ | ||
| usleep(100000); |
There was a problem hiding this comment.
i added the usleep delay such that more of for the observability while the test runs and eventually fails for now, but when the udp multicast might be added eventually in the future, just to ensure that no packets are dropped.
But if needed we can totally remove/comment it for now, since it doens't affect the current functionality test at all.
|
This pr breaks CI tests. |
I will apply some changes of .desc file and try once again. |
|
Resolved it. |
This test documents that CRIU currently does not restore IP_ADD_MEMBERSHIP socket options (multicast group memberships). The test is marked as broken in its .desc file until support is implemented. Multicast memberships are stored as socket state in the kernel but are not currently captured by CRIU's socket dumping code. This means processes using multicast may lose group memberships after checkpoint/restore. The test demonstrates this limitation and serves as a starting point for implementing multicast support in the future. Signed-off-by: euphoricair7 <[email protected]>
Signed-off-by: euphoricair7 <[email protected]>
Signed-off-by: euphoricair7 <[email protected]>
…or issue in code Signed-off-by: euphoricair7 <[email protected]>
Signed-off-by: euphoricair7 <[email protected]>
Signed-off-by: euphoricair7 <[email protected]>
d731adf to
aa7cf3a
Compare
Signed-off-by: euphoricair7 <[email protected]>
|
@avagin all the CI tests except, Cirrus CI / Vagrant Fedora Rawhide based test, failed, is this a test something I should worry about? |
Here the test is failing on zombie00 with a segfault. This seems unrelated to my UDP changes. Could you verify? |
|
A friendly reminder that this PR had no activity for 30 days. |
This PR adds a test case for UDP multicast socket membership restoration,
documenting that CRIU currently does not support restoring IP_ADD_MEMBERSHIP
socket options.
Summary
While reviewing the ZDTM Test Suite, I noticed there are no tests for UDP
multicast sockets. Multicast group memberships (IP_ADD_MEMBERSHIP) are
kernel-maintained socket state that may be lost across checkpoint/restore
without explicit handling.
Changes
New test:
test/zdtm/static/socket_udp_multicast.cTest descriptor:
test/zdtm/static/socket_udp_multicast.desc"broken": true)notesfieldMakefile update: Added build rule for the new test
Findings
Through analysis of CRIU's source code, I confirmed that:
sk-inet.protoIP_ADD_MEMBERSHIPinsk-inet.cThe test is designed to:
Related Issue
Fixes: #2873 (Missing ZDTM coverage for UDP multicast sockets)
Next Steps
This test serves as:
To implement multicast support, the following would be needed:
Testing
Test can be run with: