-
Notifications
You must be signed in to change notification settings - Fork 3k
fs: Add missing retarget definitions for ARM/IAR #5204
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
Conversation
81ba72d
to
7ea9811
Compare
cc @kjbracey-arm @deepikabhavnani |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No objections, with only the passing note that the POSIX spec would like O_RDONLY to be a proper bit, despite historical implementations having it 0. I guess we want to match glibc though.
Where did the "exhaustive" errno list come from? POSIX or glibc or what?
/morph test |
@geky Does this need anything more than a test? |
/morph test-nightly |
1 similar comment
/morph test-nightly |
Result: FAILUREYour command has finished executing! Here's what you wrote!
OutputBuild failed! |
Result: FAILUREYour command has finished executing! Here's what you wrote!
OutputBuild failed! |
Result: FAILUREYour command has finished executing! Here's what you wrote!
OutputBuild failed! |
Result: FAILUREYour command has finished executing! Here's what you wrote!
OutputBuild failed! |
Result: FAILUREYour command has finished executing! Here's what you wrote!
OutputBuild failed! |
Result: FAILUREYour command has finished executing! Here's what you wrote!
OutputBuild failed! |
Result: FAILUREYour command has finished executing! Here's what you wrote!
OutputBuild failed! |
@geky Please look at the failures ( |
- missing O_ flags - missing S_IF flags - missing system types - missing stat structure - exhaustive list of errno codes
7ea9811
to
e9cd239
Compare
@0xc0170,Thanks for the line number
Ah, that's why ssize_t was defined to int. The LocalFileSystem incorrectly uses int in its overload, as opposed to the ssize_t typedef. But if this breaks something in our codebase, it's probably safer to just keep the old typedef. updated |
Result: ABORTEDYour command has finished executing! Here's what you wrote!
OutputBuild failed! |
/morph test-nightly |
Result: FAILUREYour command has finished executing! Here's what you wrote!
OutputBuild failed! |
/morph test-nightly |
@kjbracey-arm, sorry I missed your message under all the morph test outputs I just stole the errno codes from lxr, though they're spread between a few files: The O_RDONLY thing is noted, though yeah we're just aligning with glibc/newlib |
Result: SUCCESSYour command has finished executing! Here's what you wrote!
OutputAll builds and test passed! |
Currently code written for GCC may not work on ARM/IAR due to missing retarget definitions. This is manifested in littlefs/spiffs and may impact users.
These were missing and causing tests written against the filesystem to fail. Tests are inbound for a later pr. Currently these definitions are available in GCC, but missing in ARM/IAR. This patch fixes that.
Note: Yes there are a bunch of errno codes that we may never use, but that just means we won't have to worry about naming errors for a while now.