diff options
| author | Qu Wenruo <[email protected]> | 2025-04-09 11:10:40 +0000 |
|---|---|---|
| committer | David Sterba <[email protected]> | 2025-05-15 12:30:46 +0000 |
| commit | cd678925e9f20e671fdb67a9e1d358ad445a8cc9 (patch) | |
| tree | 05887f1f1e1812e33b9a251d36d2c0e20c20db73 /fs/btrfs/async-thread.c | |
| parent | btrfs: simplify bvec iteration in index_one_bio() (diff) | |
| download | kernel-cd678925e9f20e671fdb67a9e1d358ad445a8cc9.tar.gz kernel-cd678925e9f20e671fdb67a9e1d358ad445a8cc9.zip | |
btrfs: raid56: store a physical address in structure sector_ptr
Instead of using a @page + @pg_offset pair inside sector_ptr structure,
use a single physical address instead.
This allows us to grab both the page and offset from a single u64 value.
Although we still need an extra bool value, @has_paddr, to distinguish
if the sector is properly mapped (as the 0 physical address is totally
valid).
This change doesn't change the size of structure sector_ptr, but reduces
the parameters of several functions.
Note: the original idea and patch is from Christoph Hellwig
(https://lore.kernel.org/linux-btrfs/[email protected]/)
but the final implementation is different.
Reviewed-by: Josef Bacik <[email protected]>
Reviewed-by: Christoph Hellwig <[email protected]>
[ Use physical addresses instead to handle highmem. ]
Signed-off-by: Qu Wenruo <[email protected]>
Signed-off-by: David Sterba <[email protected]>
Diffstat (limited to 'fs/btrfs/async-thread.c')
0 files changed, 0 insertions, 0 deletions
