diff for duplicates of <1502233843.2686.4.camel@wdc.com> diff --git a/a/1.txt b/N1/1.txt index 8442509..9202fe0 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,55 +1,39 @@ -On Tue, 2017-08-08 at 22:17 +0800, Ming Lei wrote: -> Laurence and I see a system lockup issue when running concurrent -> big buffered write(4M bytes) to IB SRP on v4.13-rc3. -> [ ... ] -> #cat hammer_write.sh -> #!/bin/bash -> while true; do -> dd if=/dev/zero of=/dev/mapper/$1 bs=4096k count=800 -> done - -Hello Laurence, - -Is your goal perhaps to simulate a DDN workload? In that case I think you -need oflag=direct to the dd argument list such that the page cache writeback -code does not alter the size of the write requests. Anyway, this test should -not trigger a lockup. Can you check whether the patch below makes the soft -lockup complaints disappear (without changing the hammer_write.sh test -script)? - -Thanks, - -Bart. ----------------------------------------------------------------------------- -[PATCH] block: Make blk_mq_delay_kick_requeue_list() rerun the queue at a -quiet time - -Drivers like dm-mpath requeue requests if no paths are available and -if configured to do so. If the queue depth is sufficiently high and -the queue rerunning delay sufficiently short then .requeue_work can -be queued so often that other work items queued on the same work queue -do not get executed. Avoid that this happens by only rerunning the -queue after no blk_mq_delay_kick_requeue_list() calls have occurred -during @msecs milliseconds. Since the device mapper core is the only -user of blk_mq_delay_kick_requeue_list(), modify the implementation -of this function instead of creating a new function. - -Signed-off-by: Bart Van Assche <bart.vanassche@wdc.com> ---- - block/blk-mq.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/block/blk-mq.c b/block/blk-mq.c -index 041f7b7fa0d6..8bfea36e92f9 100644 ---- a/block/blk-mq.c -+++ b/block/blk-mq.c -@@ -679,8 +679,8 @@ EXPORT_SYMBOL(blk_mq_kick_requeue_list); - void blk_mq_delay_kick_requeue_list(struct request_queue *q, - unsigned long msecs) - { -- kblockd_schedule_delayed_work(&q->requeue_work, -- msecs_to_jiffies(msecs)); -+ kblockd_mod_delayed_work_on(WORK_CPU_UNBOUND, &q->requeue_work, -+ msecs_to_jiffies(msecs)); - } - EXPORT_SYMBOL(blk_mq_delay_kick_requeue_list); +T24gVHVlLCAyMDE3LTA4LTA4IGF0IDIyOjE3ICswODAwLCBNaW5nIExlaSB3cm90ZToNCj4gTGF1 +cmVuY2UgYW5kIEkgc2VlIGEgc3lzdGVtIGxvY2t1cCBpc3N1ZSB3aGVuIHJ1bm5pbmcgY29uY3Vy +cmVudA0KPiBiaWcgYnVmZmVyZWQgd3JpdGUoNE0gYnl0ZXMpIHRvIElCIFNSUCBvbiB2NC4xMy1y +YzMuDQo+IFsgLi4uIF0gDQo+IAkjY2F0IGhhbW1lcl93cml0ZS5zaA0KPiAJIyEvYmluL2Jhc2gN +Cj4gCXdoaWxlIHRydWU7IGRvDQo+IAkJZGQgaWY9L2Rldi96ZXJvIG9mPS9kZXYvbWFwcGVyLyQx +IGJzPTQwOTZrIGNvdW50PTgwMCAJDQo+ICAgICAgIGRvbmUNCg0KSGVsbG8gTGF1cmVuY2UsDQoN +CklzIHlvdXIgZ29hbCBwZXJoYXBzIHRvIHNpbXVsYXRlIGEgREROIHdvcmtsb2FkPyBJbiB0aGF0 +IGNhc2UgSSB0aGluayB5b3UNCm5lZWQgb2ZsYWc9ZGlyZWN0IHRvIHRoZSBkZCBhcmd1bWVudCBs +aXN0IHN1Y2ggdGhhdCB0aGUgcGFnZSBjYWNoZSB3cml0ZWJhY2sNCmNvZGUgZG9lcyBub3QgYWx0 +ZXIgdGhlIHNpemUgb2YgdGhlIHdyaXRlIHJlcXVlc3RzLiBBbnl3YXksIHRoaXMgdGVzdCBzaG91 +bGQNCm5vdCB0cmlnZ2VyIGEgbG9ja3VwLiBDYW4geW91IGNoZWNrIHdoZXRoZXIgdGhlIHBhdGNo +IGJlbG93IG1ha2VzIHRoZSBzb2Z0DQpsb2NrdXAgY29tcGxhaW50cyBkaXNhcHBlYXIgKHdpdGhv +dXQgY2hhbmdpbmcgdGhlIGhhbW1lcl93cml0ZS5zaCB0ZXN0DQpzY3JpcHQpPw0KDQpUaGFua3Ms +DQoNCkJhcnQuDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t +LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpbUEFUQ0hdIGJsb2NrOiBNYWtlIGJsa19t +cV9kZWxheV9raWNrX3JlcXVldWVfbGlzdCgpIHJlcnVuIHRoZSBxdWV1ZSBhdCBhDQpxdWlldCB0 +aW1lDQoNCkRyaXZlcnMgbGlrZSBkbS1tcGF0aCByZXF1ZXVlIHJlcXVlc3RzIGlmIG5vIHBhdGhz +IGFyZSBhdmFpbGFibGUgYW5kDQppZiBjb25maWd1cmVkIHRvIGRvIHNvLiBJZiB0aGUgcXVldWUg +ZGVwdGggaXMgc3VmZmljaWVudGx5IGhpZ2ggYW5kDQp0aGUgcXVldWUgcmVydW5uaW5nIGRlbGF5 +IHN1ZmZpY2llbnRseSBzaG9ydCB0aGVuIC5yZXF1ZXVlX3dvcmsgY2FuDQpiZSBxdWV1ZWQgc28g +b2Z0ZW4gdGhhdCBvdGhlciB3b3JrIGl0ZW1zIHF1ZXVlZCBvbiB0aGUgc2FtZSB3b3JrIHF1ZXVl +DQpkbyBub3QgZ2V0IGV4ZWN1dGVkLiBBdm9pZCB0aGF0IHRoaXMgaGFwcGVucyBieSBvbmx5IHJl +cnVubmluZyB0aGUNCnF1ZXVlIGFmdGVyIG5vIGJsa19tcV9kZWxheV9raWNrX3JlcXVldWVfbGlz +dCgpIGNhbGxzIGhhdmUgb2NjdXJyZWQNCmR1cmluZyBAbXNlY3MgbWlsbGlzZWNvbmRzLiBTaW5j +ZSB0aGUgZGV2aWNlIG1hcHBlciBjb3JlIGlzIHRoZSBvbmx5DQp1c2VyIG9mIGJsa19tcV9kZWxh +eV9raWNrX3JlcXVldWVfbGlzdCgpLCBtb2RpZnkgdGhlIGltcGxlbWVudGF0aW9uDQpvZiB0aGlz +IGZ1bmN0aW9uIGluc3RlYWQgb2YgY3JlYXRpbmcgYSBuZXcgZnVuY3Rpb24uDQoNClNpZ25lZC1v +ZmYtYnk6IEJhcnQgVmFuIEFzc2NoZSA8YmFydC52YW5hc3NjaGVAd2RjLmNvbT4NCi0tLQ0KIGJs +b2NrL2Jsay1tcS5jIHwgNCArKy0tDQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwg +MiBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL2Jsb2NrL2Jsay1tcS5jIGIvYmxvY2svYmxr +LW1xLmMNCmluZGV4IDA0MWY3YjdmYTBkNi4uOGJmZWEzNmU5MmY5IDEwMDY0NA0KLS0tIGEvYmxv +Y2svYmxrLW1xLmMNCisrKyBiL2Jsb2NrL2Jsay1tcS5jDQpAQCAtNjc5LDggKzY3OSw4IEBAIEVY +UE9SVF9TWU1CT0woYmxrX21xX2tpY2tfcmVxdWV1ZV9saXN0KTsNCiB2b2lkIGJsa19tcV9kZWxh +eV9raWNrX3JlcXVldWVfbGlzdChzdHJ1Y3QgcmVxdWVzdF9xdWV1ZSAqcSwNCiAJCQkJICAgIHVu +c2lnbmVkIGxvbmcgbXNlY3MpDQogew0KLQlrYmxvY2tkX3NjaGVkdWxlX2RlbGF5ZWRfd29yaygm +cS0+cmVxdWV1ZV93b3JrLA0KLQkJCQkgICAgICBtc2Vjc190b19qaWZmaWVzKG1zZWNzKSk7DQor +CWtibG9ja2RfbW9kX2RlbGF5ZWRfd29ya19vbihXT1JLX0NQVV9VTkJPVU5ELCAmcS0+cmVxdWV1 +ZV93b3JrLA0KKwkJCQkgICAgbXNlY3NfdG9famlmZmllcyhtc2VjcykpOw0KIH0NCiBFWFBPUlRf +U1lNQk9MKGJsa19tcV9kZWxheV9raWNrX3JlcXVldWVfbGlzdCk7DQo= diff --git a/a/content_digest b/N1/content_digest index 79a326d..f8aad32 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -9,60 +9,44 @@ "Cc\0loberman@redhat.com <loberman@redhat.com>\0" "\00:1\0" "b\0" - "On Tue, 2017-08-08 at 22:17 +0800, Ming Lei wrote:\n" - "> Laurence and I see a system lockup issue when running concurrent\n" - "> big buffered write(4M bytes) to IB SRP on v4.13-rc3.\n" - "> [ ... ] \n" - "> \t#cat hammer_write.sh\n" - "> \t#!/bin/bash\n" - "> \twhile true; do\n" - "> \t\tdd if=/dev/zero of=/dev/mapper/$1 bs=4096k count=800 \t\n" - "> done\n" - "\n" - "Hello Laurence,\n" - "\n" - "Is your goal perhaps to simulate a DDN workload? In that case I think you\n" - "need oflag=direct to the dd argument list such that the page cache writeback\n" - "code does not alter the size of the write requests. Anyway, this test should\n" - "not trigger a lockup. Can you check whether the patch below makes the soft\n" - "lockup complaints disappear (without changing the hammer_write.sh test\n" - "script)?\n" - "\n" - "Thanks,\n" - "\n" - "Bart.\n" - "----------------------------------------------------------------------------\n" - "[PATCH] block: Make blk_mq_delay_kick_requeue_list() rerun the queue at a\n" - "quiet time\n" - "\n" - "Drivers like dm-mpath requeue requests if no paths are available and\n" - "if configured to do so. If the queue depth is sufficiently high and\n" - "the queue rerunning delay sufficiently short then .requeue_work can\n" - "be queued so often that other work items queued on the same work queue\n" - "do not get executed. Avoid that this happens by only rerunning the\n" - "queue after no blk_mq_delay_kick_requeue_list() calls have occurred\n" - "during @msecs milliseconds. Since the device mapper core is the only\n" - "user of blk_mq_delay_kick_requeue_list(), modify the implementation\n" - "of this function instead of creating a new function.\n" - "\n" - "Signed-off-by: Bart Van Assche <bart.vanassche@wdc.com>\n" - "---\n" - " block/blk-mq.c | 4 ++--\n" - " 1 file changed, 2 insertions(+), 2 deletions(-)\n" - "\n" - "diff --git a/block/blk-mq.c b/block/blk-mq.c\n" - "index 041f7b7fa0d6..8bfea36e92f9 100644\n" - "--- a/block/blk-mq.c\n" - "+++ b/block/blk-mq.c\n" - "@@ -679,8 +679,8 @@ EXPORT_SYMBOL(blk_mq_kick_requeue_list);\n" - " void blk_mq_delay_kick_requeue_list(struct request_queue *q,\n" - " \t\t\t\t unsigned long msecs)\n" - " {\n" - "-\tkblockd_schedule_delayed_work(&q->requeue_work,\n" - "-\t\t\t\t msecs_to_jiffies(msecs));\n" - "+\tkblockd_mod_delayed_work_on(WORK_CPU_UNBOUND, &q->requeue_work,\n" - "+\t\t\t\t msecs_to_jiffies(msecs));\n" - " }\n" - EXPORT_SYMBOL(blk_mq_delay_kick_requeue_list); + "T24gVHVlLCAyMDE3LTA4LTA4IGF0IDIyOjE3ICswODAwLCBNaW5nIExlaSB3cm90ZToNCj4gTGF1\n" + "cmVuY2UgYW5kIEkgc2VlIGEgc3lzdGVtIGxvY2t1cCBpc3N1ZSB3aGVuIHJ1bm5pbmcgY29uY3Vy\n" + "cmVudA0KPiBiaWcgYnVmZmVyZWQgd3JpdGUoNE0gYnl0ZXMpIHRvIElCIFNSUCBvbiB2NC4xMy1y\n" + "YzMuDQo+IFsgLi4uIF0gDQo+IAkjY2F0IGhhbW1lcl93cml0ZS5zaA0KPiAJIyEvYmluL2Jhc2gN\n" + "Cj4gCXdoaWxlIHRydWU7IGRvDQo+IAkJZGQgaWY9L2Rldi96ZXJvIG9mPS9kZXYvbWFwcGVyLyQx\n" + "IGJzPTQwOTZrIGNvdW50PTgwMCAJDQo+ICAgICAgIGRvbmUNCg0KSGVsbG8gTGF1cmVuY2UsDQoN\n" + "CklzIHlvdXIgZ29hbCBwZXJoYXBzIHRvIHNpbXVsYXRlIGEgREROIHdvcmtsb2FkPyBJbiB0aGF0\n" + "IGNhc2UgSSB0aGluayB5b3UNCm5lZWQgb2ZsYWc9ZGlyZWN0IHRvIHRoZSBkZCBhcmd1bWVudCBs\n" + "aXN0IHN1Y2ggdGhhdCB0aGUgcGFnZSBjYWNoZSB3cml0ZWJhY2sNCmNvZGUgZG9lcyBub3QgYWx0\n" + "ZXIgdGhlIHNpemUgb2YgdGhlIHdyaXRlIHJlcXVlc3RzLiBBbnl3YXksIHRoaXMgdGVzdCBzaG91\n" + "bGQNCm5vdCB0cmlnZ2VyIGEgbG9ja3VwLiBDYW4geW91IGNoZWNrIHdoZXRoZXIgdGhlIHBhdGNo\n" + "IGJlbG93IG1ha2VzIHRoZSBzb2Z0DQpsb2NrdXAgY29tcGxhaW50cyBkaXNhcHBlYXIgKHdpdGhv\n" + "dXQgY2hhbmdpbmcgdGhlIGhhbW1lcl93cml0ZS5zaCB0ZXN0DQpzY3JpcHQpPw0KDQpUaGFua3Ms\n" + "DQoNCkJhcnQuDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\n" + "LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpbUEFUQ0hdIGJsb2NrOiBNYWtlIGJsa19t\n" + "cV9kZWxheV9raWNrX3JlcXVldWVfbGlzdCgpIHJlcnVuIHRoZSBxdWV1ZSBhdCBhDQpxdWlldCB0\n" + "aW1lDQoNCkRyaXZlcnMgbGlrZSBkbS1tcGF0aCByZXF1ZXVlIHJlcXVlc3RzIGlmIG5vIHBhdGhz\n" + "IGFyZSBhdmFpbGFibGUgYW5kDQppZiBjb25maWd1cmVkIHRvIGRvIHNvLiBJZiB0aGUgcXVldWUg\n" + "ZGVwdGggaXMgc3VmZmljaWVudGx5IGhpZ2ggYW5kDQp0aGUgcXVldWUgcmVydW5uaW5nIGRlbGF5\n" + "IHN1ZmZpY2llbnRseSBzaG9ydCB0aGVuIC5yZXF1ZXVlX3dvcmsgY2FuDQpiZSBxdWV1ZWQgc28g\n" + "b2Z0ZW4gdGhhdCBvdGhlciB3b3JrIGl0ZW1zIHF1ZXVlZCBvbiB0aGUgc2FtZSB3b3JrIHF1ZXVl\n" + "DQpkbyBub3QgZ2V0IGV4ZWN1dGVkLiBBdm9pZCB0aGF0IHRoaXMgaGFwcGVucyBieSBvbmx5IHJl\n" + "cnVubmluZyB0aGUNCnF1ZXVlIGFmdGVyIG5vIGJsa19tcV9kZWxheV9raWNrX3JlcXVldWVfbGlz\n" + "dCgpIGNhbGxzIGhhdmUgb2NjdXJyZWQNCmR1cmluZyBAbXNlY3MgbWlsbGlzZWNvbmRzLiBTaW5j\n" + "ZSB0aGUgZGV2aWNlIG1hcHBlciBjb3JlIGlzIHRoZSBvbmx5DQp1c2VyIG9mIGJsa19tcV9kZWxh\n" + "eV9raWNrX3JlcXVldWVfbGlzdCgpLCBtb2RpZnkgdGhlIGltcGxlbWVudGF0aW9uDQpvZiB0aGlz\n" + "IGZ1bmN0aW9uIGluc3RlYWQgb2YgY3JlYXRpbmcgYSBuZXcgZnVuY3Rpb24uDQoNClNpZ25lZC1v\n" + "ZmYtYnk6IEJhcnQgVmFuIEFzc2NoZSA8YmFydC52YW5hc3NjaGVAd2RjLmNvbT4NCi0tLQ0KIGJs\n" + "b2NrL2Jsay1tcS5jIHwgNCArKy0tDQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwg\n" + "MiBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL2Jsb2NrL2Jsay1tcS5jIGIvYmxvY2svYmxr\n" + "LW1xLmMNCmluZGV4IDA0MWY3YjdmYTBkNi4uOGJmZWEzNmU5MmY5IDEwMDY0NA0KLS0tIGEvYmxv\n" + "Y2svYmxrLW1xLmMNCisrKyBiL2Jsb2NrL2Jsay1tcS5jDQpAQCAtNjc5LDggKzY3OSw4IEBAIEVY\n" + "UE9SVF9TWU1CT0woYmxrX21xX2tpY2tfcmVxdWV1ZV9saXN0KTsNCiB2b2lkIGJsa19tcV9kZWxh\n" + "eV9raWNrX3JlcXVldWVfbGlzdChzdHJ1Y3QgcmVxdWVzdF9xdWV1ZSAqcSwNCiAJCQkJICAgIHVu\n" + "c2lnbmVkIGxvbmcgbXNlY3MpDQogew0KLQlrYmxvY2tkX3NjaGVkdWxlX2RlbGF5ZWRfd29yaygm\n" + "cS0+cmVxdWV1ZV93b3JrLA0KLQkJCQkgICAgICBtc2Vjc190b19qaWZmaWVzKG1zZWNzKSk7DQor\n" + "CWtibG9ja2RfbW9kX2RlbGF5ZWRfd29ya19vbihXT1JLX0NQVV9VTkJPVU5ELCAmcS0+cmVxdWV1\n" + "ZV93b3JrLA0KKwkJCQkgICAgbXNlY3NfdG9famlmZmllcyhtc2VjcykpOw0KIH0NCiBFWFBPUlRf\n" + U1lNQk9MKGJsa19tcV9kZWxheV9raWNrX3JlcXVldWVfbGlzdCk7DQo= -e223be20fefd35cb5c39f94673608b240d6cec57cf49f1b3531c9d9e545ac098 +a42a31113c0914a1c3471ecf6de0a69b1e785844563894f13b4314fd9eec7b33
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.