Repository navigation
fix(libkernel): support socket fcntl duplication - #7437
lucaslima430 wants to merge 1 commit into
Conversation
|
Other open pull requests touch the same code. Merging one will break the other, or both implement the same thing. If this one builds on them, list them in Depends on.
Some comparisons could not be completed because a pull request conflicts with the base branch. Review these shared files manually before concluding that there is no overlap.
|
jotitadev
left a comment
There was a problem hiding this comment.
Linux run, since the description lists only Windows.
Machine: Linux x86_64, i7-8700, Ubuntu 26.04, GCC 15.2, Release, BUILD_TESTING=ON, full build.
Head d35db7be1 merged onto main 9caecfd2d (clean merge).
guest_kernel_fcntlandguest_socket_descriptor_flagspass, as do the other fcntl/socket/dup tests (ctest -R "fcntl|socket|dup|udp|tcp", 19 tests).- The two test files only, on
main:guest_socket_descriptor_flagsfails atF_DUPFD must honor the minimum and clear FD_CLOEXEC (errno 22);guest_kernel_fcntlaborts atsceKernelFcntl(socket, GetDescriptorFlags) == 1right aftersceKernelFcntl(socket, SetDescriptorFlags, 1)(I numbered theRequirecalls to find it): onmainonlyF_SETFLforwards its argument for a socket, which is theOpen.cppchange.
- Non-GPU suite (
ctest -E "^agc|gpu|vulkan|video_out"): 712/712, same asmain.
Written with AI assistance (Claude Code). I ran the builds and tests above on my machine.
d35db7b to
5c624a1
Compare
|
Rebased this PR on current
Proposal: |
|
@lucaslima430 agreed, sorry for the slow reply. #7403 only changes the path for host sockets that aren't guest sockets, and this PR changes AI-assisted: yes (Claude Code) |
5c624a1 to
335ce43
Compare
|
Rebased onto current Windows targeted build and the six socket/fcntl/dup tests pass (6/6); AI-assisted: yes (Codex); implementation and test results were independently inspected in this session. |
335ce43 to
45e35c5
Compare
|
Follow-up validation after the final rebase (
No machine-specific absolute paths were used in these reproduction instructions. |
|
Reviewed the newly reported overlap with #7509. It changes equeue pending-event bounds and a separate libkernel debt entry; it does not touch socket descriptor duplication behavior and creates no functional dependency. A context-only debt-file rebase may be needed for whichever PR lands second. AI-assisted: yes (Codex); the patch was inspected directly. |
45e35c5 to
3910171
Compare
|
Final rebase update: current AI-assisted: yes (Codex); all results above were rerun on the stated head. |
|
First AMD-on-Linux (RADV) run of this PR. Merged onto AMD Radeon RX 7900 XT (RADV NAVI31, gfx1100), Mesa 25.2.8, Linux Mint 22.3 (Ubuntu 24.04 base), kernel 7.0.0-38, GCC 13.3, Release. Full suite ( GPUs tested: n/a (libkernel change; suite run on the machine above) AI-assisted: yes |
3910171 to
b6b1255
Compare
What
F_DUPFD,F_DUPFD_CLOEXEC,F_DUP2FD, andF_DUP2FD_CLOEXECfor guest socket descriptors with the lowest-free-descriptor and close-on-exec semantics used by FreeBSD 11.4.sceKernelFcntlvariadic argument to the guest-socket path, including pointer arguments for unsupported lock commands, and preserve descriptor metadata when an exact-target duplicate replaces another descriptor type.Tested
maine80325a4c7; headb6b1255830.cmake --build build --target libkernel guest_socket_descriptor_flags_tests guest_kernel_fcntl_tests guest_dup_tests guest_socket_descriptors_tests guest_udp_tests guest_tcp_tests --parallel 4passed after initializing the new upstream mimalloc submodule withgit submodule update --init --recursive.ctest --test-dir build -R '^(guest_socket_descriptor_flags|guest_kernel_fcntl|guest_dup|guest_socket_descriptors|guest_udp|guest_tcp)$' --output-on-failurepassed 6/6.guest_kernel_fcntlincludes host-socket checks from fix(libkernel): handle fcntl and FIONREAD on a host socket descriptor #7403.python tools/check_conventions.py --base origin/main: 0 errors, 1 debt-length warning on the existing long fcntl entry.git diff --check origin/main...HEAD: passed. Conflict-marker, UTF-8 BOM and machine-specific absolute-path checks passed.python tools/pr_overlap.py --branch fix/libkernel-socket-fcntl-duplication --repo boykopovar/AnyPS5: completed; findings and comparison limitations described above.Checklist
main; no other open PR implements the same functionsNotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file.mdfiles or images added to the repository (attach them to this PR)