Age | Commit message (Collapse) | Author |
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Matches error codes of fsck for corrected/uncorrected errors.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
required for async obj debugging
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Previously, we'd skip all transactions after the first non-transaction
entry - oops.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
checksum errors now REQ_FUA
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
This is only a workaround for the superblock writing process always reading back the
first sb in the layout and checking its sequence number.
Zeroing it out ensures a harmless warning instead of an error.
Signed-off-by: Nikita Ofitserov <himikof@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
There is no reason to run a fsck there for common use, as the FS is now
modified only by calling consistency-preserving APIs.
Also switch the debug-only fsck to nochanges mode for easier debugging.
Signed-off-by: Nikita Ofitserov <himikof@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Nikita Ofitserov <himikof@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Ensure that the space for the future default sb layout is not used during the migration process.
Signed-off-by: Nikita Ofitserov <himikof@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Now the FS is first started RW, then new superblock is written and metadata updated.
This ensures that all recovery/upgrades/downgrades are performed at the beginning.
Signed-off-by: Nikita Ofitserov <himikof@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Nikita Ofitserov <himikof@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Nikita Ofitserov <himikof@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
This causes the new filesystem UUID to be picked up; without this, mount
can fail if it's a multidevice filesystem.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Add our own version of 'qemu-img convert', which doesn't have the l1
table size limit or require fixing our missing reflink table.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
less macro-ing
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
bcachefs uses 64 bit inode numbers by default, which overflow genradix
keys when we multiply the inode number by the object size for the actual
genradix lookup.
Switch to a rhashtable, and only index files that actually have
hardlinks.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
|
|
Fall back to pre errmsg ioctls on old kernels.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
error strings
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Get memebr state when we're getting device names.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Fix a compatibility issue - old tools can now mount newer filesystems
with incompatible features, even if they can't do anything else with
them.
cmd_show_super now uses no_version_check as well.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
BCH_DATA_unstriped tracks unstriped data in stripe member buckets, it
double counts a portion of BCH_DATA_stripe.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
cmd_fs_usage now prints only base info by default, btree and device
accounting can be printed with flags
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Also: fragmented now includes empty buckets (for BCH_DATA_stripe).
And some cleanup.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
bch2_sb_to_text_with_names(): print device paths and models of each
member.
Fixes: https://github.com/koverstreet/bcachefs/issues/801
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Fix accidental splitbrain issues caused by writing to only some of a
filesystem's devices: now, all subcommands that take member devices will
scan for all members before opening.
Fixes: https://github.com/koverstreet/bcachefs/issues/924
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
checksum errors now REQ_FUA
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
< 64k buckets don't work reliably anymore, we deadlock in the journal
when we try to write too big of a journal entry.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Make sure bucket size >= btree_node_size when adding a device, and
cmd_image_update needs to make sure the metadata device is big enough
for the minimum number of buckets.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|