Skip to content

Add xattr and chunked_format documentation#28

Open
SToPire wants to merge 3 commits intoerofs:mainfrom
SToPire:to-be-merge-xattr
Open

Add xattr and chunked_format documentation#28
SToPire wants to merge 3 commits intoerofs:mainfrom
SToPire:to-be-merge-xattr

Conversation

@SToPire
Copy link
Member

@SToPire SToPire commented Mar 20, 2026

No description provided.

Copilot AI review requested due to automatic review settings March 20, 2026 09:24
@SToPire
Copy link
Member Author

SToPire commented Mar 20, 2026

Note: chunked_format.md now describing some 48bit layout-specific fields, wondering whether move them to a separate 48bit.md?

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds new on-disk format documentation for EROFS optional features (xattrs and chunk-based files) and links them from the on-disk docs index.

Changes:

  • Added a new xattrs.md page describing xattr-related superblock/inode fields and on-disk layouts.
  • Added a new chunked_format.md page describing chunk-based inode layouts and multi-device addressing.
  • Updated ondisk/index.md to link and include the new pages in the toctree.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 5 comments.

File Description
src/ondisk/xattrs.md New documentation page for xattr features, layouts, and feature flags
src/ondisk/index.md Adds links + toctree entries for the new optional-feature docs
src/ondisk/chunked_format.md New documentation page for chunk-based format and device table resolution

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@SKM2227229725
Copy link
Contributor

@hsiangkao
I was going through this PR while reading about the EROFS on-disk format.

Regarding the 48-bit layout fields in chunked_format.md — since you
mentioned possibly moving them to a separate file: if these fields are
specific to chunked_format, keeping them here might be clearer. A
separate file would make more sense if the same fields are reused
across multiple formats.

Happy to help refine the structure if needed.

@SToPire SToPire requested a review from Copilot March 21, 2026 13:57
@SToPire
Copy link
Member Author

SToPire commented Mar 21, 2026

@hsiangkao I was going through this PR while reading about the EROFS on-disk format.

Regarding the 48-bit layout fields in chunked_format.md — since you mentioned possibly moving them to a separate file: if these fields are specific to chunked_format, keeping them here might be clearer. A separate file would make more sense if the same fields are reused across multiple formats.

Happy to help refine the structure if needed.

Hi Shailesh,

Thanks for your interest. We already have a draft and will submit a pull request soon. If you're interested in helping us polish and improve the current (and future) documentation, we would greatly appreciate it.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- A bit value of **0** means a matching xattr **may exist** and a full scan is
required.

When `xattr_filter_reserved` in the superblock is non-zero, the bloom filter is
Copy link

Copilot AI Mar 21, 2026

Choose a reason for hiding this comment

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

Terminology is inconsistent with earlier uses of “Bloom filter” in this document. For clarity and consistency (and easier searching), consider capitalizing it here as well (“Bloom filter”).

Suggested change
When `xattr_filter_reserved` in the superblock is non-zero, the bloom filter is
When `xattr_filter_reserved` in the superblock is non-zero, the Bloom filter is

Copilot uses AI. Check for mistakes.
Copy link
Member Author

Choose a reason for hiding this comment

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

updated

@SKM2227229725
Copy link
Contributor

@SToPire @hsiangkao Thanks for the response!

I'd be happy to help improve and polish the documentation.

While going through the current changes, I noticed a few small things that could be clarified or made more consistent:

  • In xattrs.md, the namespace mapping table skips some values (like 0 and 5). Adding a note that these are reserved could help avoid confusion.
  • Terminology like "Bloom filter" could be made consistent throughout the document.
  • In chunked_format.md, the notation 2^(...) might be ambiguous in plain text — rephrasing it as "2 to the power of (...)" could improve clarity.

I can prepare a small follow-up PR for these improvements if that sounds good.

Thanks again!

@SKM2227229725
Copy link
Contributor

@SToPire @hsiangkao I've opened a follow-up PR (#29) with the small clarity improvements I mentioned — reserved value note, Bloom filter capitalization, and the chunk size formula wording.

Happy to adjust anything based on your feedback!

SToPire added 3 commits March 23, 2026 10:50
[ Assisted with revisions and language polishing using GPT-5.4. ]
Assisted-by: Shailesh kumar <shailesh91199477@gmail.com>
Signed-off-by: Yifan Zhao <yifan.yfzhao@foxmail.com>
[ Assisted with revisions and language polishing using GPT-5.4. ]
Signed-off-by: Yifan Zhao <yifan.yfzhao@foxmail.com>
Signed-off-by: Yifan Zhao <yifan.yfzhao@foxmail.com>
@SToPire SToPire force-pushed the to-be-merge-xattr branch from 67575f5 to 269bc08 Compare March 23, 2026 02:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants