diff options
author | Paul Gortmaker <paul.gortmaker@windriver.com> | 2019-09-16 12:17:13 -0400 |
---|---|---|
committer | Paul Gortmaker <paul.gortmaker@windriver.com> | 2019-09-16 12:17:13 -0400 |
commit | 733b3046fa3436c3f7bbeb144bc8b258ce9110f4 (patch) | |
tree | ef2c0f4efc25fd9bdb668a15d1d2dfe176f80b0d | |
parent | bd501af9ea7e33da720504829ae39c2bb762e642 (diff) | |
download | longterm-queue-4.18-733b3046fa3436c3f7bbeb144bc8b258ce9110f4.tar.gz |
blk: drop mq commits with build dependencies
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
-rw-r--r-- | queue/blk-mq-move-cancel-of-requeue_work-into-blk_mq_relea.patch | 60 | ||||
-rw-r--r-- | queue/blk-mq-move-cancel-of-requeue_work-to-the-front-of-b.patch | 56 | ||||
-rw-r--r-- | queue/series | 2 |
3 files changed, 0 insertions, 118 deletions
diff --git a/queue/blk-mq-move-cancel-of-requeue_work-into-blk_mq_relea.patch b/queue/blk-mq-move-cancel-of-requeue_work-into-blk_mq_relea.patch deleted file mode 100644 index 0297262..0000000 --- a/queue/blk-mq-move-cancel-of-requeue_work-into-blk_mq_relea.patch +++ /dev/null @@ -1,60 +0,0 @@ -From aec7c12e99f767f0583d489d3862b25536afedb4 Mon Sep 17 00:00:00 2001 -From: Ming Lei <ming.lei@redhat.com> -Date: Tue, 30 Apr 2019 09:52:24 +0800 -Subject: [PATCH] blk-mq: move cancel of requeue_work into blk_mq_release - -commit fbc2a15e3433058582e5635aabe48a3011a644a8 upstream. - -With holding queue's kobject refcount, it is safe for driver -to schedule requeue. However, blk_mq_kick_requeue_list() may -be called after blk_sync_queue() is done because of concurrent -requeue activities, then requeue work may not be completed when -freeing queue, and kernel oops is triggered. - -So moving the cancel of requeue_work into blk_mq_release() for -avoiding race between requeue and freeing queue. - -Cc: Dongli Zhang <dongli.zhang@oracle.com> -Cc: James Smart <james.smart@broadcom.com> -Cc: Bart Van Assche <bart.vanassche@wdc.com> -Cc: linux-scsi@vger.kernel.org, -Cc: Martin K . Petersen <martin.petersen@oracle.com>, -Cc: Christoph Hellwig <hch@lst.de>, -Cc: James E . J . Bottomley <jejb@linux.vnet.ibm.com>, -Reviewed-by: Bart Van Assche <bvanassche@acm.org> -Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> -Reviewed-by: Hannes Reinecke <hare@suse.com> -Reviewed-by: Christoph Hellwig <hch@lst.de> -Tested-by: James Smart <james.smart@broadcom.com> -Signed-off-by: Ming Lei <ming.lei@redhat.com> -Signed-off-by: Jens Axboe <axboe@kernel.dk> -Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> - -diff --git a/block/blk-core.c b/block/blk-core.c -index 7d4bf916546c..fc41adedf2eb 100644 ---- a/block/blk-core.c -+++ b/block/blk-core.c -@@ -411,7 +411,6 @@ void blk_sync_queue(struct request_queue *q) - struct blk_mq_hw_ctx *hctx; - int i; - -- cancel_delayed_work_sync(&q->requeue_work); - queue_for_each_hw_ctx(q, hctx, i) - cancel_delayed_work_sync(&hctx->run_work); - } else { -diff --git a/block/blk-mq.c b/block/blk-mq.c -index 5f1493fc9c7f..01f5660aae64 100644 ---- a/block/blk-mq.c -+++ b/block/blk-mq.c -@@ -2420,6 +2420,8 @@ void blk_mq_release(struct request_queue *q) - struct blk_mq_hw_ctx *hctx; - unsigned int i; - -+ cancel_delayed_work_sync(&q->requeue_work); -+ - /* hctx kobj stays in hctx */ - queue_for_each_hw_ctx(q, hctx, i) { - if (!hctx) --- -2.7.4 - diff --git a/queue/blk-mq-move-cancel-of-requeue_work-to-the-front-of-b.patch b/queue/blk-mq-move-cancel-of-requeue_work-to-the-front-of-b.patch deleted file mode 100644 index a90d3f5..0000000 --- a/queue/blk-mq-move-cancel-of-requeue_work-to-the-front-of-b.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 693ccf68871b8d29c5c346576673d067dba03adf Mon Sep 17 00:00:00 2001 -From: zhengbin <zhengbin13@huawei.com> -Date: Mon, 12 Aug 2019 20:36:55 +0800 -Subject: [PATCH] blk-mq: move cancel of requeue_work to the front of - blk_exit_queue - -commit e26cc08265dda37d2acc8394604f220ef412299d upstream. - -blk_exit_queue will free elevator_data, while blk_mq_requeue_work -will access it. Move cancel of requeue_work to the front of -blk_exit_queue to avoid use-after-free. - -blk_exit_queue blk_mq_requeue_work - __elevator_exit blk_mq_run_hw_queues - blk_mq_exit_sched blk_mq_run_hw_queue - dd_exit_queue blk_mq_hctx_has_pending - kfree(elevator_data) blk_mq_sched_has_work - dd_has_work - -Fixes: fbc2a15e3433 ("blk-mq: move cancel of requeue_work into blk_mq_release") -Cc: stable@vger.kernel.org -Reviewed-by: Ming Lei <ming.lei@redhat.com> -Signed-off-by: zhengbin <zhengbin13@huawei.com> -Signed-off-by: Jens Axboe <axboe@kernel.dk> -Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> - -diff --git a/block/blk-mq.c b/block/blk-mq.c -index 01f5660aae64..5f1493fc9c7f 100644 ---- a/block/blk-mq.c -+++ b/block/blk-mq.c -@@ -2420,8 +2420,6 @@ void blk_mq_release(struct request_queue *q) - struct blk_mq_hw_ctx *hctx; - unsigned int i; - -- cancel_delayed_work_sync(&q->requeue_work); -- - /* hctx kobj stays in hctx */ - queue_for_each_hw_ctx(q, hctx, i) { - if (!hctx) -diff --git a/block/blk-sysfs.c b/block/blk-sysfs.c -index 96c7dfc04852..d1f9118a1036 100644 ---- a/block/blk-sysfs.c -+++ b/block/blk-sysfs.c -@@ -821,6 +821,9 @@ static void __blk_release_queue(struct work_struct *work) - - blk_free_queue_stats(q->stats); - -+ if (queue_is_mq(q)) -+ cancel_delayed_work_sync(&q->requeue_work); -+ - blk_exit_rl(q, &q->root_rl); - - if (q->queue_tags) --- -2.7.4 - diff --git a/queue/series b/queue/series index ae89038..9a2fe95 100644 --- a/queue/series +++ b/queue/series @@ -48,7 +48,6 @@ netfilter-nf_conntrack_h323-restore-boundary-check-c.patch mips-Make-sure-dt-memory-regions-are-valid.patch watchdog-imx2_wdt-Fix-set_timeout-for-big-timeout-va.patch watchdog-fix-compile-time-error-of-pretimeout-govern.patch -blk-mq-move-cancel-of-requeue_work-into-blk_mq_relea.patch iommu-vt-d-Set-intel_iommu_gfx_mapped-correctly.patch misc-pci_endpoint_test-Fix-test_reg_bar-to-be-update.patch PCI-designware-ep-Use-aligned-ATU-window-for-raising.patch @@ -227,7 +226,6 @@ drm-nouveau-Don-t-retry-infinitely-when-receiving-no.patch drm-nouveau-i2c-Enable-i2c-pads-busses-during-preini.patch MIPS-Fix-bounds-check-virt_addr_valid.patch x86-ftrace-Fix-warning-and-considate-ftrace_jmp_repl.patch -blk-mq-move-cancel-of-requeue_work-to-the-front-of-b.patch initramfs-don-t-free-a-non-existent-initrd.patch ipvs-defer-hook-registration-to-avoid-leaks.patch selftests-fib_rule_tests-use-pre-defined-DEV_ADDR.patch |