Running this on a patched kernel (from Amit's comment 16), the program does not show the blocking behaviour. So, looks like the patch works as expected.
Since the eglibc sources will Do The Right Thing when __NR_pselect6 is #defined, a rebuild of the eglibc package against the new kernel headers should provide the correct libc wrapper.
Attached a new testcase. Rather than use the libc pselect() wrapper, the new testcase has its own wrapper for pselect.
Compile with:
gcc -o childspin -DUSE_PSELECT_ WRAPPER -Wall childspin.c
Running this on a patched kernel (from Amit's comment 16), the program does not show the blocking behaviour. So, looks like the patch works as expected.
Since the eglibc sources will Do The Right Thing when __NR_pselect6 is #defined, a rebuild of the eglibc package against the new kernel headers should provide the correct libc wrapper.