diff options
author | 2024-10-13 19:38:00 -0400 | |
---|---|---|
committer | 2024-10-13 22:03:03 -0400 | |
commit | cb6055e66faa0d4c15587ef67be18bc199aef085 (patch) | |
tree | c2da553f08c46b5b46791514001bd2187969fe9b /scripts/module-common.c | |
parent | bcachefs: Fix kasan splat in new_stripe_alloc_buckets() (diff) | |
download | wireguard-linux-cb6055e66faa0d4c15587ef67be18bc199aef085.tar.xz wireguard-linux-cb6055e66faa0d4c15587ef67be18bc199aef085.zip |
bcachefs: Handle race between stripe reuse, invalidate_stripe_to_dev
When creating a new stripe, we may reuse an existing stripe that has
some empty and some nonempty blocks.
Generally, the existing stripe won't change underneath us - except for
block sector counts, which we copy to the new key in
ec_stripe_key_update.
But the device removal path can now invalidate stripe pointers to a
device, and that can race with stripe reuse.
Change ec_stripe_key_update() to check for and resolve this
inconsistency.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'scripts/module-common.c')
0 files changed, 0 insertions, 0 deletions