From: Greg Kroah-Hartman Date: Wed, 23 Apr 2025 14:10:47 +0000 (+0200) Subject: drop some 6.1 md patches X-Git-Tag: v6.1.135~15 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8be2f401e0ec1d0f27c651ee42916a611325d784;p=thirdparty%2Fkernel%2Fstable-queue.git drop some 6.1 md patches They were not needed as dependencies, despite the tag saying so :) --- diff --git a/queue-6.1/md-factor-out-a-helper-from-mddev_put.patch b/queue-6.1/md-factor-out-a-helper-from-mddev_put.patch deleted file mode 100644 index 93f86f1b0b..0000000000 --- a/queue-6.1/md-factor-out-a-helper-from-mddev_put.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 4fa154bcffc727f04e951f6112c01e74c6e19290 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Wed, 27 Sep 2023 14:12:40 +0800 -Subject: md: factor out a helper from mddev_put() - -From: Yu Kuai - -[ Upstream commit 3d8d32873c7b6d9cec5b40c2ddb8c7c55961694f ] - -There are no functional changes, prepare to simplify md_seq_ops in next -patch. - -Signed-off-by: Yu Kuai -Signed-off-by: Song Liu -Link: https://lore.kernel.org/r/20230927061241.1552837-2-yukuai1@huaweicloud.com -Stable-dep-of: 6ec1f0239485 ("md/md-bitmap: fix stats collection for external bitmaps") -Signed-off-by: Sasha Levin ---- - drivers/md/md.c | 29 +++++++++++++++++------------ - 1 file changed, 17 insertions(+), 12 deletions(-) - -diff --git a/drivers/md/md.c b/drivers/md/md.c -index 0e101e74f0ba8..fda4bf9568572 100644 ---- a/drivers/md/md.c -+++ b/drivers/md/md.c -@@ -667,23 +667,28 @@ static inline struct mddev *mddev_get(struct mddev *mddev) - - static void mddev_delayed_delete(struct work_struct *ws); - -+static void __mddev_put(struct mddev *mddev) -+{ -+ if (mddev->raid_disks || !list_empty(&mddev->disks) || -+ mddev->ctime || mddev->hold_active) -+ return; -+ -+ /* Array is not configured at all, and not held active, so destroy it */ -+ set_bit(MD_DELETED, &mddev->flags); -+ -+ /* -+ * Call queue_work inside the spinlock so that flush_workqueue() after -+ * mddev_find will succeed in waiting for the work to be done. -+ */ -+ queue_work(md_misc_wq, &mddev->del_work); -+} -+ - void mddev_put(struct mddev *mddev) - { - if (!atomic_dec_and_lock(&mddev->active, &all_mddevs_lock)) - return; -- if (!mddev->raid_disks && list_empty(&mddev->disks) && -- mddev->ctime == 0 && !mddev->hold_active) { -- /* Array is not configured at all, and not held active, -- * so destroy it */ -- set_bit(MD_DELETED, &mddev->flags); - -- /* -- * Call queue_work inside the spinlock so that -- * flush_workqueue() after mddev_find will succeed in waiting -- * for the work to be done. -- */ -- queue_work(md_misc_wq, &mddev->del_work); -- } -+ __mddev_put(mddev); - spin_unlock(&all_mddevs_lock); - } - --- -2.39.5 - diff --git a/queue-6.1/md-use-separate-work_struct-for-md_start_sync.patch b/queue-6.1/md-use-separate-work_struct-for-md_start_sync.patch deleted file mode 100644 index 69a6a04c67..0000000000 --- a/queue-6.1/md-use-separate-work_struct-for-md_start_sync.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 2bf8b80f534f60cdc014da6571a193747823236a Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Fri, 25 Aug 2023 11:16:16 +0800 -Subject: md: use separate work_struct for md_start_sync() - -From: Yu Kuai - -[ Upstream commit ac619781967bd5663c29606246b50dbebd8b3473 ] - -It's a little weird to borrow 'del_work' for md_start_sync(), declare -a new work_struct 'sync_work' for md_start_sync(). - -Signed-off-by: Yu Kuai -Reviewed-by: Xiao Ni -Signed-off-by: Song Liu -Link: https://lore.kernel.org/r/20230825031622.1530464-2-yukuai1@huaweicloud.com -Stable-dep-of: 6ec1f0239485 ("md/md-bitmap: fix stats collection for external bitmaps") -Signed-off-by: Sasha Levin ---- - drivers/md/md.c | 10 ++++++---- - drivers/md/md.h | 5 ++++- - 2 files changed, 10 insertions(+), 5 deletions(-) - -diff --git a/drivers/md/md.c b/drivers/md/md.c -index 5e2751d42f645..0e101e74f0ba8 100644 ---- a/drivers/md/md.c -+++ b/drivers/md/md.c -@@ -682,13 +682,13 @@ void mddev_put(struct mddev *mddev) - * flush_workqueue() after mddev_find will succeed in waiting - * for the work to be done. - */ -- INIT_WORK(&mddev->del_work, mddev_delayed_delete); - queue_work(md_misc_wq, &mddev->del_work); - } - spin_unlock(&all_mddevs_lock); - } - - static void md_safemode_timeout(struct timer_list *t); -+static void md_start_sync(struct work_struct *ws); - - void mddev_init(struct mddev *mddev) - { -@@ -710,6 +710,9 @@ void mddev_init(struct mddev *mddev) - mddev->resync_min = 0; - mddev->resync_max = MaxSector; - mddev->level = LEVEL_NONE; -+ -+ INIT_WORK(&mddev->sync_work, md_start_sync); -+ INIT_WORK(&mddev->del_work, mddev_delayed_delete); - } - EXPORT_SYMBOL_GPL(mddev_init); - -@@ -9339,7 +9342,7 @@ static int remove_and_add_spares(struct mddev *mddev, - - static void md_start_sync(struct work_struct *ws) - { -- struct mddev *mddev = container_of(ws, struct mddev, del_work); -+ struct mddev *mddev = container_of(ws, struct mddev, sync_work); - - mddev->sync_thread = md_register_thread(md_do_sync, - mddev, -@@ -9547,8 +9550,7 @@ void md_check_recovery(struct mddev *mddev) - */ - md_bitmap_write_all(mddev->bitmap); - } -- INIT_WORK(&mddev->del_work, md_start_sync); -- queue_work(md_misc_wq, &mddev->del_work); -+ queue_work(md_misc_wq, &mddev->sync_work); - goto unlock; - } - not_running: -diff --git a/drivers/md/md.h b/drivers/md/md.h -index 4f0b480974552..c1258c94216ac 100644 ---- a/drivers/md/md.h -+++ b/drivers/md/md.h -@@ -452,7 +452,10 @@ struct mddev { - struct kernfs_node *sysfs_degraded; /*handle for 'degraded' */ - struct kernfs_node *sysfs_level; /*handle for 'level' */ - -- struct work_struct del_work; /* used for delayed sysfs removal */ -+ /* used for delayed sysfs removal */ -+ struct work_struct del_work; -+ /* used for register new sync thread */ -+ struct work_struct sync_work; - - /* "lock" protects: - * flush_bio transition from NULL to !NULL --- -2.39.5 -