diff for duplicates of <1516375212.3190.4.camel@wdc.com>
diff --git a/a/1.txt b/N1/1.txt
index 73b8f7e..7f0df92 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -1,16 +1,26 @@
-T24gRnJpLCAyMDE4LTAxLTE5IGF0IDE1OjI2ICswODAwLCBNaW5nIExlaSB3cm90ZToNCj4gUGxl
-YXNlIHNlZSBxdWV1ZV9kZWxheWVkX3dvcmtfb24oKSwgaGN0eC0+cnVuX3dvcmsgaXMgc2hhcmVk
-IGJ5IGFsbA0KPiBzY2hlZHVsaW5nLCBvbmNlIGJsa19tcV9kZWxheV9ydW5faHdfcXVldWUoMTAw
-bXMpIHJldHVybnMsIG5vIG5ldw0KPiBzY2hlZHVsaW5nIGNhbiBtYWtlIHByb2dyZXNzIGR1cmlu
-ZyB0aGUgMTAwbXMuDQoNCkhvdyBhYm91dCBhZGRyZXNzaW5nIHRoYXQgYXMgZm9sbG93czoNCg0K
-ZGlmZiAtLWdpdCBhL2Jsb2NrL2Jsay1tcS5jIGIvYmxvY2svYmxrLW1xLmMNCmluZGV4IGY3NTE1
-ZGQ5NWEzNi4uNTdmODM3OWE0NzZkIDEwMDY0NA0KLS0tIGEvYmxvY2svYmxrLW1xLmMNCisrKyBi
-L2Jsb2NrL2Jsay1tcS5jDQpAQCAtMTQwMyw5ICsxNDAzLDkgQEAgc3RhdGljIHZvaWQgX19ibGtf
-bXFfZGVsYXlfcnVuX2h3X3F1ZXVlKHN0cnVjdCBibGtfbXFfaHdfY3R4ICpoY3R4LCBib29sIGFz
-eW5jLA0KIAkJcHV0X2NwdSgpOw0KIAl9DQogDQotCWtibG9ja2Rfc2NoZWR1bGVfZGVsYXllZF93
-b3JrX29uKGJsa19tcV9oY3R4X25leHRfY3B1KGhjdHgpLA0KLQkJCQkJICZoY3R4LT5ydW5fd29y
-aywNCi0JCQkJCSBtc2Vjc190b19qaWZmaWVzKG1zZWNzKSk7DQorCWtibG9ja2RfbW9kX2RlbGF5
-ZWRfd29ya19vbihibGtfbXFfaGN0eF9uZXh0X2NwdShoY3R4KSwNCisJCQkJICAgICZoY3R4LT5y
-dW5fd29yaywNCisJCQkJICAgIG1zZWNzX3RvX2ppZmZpZXMobXNlY3MpKTsNCiB9DQogDQogdm9p
-ZCBibGtfbXFfZGVsYXlfcnVuX2h3X3F1ZXVlKHN0cnVjdCBibGtfbXFfaHdfY3R4ICpoY3R4LCB1
-bnNpZ25lZCBsb25nIG1zZWNzKQ0KDQpCYXJ0Lg==
\ No newline at end of file
+On Fri, 2018-01-19 at 15:26 +0800, Ming Lei wrote:
+> Please see queue_delayed_work_on(), hctx->run_work is shared by all
+> scheduling, once blk_mq_delay_run_hw_queue(100ms) returns, no new
+> scheduling can make progress during the 100ms.
+
+How about addressing that as follows:
+
+diff --git a/block/blk-mq.c b/block/blk-mq.c
+index f7515dd95a36..57f8379a476d 100644
+--- a/block/blk-mq.c
++++ b/block/blk-mq.c
+@@ -1403,9 +1403,9 @@ static void __blk_mq_delay_run_hw_queue(struct blk_mq_hw_ctx *hctx, bool async,
+ put_cpu();
+ }
+
+- kblockd_schedule_delayed_work_on(blk_mq_hctx_next_cpu(hctx),
+- &hctx->run_work,
+- msecs_to_jiffies(msecs));
++ kblockd_mod_delayed_work_on(blk_mq_hctx_next_cpu(hctx),
++ &hctx->run_work,
++ msecs_to_jiffies(msecs));
+ }
+
+ void blk_mq_delay_run_hw_queue(struct blk_mq_hw_ctx *hctx, unsigned long msecs)
+
+Bart.
\ No newline at end of file
diff --git a/a/content_digest b/N1/content_digest
index 3824a29..22517e6 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -56,22 +56,32 @@
"b\0"
]
[
- "T24gRnJpLCAyMDE4LTAxLTE5IGF0IDE1OjI2ICswODAwLCBNaW5nIExlaSB3cm90ZToNCj4gUGxl\n",
- "YXNlIHNlZSBxdWV1ZV9kZWxheWVkX3dvcmtfb24oKSwgaGN0eC0+cnVuX3dvcmsgaXMgc2hhcmVk\n",
- "IGJ5IGFsbA0KPiBzY2hlZHVsaW5nLCBvbmNlIGJsa19tcV9kZWxheV9ydW5faHdfcXVldWUoMTAw\n",
- "bXMpIHJldHVybnMsIG5vIG5ldw0KPiBzY2hlZHVsaW5nIGNhbiBtYWtlIHByb2dyZXNzIGR1cmlu\n",
- "ZyB0aGUgMTAwbXMuDQoNCkhvdyBhYm91dCBhZGRyZXNzaW5nIHRoYXQgYXMgZm9sbG93czoNCg0K\n",
- "ZGlmZiAtLWdpdCBhL2Jsb2NrL2Jsay1tcS5jIGIvYmxvY2svYmxrLW1xLmMNCmluZGV4IGY3NTE1\n",
- "ZGQ5NWEzNi4uNTdmODM3OWE0NzZkIDEwMDY0NA0KLS0tIGEvYmxvY2svYmxrLW1xLmMNCisrKyBi\n",
- "L2Jsb2NrL2Jsay1tcS5jDQpAQCAtMTQwMyw5ICsxNDAzLDkgQEAgc3RhdGljIHZvaWQgX19ibGtf\n",
- "bXFfZGVsYXlfcnVuX2h3X3F1ZXVlKHN0cnVjdCBibGtfbXFfaHdfY3R4ICpoY3R4LCBib29sIGFz\n",
- "eW5jLA0KIAkJcHV0X2NwdSgpOw0KIAl9DQogDQotCWtibG9ja2Rfc2NoZWR1bGVfZGVsYXllZF93\n",
- "b3JrX29uKGJsa19tcV9oY3R4X25leHRfY3B1KGhjdHgpLA0KLQkJCQkJICZoY3R4LT5ydW5fd29y\n",
- "aywNCi0JCQkJCSBtc2Vjc190b19qaWZmaWVzKG1zZWNzKSk7DQorCWtibG9ja2RfbW9kX2RlbGF5\n",
- "ZWRfd29ya19vbihibGtfbXFfaGN0eF9uZXh0X2NwdShoY3R4KSwNCisJCQkJICAgICZoY3R4LT5y\n",
- "dW5fd29yaywNCisJCQkJICAgIG1zZWNzX3RvX2ppZmZpZXMobXNlY3MpKTsNCiB9DQogDQogdm9p\n",
- "ZCBibGtfbXFfZGVsYXlfcnVuX2h3X3F1ZXVlKHN0cnVjdCBibGtfbXFfaHdfY3R4ICpoY3R4LCB1\n",
- "bnNpZ25lZCBsb25nIG1zZWNzKQ0KDQpCYXJ0Lg=="
+ "On Fri, 2018-01-19 at 15:26 +0800, Ming Lei wrote:\n",
+ "> Please see queue_delayed_work_on(), hctx->run_work is shared by all\n",
+ "> scheduling, once blk_mq_delay_run_hw_queue(100ms) returns, no new\n",
+ "> scheduling can make progress during the 100ms.\n",
+ "\n",
+ "How about addressing that as follows:\n",
+ "\n",
+ "diff --git a/block/blk-mq.c b/block/blk-mq.c\n",
+ "index f7515dd95a36..57f8379a476d 100644\n",
+ "--- a/block/blk-mq.c\n",
+ "+++ b/block/blk-mq.c\n",
+ "\@\@ -1403,9 +1403,9 \@\@ static void __blk_mq_delay_run_hw_queue(struct blk_mq_hw_ctx *hctx, bool async,\n",
+ " \t\tput_cpu();\n",
+ " \t}\n",
+ " \n",
+ "-\tkblockd_schedule_delayed_work_on(blk_mq_hctx_next_cpu(hctx),\n",
+ "-\t\t\t\t\t &hctx->run_work,\n",
+ "-\t\t\t\t\t msecs_to_jiffies(msecs));\n",
+ "+\tkblockd_mod_delayed_work_on(blk_mq_hctx_next_cpu(hctx),\n",
+ "+\t\t\t\t &hctx->run_work,\n",
+ "+\t\t\t\t msecs_to_jiffies(msecs));\n",
+ " }\n",
+ " \n",
+ " void blk_mq_delay_run_hw_queue(struct blk_mq_hw_ctx *hctx, unsigned long msecs)\n",
+ "\n",
+ "Bart."
]
-e5940b5c230988e3112583d4e22b157da0f10980896e3b215b7387a28aadff00
+508d6f1cbd79ecd781f632735598fd267dce589c8879e7b00897f7270270395d
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.