android_kernel_motorola_sm6375/drivers/md
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Alex Lyakas 351b37b88e md: Whenassemble the array, consult the superblock of the freshest device
[ Upstream commit dc1cc22ed58f11d58d8553c5ec5f11cbfc3e3039 ]

Upon assembling the array, both kernel and mdadm allow the devices to have event
counter difference of 1, and still consider them as up-to-date.
However, a device whose event count is behind by 1, may in fact not be up-to-date,
and array resync with such a device may cause data corruption.
To avoid this, consult the superblock of the freshest device about the status
of a device, whose event counter is behind by 1.

Signed-off-by: Alex Lyakas <alex.lyakas@zadara.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/1702470271-16073-1-git-send-email-alex.lyakas@zadara.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-02-23 08:24:59 +01:00
..
bcache bcache: avoid NULL checking to c->root in run_cache_set() 2023-12-20 15:41:20 +01:00
persistent-data
dm-bio-prison-v1.c
dm-bio-prison-v1.h
dm-bio-prison-v2.c
dm-bio-prison-v2.h
dm-bio-record.h
dm-bufio.c
dm-builtin.c
dm-cache-background-tracker.c
dm-cache-background-tracker.h
dm-cache-block-types.h
dm-cache-metadata.c dm cache: Fix ABBA deadlock between shrink_slab and dm_cache_metadata_abort 2023-01-18 11:41:46 +01:00
dm-cache-metadata.h
dm-cache-policy-internal.h
dm-cache-policy-smq.c dm cache policy smq: ensure IO doesn't prevent cleaner policy progress 2023-08-11 11:53:53 +02:00
dm-cache-policy.c
dm-cache-policy.h
dm-cache-target.c dm cache: add cond_resched() to various workqueue loops 2023-03-11 16:43:58 +01:00
dm-clone-metadata.c
dm-clone-metadata.h
dm-clone-target.c dm clone: call kmem_cache_destroy() in dm_clone_init() error path 2023-05-17 11:35:56 +02:00
dm-core.h
dm-crypt.c dm crypt: add cond_resched() to dmcrypt_write() 2023-04-05 11:16:41 +02:00
dm-delay.c dm-delay: fix a race between delay_presuspend and delay_bio 2023-12-08 08:44:25 +01:00
dm-dust.c
dm-era-target.c dm era: commit metadata in postsuspend after worker stops 2022-06-29 08:58:45 +02:00
dm-exception-store.c
dm-exception-store.h
dm-flakey.c dm flakey: fix a crash with invalid table line 2023-05-17 11:35:56 +02:00
dm-init.c
dm-integrity.c dm integrity: reduce vmalloc space footprint on 32-bit architectures 2023-08-30 16:27:22 +02:00
dm-io.c treewide: Remove uninitialized_var() usage 2023-06-09 10:29:01 +02:00
dm-ioctl.c treewide: Remove uninitialized_var() usage 2023-06-09 10:29:01 +02:00
dm-kcopyd.c
dm-linear.c
dm-log-userspace-base.c
dm-log-userspace-transfer.c
dm-log-userspace-transfer.h
dm-log-writes.c
dm-log.c dm mirror log: clear log bits up to BITS_PER_LONG boundary 2022-06-29 08:58:45 +02:00
dm-mpath.c
dm-mpath.h
dm-path-selector.c
dm-path-selector.h
dm-queue-length.c
dm-raid.c dm raid: fix missing reconfig_mutex unlock in raid_ctr() error paths 2023-08-11 11:53:49 +02:00
dm-raid1.c
dm-region-hash.c
dm-round-robin.c
dm-rq.c
dm-rq.h
dm-service-time.c
dm-snap-persistent.c treewide: Remove uninitialized_var() usage 2023-06-09 10:29:01 +02:00
dm-snap-transient.c
dm-snap.c
dm-stats.c dm stats: check for and propagate alloc_percpu failure 2023-04-05 11:16:41 +02:00
dm-stats.h dm stats: check for and propagate alloc_percpu failure 2023-04-05 11:16:41 +02:00
dm-stripe.c
dm-switch.c
dm-sysfs.c
dm-table.c treewide: Remove uninitialized_var() usage 2023-06-09 10:29:01 +02:00
dm-target.c
dm-thin-metadata.c dm thin: Use last transaction's pmd->root when commit failed 2023-01-18 11:41:47 +01:00
dm-thin-metadata.h
dm-thin.c dm thin: fix deadlock when swapping to thin device 2023-04-05 11:16:40 +02:00
dm-uevent.c
dm-uevent.h
dm-unstripe.c
dm-verity-fec.c dm-verity: align struct dm_verity_fec_io properly 2023-12-08 08:44:26 +01:00
dm-verity-fec.h
dm-verity-target.c dm verity: don't perform FEC for failed readahead IO 2023-12-08 08:44:26 +01:00
dm-verity-verify-sig.c
dm-verity-verify-sig.h
dm-verity.h dm-verity: align struct dm_verity_fec_io properly 2023-12-08 08:44:26 +01:00
dm-writecache.c dm writecache: set a default MAX_WRITEBACK_JOBS 2022-08-25 11:18:14 +02:00
dm-zero.c
dm-zoned-metadata.c
dm-zoned-reclaim.c
dm-zoned-target.c
dm-zoned.h
dm.c dm stats: check for and propagate alloc_percpu failure 2023-04-05 11:16:41 +02:00
dm.h
Kconfig
Makefile
md-bitmap.c md/md-bitmap: hold 'reconfig_mutex' in backlog_store() 2023-09-23 10:59:45 +02:00
md-bitmap.h
md-cluster.c
md-cluster.h
md-faulty.c
md-linear.c
md-linear.h
md-multipath.c
md-multipath.h
md.c md: Whenassemble the array, consult the superblock of the freshest device 2024-02-23 08:24:59 +01:00
md.h
raid0.c md/raid0: add discard support for the 'original' layout 2023-07-27 08:37:37 +02:00
raid0.h md/raid0: add discard support for the 'original' layout 2023-07-27 08:37:37 +02:00
raid1-10.c
raid1.c md/raid1: fix error: ISO C90 forbids mixed declarations 2023-09-23 11:00:06 +02:00
raid1.h
raid5-cache.c
raid5-log.h
raid5-ppl.c
raid5.c treewide: Remove uninitialized_var() usage 2023-06-09 10:29:01 +02:00
raid5.h
raid10.c md/raid10: prevent soft lockup while flush writes 2023-07-27 08:37:41 +02:00
raid10.h