public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/3] btrfs: apply strict alignment checks to extent maps
@ 2026-01-21 23:07 Qu Wenruo
  2026-01-21 23:07 ` [PATCH v2 1/3] btrfs: tests: remove invalid file extent map tests Qu Wenruo
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Qu Wenruo @ 2026-01-21 23:07 UTC (permalink / raw)
  To: linux-btrfs

[CHANGELOG]
v2:
- Grammar fixes

  Not only spelling fixes, but also extra new line after an item of a
  list.

- Remove unnecessary ASSERT()s inside inode tests

  There is already enough comments on each test file extent item.

- Remove some unnecessary commit messages from patch 3

  Which not only introduces grammar errors, but also duplicated.


Although we already have strict checks on file extent items from
tree-checker, we never do proper alignment checks for extent maps.

The reason is mostly due to the failure of self tests and how hard it is
to touch them, especially for the inode self tests.

I have to say the inode self test is really something, the extent maps
of the self test makes no sense, and would be rejected by the
tree-checker if they show up in the real world.
Thankfully only the first few file extents items are invalid, the
remaining ones are totally fine.

The comments are not any better, after the first line, there are no more
aligned number at all, and the numbers are not offset by 1, but 3 or
even more.
Considering we're using decimals for most of our dump-tree and comments,
no one is really going to note the wrong numbers until one throw them
into python or whatever calculator one prefers.

The series will mostly rework the inode self tests file extent item
layout so that they represent the real world better, and update the
comments and make the poor person who needs to update that selftest
suffer less in the future.

Then address the minor problem in the extent-map selftest where
fs_info->sectorsize is never properly populated for the 4K based self
test.

With all those done, we can finally put a proper alignment check into 
validate_extent_map() which is called for every new, merged or replaced
extent map.

Qu Wenruo (3):
  btrfs: tests: remove invalid file extent map tests
  btrfs: tests: prepare extent map tests for strict alignment checks
  btrfs: add strict extent map alignment checks

 fs/btrfs/extent_map.c             | 12 ++++
 fs/btrfs/tests/extent-map-tests.c | 16 ++++--
 fs/btrfs/tests/inode-tests.c      | 96 ++++++++++++++++---------------
 3 files changed, 72 insertions(+), 52 deletions(-)

-- 
2.52.0


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-01-22  9:36 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-21 23:07 [PATCH v2 0/3] btrfs: apply strict alignment checks to extent maps Qu Wenruo
2026-01-21 23:07 ` [PATCH v2 1/3] btrfs: tests: remove invalid file extent map tests Qu Wenruo
2026-01-21 23:07 ` [PATCH v2 2/3] btrfs: tests: prepare extent map tests for strict alignment checks Qu Wenruo
2026-01-21 23:08 ` [PATCH v2 3/3] btrfs: add strict extent map " Qu Wenruo
2026-01-22  9:35 ` [PATCH v2 0/3] btrfs: apply strict alignment checks to extent maps Filipe Manana

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox