Skip to content
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

littlefs: Update to version 1.3 #6179

Merged
merged 8 commits into from
Mar 1, 2018
Merged

littlefs: Update to version 1.3 #6179

merged 8 commits into from
Mar 1, 2018

Conversation

geky
Copy link
Contributor

@geky geky commented Feb 23, 2018

What's new?

Changes

b2124a5 Fixed multiple deploy steps in Travis
67daf9e Added cross-compile targets for testing
a3fd2d4 Added more configurable utils
a0a55fb Added conversion to/from little-endian on disk
4f08424 Added software implementations of bitwise instructions
2f8ae34 Added a git ignore file with .o .d blocks dir and lfs bin
e611cf5 Fix incorrect lookahead population before ack
a25743a Fixed some minor error code differences
6716b55 Fixed error check when truncating files to larger size
dc513b1 Silenced more of aldot's warnings
aa50e03 Commentary typo fix
6d55755 tests: Silence warnings in template
029361e Silence shadow warnings
fd04ed4 Added autogenerated release notes from commits
3101bc9 Do not print command invocation if QUIET
436707c doc: Editorial tweaks
3457252 doc: Spelling fixes
6d8e0e2 Moved -Werror flag to CI only
88f678f Fixed self-assign warning in tests
3ef4847 Added remove step in tests to force rebuild
5a38d00 Added deploy step in Travis to push new version as tags
035552a Add version info for software library and on-disk structures
997c2e5 Fixed incorrect reliance on errno in emubd
d88f0ac Added lfs_file_truncate
2ad435e Added files test to littlefs-fuse tests in Travis
1fb6a19 Reduced ctz traverse runtime by 2x
db88727 Added error code LFS_ERR_NOTEMPTY
c2fab8f Added asserts on geometry and updated config documentation
472ccc4 Fixed file truncation without writes
aea3d3d Fixed positive seek bounds checking
be22d34 Updated links to Mbed OS
425aa3c Fixed issue with immediate exhaustion and small unaligned storage

TODO

Additional notes

related #5653
cc @deepikabhavnani, @kegilbert, @0xc0170
code size 10108B
intended for minor release

geky added 4 commits February 22, 2018 17:49
git-subtree-dir: features/filesystem/littlefs/littlefs
git-subtree-split: 5ee20e8
b2124a5

b2124a5 Fixed multiple deploy steps in Travis
949015a Merge pull request ARMmbed#28 from geky/configurables
67daf9e Added cross-compile targets for testing
a3fd2d4 Added more configurable utils
a0a55fb Added conversion to/from little-endian on disk
4f08424 Added software implementations of bitwise instructions
59ce49f Merge pull request ARMmbed#26 from Sim4n6/master
2f8ae34 Added a git ignore file with .o .d blocks dir and lfs bin
e611cf5 Fix incorrect lookahead population before ack
a25743a Fixed some minor error code differences
6716b55 Fixed error check when truncating files to larger size
809ffde Merge pull request ARMmbed#24 from aldot/silence-shadow-warnings-1
dc513b1 Silenced more of aldot's warnings
aa50e03 Commentary typo fix
6d55755 tests: Silence warnings in template
029361e Silence shadow warnings
fd04ed4 Added autogenerated release notes from commits
3101bc9 Do not print command invocation if QUIET
d82e34c Merge pull request ARMmbed#21 from aldot/doc-tweaks
436707c doc: Editorial tweaks
3457252 doc: Spelling fixes
6d8e0e2 Moved -Werror flag to CI only
88f678f Fixed self-assign warning in tests
3ef4847 Added remove step in tests to force rebuild
f694b14 Merge pull request ARMmbed#16 from geky/versioning
5a38d00 Added deploy step in Travis to push new version as tags
035552a Add version info for software library and on-disk structures
997c2e5 Fixed incorrect reliance on errno in emubd
d88f0ac Added lfs_file_truncate
2ad435e Added files test to littlefs-fuse tests in Travis
1fb6a19 Reduced ctz traverse runtime by 2x
db88727 Added error code LFS_ERR_NOTEMPTY
c2fab8f Added asserts on geometry and updated config documentation
472ccc4 Fixed file truncation without writes
aea3d3d Fixed positive seek bounds checking
be22d34 Updated links to Mbed OS
425aa3c Fixed issue with immediate exhaustion and small unaligned storage

git-subtree-dir: features/filesystem/littlefs/littlefs
git-subtree-split: b2124a5
@cmonr
Copy link
Contributor

cmonr commented Feb 23, 2018

@geky Making sure, where are those two merge commits sourced from?

@geky
Copy link
Contributor Author

geky commented Feb 23, 2018

@cmonr, It's a subtree. The mbed-os history is a bit massive, so it's hard to follow, but you can find the subtree's squash branch here:
https://github.com/ARMmbed/mbed-os/commits/3eb2f38279aadb35234c5df1fb8e54fd2a035be1
https://github.com/geky/mbed/commits/451c3d137fbd49ce5e00e765af66c16bb5169ee9

The first merge was a housekeeping commit to move the littlefs subtree from "mbed-os/littlefs" (where it lived in mbed-littlefs) to "mbed-os/features/filesystem/littlefs/littlefs". Which I didn't do correctly when I first added littlefs to mbed-os (#5538).

You can find the full history over in the littlefs repo: https://github.com/geky/littlefs/releases

Let me know if that helps.

