-
Notifications
You must be signed in to change notification settings - Fork 542
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
examples/pipe: fix write usage #2829
Conversation
[Experimental Bot, please feedback here] No. This PR description lacks crucial information. Here's what's missing and why it's important:
In short: The PR description needs to be significantly more detailed to meet the NuttX requirements. It must clearly articulate the change, its rationale, its impact across different aspects of the system, and provide verifiable testing evidence. |
write returns in case some bytes were written but not everything can fit. This wasn't the case in NuttX but commit d0680fd1bc51b7ead0b068fb24a31a144d22dc6c introduced this standard behavior.
Thanks @Cynerd: I cloned your branch and enabled all the builds. I'll check the results here: https://github.com/nuttxpr/nuttx-apps/actions/runs/11724108240 |
It still seems to fail for what ever reason. I will try those tests locally and see what is going on there. Edit: Timeouts will be most likely caused by the pipe test because all tests afterward must timeout because pipe won't terminate, and thus, you can't spawn subsequent commands. |
@lupyuen is there a way to get logs from CI for arm-02 board sabre-6quad. That seems to be the only one that failed. Other runs seem to be running fast again. The only one that failed is sabre-6quad. I am trying to run tests for it locally and it passes. I see that tests create logs in my case, but there is no such file in the arm-02 artifact, and thus, I am unable to find out where it actually failed. |
@Cynerd Sorry do you mean this log? I ran sabre-6quad:citest 3 hours ago: |
rv-virt:citest also failed 12 hours ago, according to nuttx-dashboard.org Is something inside the Docker Config that's causing it to fail? |
I mean this file (of course different time in the name): nuttx/boards/arm/imx6/sabre-6quad/configs/citest/logs/sabre-6quad/qemu/sabre-6quad_20241107_162834.log It is log from pexpect. |
Sorry what's the command to run citest? I have compiled sabre-6quad:citest in Docker, but I'm not sure how to run it: tools/configure.sh sabre-6quad:citest
make
## What next? |
|
Is this correct? https://gist.github.com/nuttxpr/67b041a3a537343ebf08b46ed4b68b6b
|
Well it should have been https://gist.github.com/Cynerd/7285ef024ee7bf49518ee538ba9abc27. It seems that really this for some reason doesn't work in case of sabre-6quad. This just blocks it right after first test. |
Or something special about the way QEMU runs inside Docker? |
Possibly.. but why just for this one specific board? Or is it the only board that runs tests in Qemu? I am trying to run it in docker as well now. Will see.. |
Anyway I would be for merging this to fix at least CI runtime. The issue with sabre-6quad we could solve down the line. |
BTW rv-virt:citest is also failing with QEMU inside Docker: |
@lupyuen can you please compare what you are doing with what I am doing? The full log of attempt in the docker: https://gist.github.com/Cynerd/81262ceaa32ac5719b453269e620cb0c |
@Cynerd I ran the exact same steps and it works OK: https://gist.github.com/nuttxpr/bdb03952f774e711bafc4e7ae7d329c2 In the earlier log I used: That's the only difference I think. |
Summary
write returns in case some bytes were written but not everything can fit.
This wasn't the case in NuttX but commit
d0680fd1bc51b7ead0b068fb24a31a144d22dc6c introduced this standard behavior.
Impact
This should fix CI as reported in apache/nuttx#14667 (comment).
Testing
pipe
was executed on custom same7 board and passed.