casaroli opened a new pull request, #3980: URL: https://github.com/apache/nuttx-apps/pull/3980
depends-on: apache/nuttx/pull/21490 ## Summary A test of `close()` during `poll()` for apache/nuttx#21490. `poll_close_test()` in ostest: another thread closes the read end of a pipe while the main thread is in `poll()` on it. When `poll()` ends the read end must be gone, so the write end reports `POLLERR`, and no driver may keep a pointer to the entry of that `poll()`. ## Impact A new file in ostest and the option `CONFIG_TESTING_OSTEST_POLL_CLOSE`. It depends on `PIPES` and on pthreads, and it is on unless `DEFAULT_SMALL` is set. No change to any other code. This test fails on NuttX master until apache/nuttx#21490 merges, so this PR must merge after it. ## Testing ostest under QEMU: | Config | NuttX master 6e1126a2362 | apache/nuttx#21490 | |---|---|---| | `qemu-armv8a:knsh` (kernel) | ERROR: no `POLLERR`, then kernel panic | PASS, status 0 | | `qemu-armv8a:nsh` (flat) | ERROR: no `POLLERR`, status 256 | PASS, status 0 | | `rv-virt:knsh64` (kernel) | not run | PASS, status 0 | | `mps2-an500:knsh` (protected) | not run | PASS, status 0 | Make builds only; CMake was not built. `tools/checkpatch.sh -c -u -m -g` passes. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