@deepikabhavnani
Copy link

Just to clarify once more:
https://github.com/ARMmbed/mbed-littlefs/ - Is obsolete and moved inside mbed-os

https://github.com/geky/littlefs/commits/master and https://github.com/ARMmbed/mbed-os/commits/master/features/filesystem/littlefs/littlefs both show some recent commits.

Any reason, fixes are done separately at both places?

@geky
Copy link
Contributor Author

geky commented Feb 23, 2018

Good question. Most of the development work is happening in https://github.com/geky/littlefs, but any bug fixes are duplicated directly into mbed-os. Additional features and tweaks aren't brought over until a minor release of mbed-os.

This way, changes to mbed-os's littlefs match the mbed-os's release model. The mbed-os master should have all of the recent bug fixes without the turmoil of developing new features.

@cmonr
Copy link
Contributor

cmonr commented Feb 23, 2018

@geky Any reason why the development isn't done in the mbed-os repo, perhaps in a feature branch?

@deepikabhavnani
Copy link

Additional features and tweaks aren't brought over until a minor release of mbed-os.

Merge is expect once every minor release 👍

kegilbert
kegilbert previously approved these changes Feb 23, 2018
@geky
Copy link
Contributor Author

geky commented Feb 23, 2018

It's not an mbed project. Development in the mbed-os is free to do whatever it wants really, subtree merges can handle forked development. The real question is if/how do you want to bring in the changes happening outside of mbed-os.

I'm not opposed to also having a feature-branch for littlefs if you want to create one. Though I don't think it would add much value for a project that has no dependencies in mbed-os, and it seems like it would be a pain to maintain.

Note this is how we handle other external dependencies such as ChanFS (#5490) and LWIP (#4814). And since the entire code base is still inside mbed-os there's no possibility for foul play.

@geky geky dismissed stale reviews from kegilbert and deepikabhavnani via 3a963c9 February 23, 2018 23:44
Much like the logging functions, assertions can be enabled, disabled
and forced with the littlefs.enable_assert config option. Integrates
with the new LFS_ASSERT macro.
Enables intrinsics for bit operations such as ctz, popc, and le32
conversion. Can be disabled to help debug toolchain issues. Has
proven to be surprisingly useful.
@geky
Copy link
Contributor Author

geky commented Feb 26, 2018

Entertaining: setting CFLAGS="-Werror" causes pip install pyYAML to fail...

@geky
Copy link
Contributor Author

geky commented Feb 28, 2018

Yeah, b28dad6 and 6e67794 are just to update the subtree metadata. They move the littlefs subtree from "mbed-os/littlefs" (where it lived in mbed-littlefs) to "mbed-os/features/filesystem/littlefs/littlefs". I should have done this when first adding littlefs to mbed-os, but I didn't do it correctly.

@cmonr
Copy link
Contributor

cmonr commented Feb 28, 2018

/morph build

@mbed-ci
Copy link

mbed-ci commented Feb 28, 2018

Build : SUCCESS

Build number : 1303
Build artifacts/logs : http://mbed-os.s3-website-eu-west-1.amazonaws.com/?prefix=builds/6179/

Triggering tests

/morph test
/morph uvisor-test
/morph export-build
/morph mbed2-build

@mbed-ci
Copy link

mbed-ci commented Feb 28, 2018

@mbed-ci
Copy link

mbed-ci commented Feb 28, 2018

Test : FAILURE

Build number : 1087
Test logs :http://mbed-os-logs.s3-website-us-west-1.amazonaws.com/?prefix=logs/6179/1087

@geky geky dismissed stale reviews from deepikabhavnani and kegilbert via 6873044 March 1, 2018 01:56
Copy link
Contributor

@cmonr cmonr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Checks out.

@cmonr
Copy link
Contributor

cmonr commented Mar 1, 2018

/morph build

@mbed-ci
Copy link

mbed-ci commented Mar 1, 2018

Build : SUCCESS

Build number : 1309
Build artifacts/logs : http://mbed-os.s3-website-eu-west-1.amazonaws.com/?prefix=builds/6179/

Triggering tests

/morph test
/morph uvisor-test
/morph export-build
/morph mbed2-build

@mbed-ci
Copy link

mbed-ci commented Mar 1, 2018

@mbed-ci
Copy link

mbed-ci commented Mar 1, 2018

@adbridge
Copy link
Contributor

adbridge commented Mar 1, 2018

@deepikabhavnani @kegilbert please re-review.
@geky please check the test failure

@geky
Copy link
Contributor Author

geky commented Mar 1, 2018

Good news, the original test failure was fixed, bad news, this failure is completely unrelated to this PR.

@adbridge, @studavekar, have you seen other nrf52_dk flash failures? Maybe the board's flash died...

@adbridge
Copy link
Contributor

adbridge commented Mar 1, 2018

@geky can you go talk to @studavekar directly please and get him to test the board. We are running out of time if this needs to go into 5.8

@studavekar
Copy link
Contributor

@adbridge, @studavekar, have you seen other nrf52_dk flash failures? Maybe the board's flash died...

May be related to failure which we seeing on #6224

@mbed-ci
Copy link

mbed-ci commented Mar 1, 2018

@cmonr cmonr merged commit c4354fa into ARMmbed:master Mar 1, 2018
@cmonr cmonr removed the needs: work label Mar 1, 2018
@mbed-ci
Copy link

mbed-ci commented Apr 29, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants