btrfs-progs/kernel-shared
Naohiro Aota 1e85aa96e1 btrfs-progs: zoned: fix alloc_offset calculation for partly conventional block groups
When one of two zones composing a DUP block group is a conventional zone, we
have the zone_info[i]->alloc_offset = WP_CONVENTIONAL. That will, of course,
not match the write pointer of the other zone, and fails that block group.

This commit solves that issue by properly recovering the emulated write pointer
from the last allocated extent. The offset for the SINGLE, DUP, and RAID1 are
straight-forward: it is same as the end of last allocated extent. The RAID0 and
RAID10 are a bit tricky that we need to do the math of striping.

Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2025-03-11 22:15:10 +01:00
..
uapi btrfs-progs: sync uapi/btrfs_tree.h header from kernel 2025-02-15 00:08:32 +01:00
accessors.c btrfs-progs: kernel-shared: update const of parameters accessors.h 2024-08-14 23:59:36 +02:00
accessors.h btrfs-progs: sync uapi/btrfs_tree.h header from kernel 2025-02-15 00:08:32 +01:00
async-thread.c btrfs-progs: pull in the full max/min/clamp implementation from kernel 2023-10-10 19:16:29 +02:00
async-thread.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
backref.c btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
backref.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
compression.h btrfs-progs: minor source sync with kernel 6.8 2024-03-12 21:22:56 +01:00
ctree.c btrfs-progs: fix -Wunused-function warnings 2025-01-17 22:30:33 +01:00
ctree.h btrfs-progs: zoned: activate block group on loading 2025-03-11 22:15:09 +01:00
delayed-ref.c btrfs-progs: clean up includes, using include-what-you-use 2023-10-03 01:11:57 +02:00
delayed-ref.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
dir-item.c btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
disk-io.c btrfs-progs: add a helper for clearing all the items in a tree 2025-01-06 14:19:28 +01:00
disk-io.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
extent_io.c btrfs-progs: kernel-shared: update const of parameters accessors.h 2024-08-14 23:59:36 +02:00
extent_io.h btrfs-progs: kernel-shared: update const of parameters accessors.h 2024-08-14 23:59:36 +02:00
extent-io-tree.c btrfs-progs: clean up includes, using include-what-you-use 2023-10-03 01:11:57 +02:00
extent-io-tree.h btrfs-progs: clean up includes, using include-what-you-use 2023-10-03 01:11:57 +02:00
extent-tree.c btrfs-progs: zoned: support zone capacity 2025-03-11 22:15:09 +01:00
file-item.c btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
file-item.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
file.c btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
free-space-cache.c btrfs-progs: reorder key initializations 2024-04-30 21:49:15 +02:00
free-space-cache.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
free-space-tree.c btrfs-progs: add a helper for clearing all the items in a tree 2025-01-06 14:19:28 +01:00
free-space-tree.h btrfs-progs: minor source sync with kernel 6.8 2024-03-12 21:22:56 +01:00
inode-item.c btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
inode.c btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
locking.c btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
locking.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
messages.c btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
messages.h btrfs-progs: minor source sync with kernel 6.8-rc3 2024-02-08 09:30:16 +01:00
misc.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
print-tree.c btrfs-progs: sync uapi/btrfs_tree.h header from kernel 2025-02-15 00:08:32 +01:00
print-tree.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
README.md btrfs-progs: sync uapi/btrfs_tree.h header from kernel 2025-02-15 00:08:32 +01:00
root-tree.c btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
send.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
transaction.c btrfs-progs: kernel-shared: use kmalloc and kfree 2023-11-03 18:04:37 +01:00
transaction.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
tree-checker.c btrfs-progs: fix -Wunused-function warnings 2025-01-17 22:30:33 +01:00
tree-checker.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
tree-mod-log.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
ulist.c btrfs-progs: minor source sync with kernel 6.8-rc3 2024-02-08 09:30:16 +01:00
ulist.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
uuid-tree.c btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
uuid-tree.h btrfs-progs: clean up includes 2025-01-16 19:13:26 +01:00
volumes.c btrfs-progs: sync uapi/btrfs_tree.h header from kernel 2025-02-15 00:08:32 +01:00
volumes.h btrfs-progs: run codespell throughout fixing typos automagically 2024-07-30 19:56:08 +02:00
zoned.c btrfs-progs: zoned: fix alloc_offset calculation for partly conventional block groups 2025-03-11 22:15:10 +01:00
zoned.h btrfs-progs: zoned: load zone activeness 2025-03-11 22:15:09 +01:00

Shared sources with kernel

Status and progress of kernel/userspace synchronization.

  • accessors.c - done, local changes
  • accessors.h - done, local changes
  • async-thread.c - done
  • async-thread.h - done
  • backref.c - todo
  • backref.h - todo
  • compression.h - done
  • ctree.c - partial
  • ctree.h - partial
  • delayed-ref.c - partial
  • delayed-ref.h - partial
  • dir-item.c - partial
  • disk-io.c - todo
  • disk-io.h - todo
  • extent_io.c
  • extent_io.h
  • extent-io-tree.c - done, local changes
  • extent-io-tree.h - done, local changes
  • extent-tree.c - todo
  • file.c - todo
  • file-item.c - todo
  • file-item.h - partial
  • free-space-cache.c - not needed
  • free-space-cache.h - not needed
  • free-space-tree.c - partial
  • free-space-tree.h - partial
  • inode.c - todo
  • inode-item.c - partial
  • locking.c - done, local changes
  • locking.h - done, local changes
  • messages.c - done, local changes
  • messages.h - done, local changes
  • misc.h - done
  • print-tree.c - partial, sync to kernel
  • print-tree.h - partial
  • root-tree.c - partial
  • root-tree.h - done
  • send.h - done
  • transaction.c - todo
  • transaction.h - partial, local changes
  • tree-checker.c - partial, local changes
  • tree-checker.h - partial, local changes
  • tree-mod-log.h - done, local changes
  • ulist.c - done
  • ulist.h - done
  • uuid-tree.c - partial
  • uuid-tree.h - partial, local changes
  • volumes.c - todo, local changes
  • volumes.h - todo, local changes
  • zoned.c - todo
  • zoned.h - todo

UAPI

  • uapi/btrfs.h
  • uapi/btrfs_tree.h