Refresh from git tree
This commit is contained in:
parent
8db85be13f
commit
90c43481e7
|
@ -43,7 +43,7 @@ Signed-off-by: Josh Stone <jistone@redhat.com>
|
|||
2 files changed, 21 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index fbd43bfe4445..4bc89d2a3508 100644
|
||||
index f499cd2f5738..9c4ef4809f28 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -706,7 +706,11 @@ KBUILD_CFLAGS += -fomit-frame-pointer
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
From: Ming Lei <ming.lei@canonical.com>
|
||||
Date: Tue, 28 Apr 2015 14:40:49 -0400
|
||||
Subject: [PATCH] blk: loop: avoid too many pending work IO
|
||||
|
||||
If there are too many pending per work I/O, too many
|
||||
high priority work thread can be generated so that
|
||||
system performance can be effected.
|
||||
|
@ -32,10 +36,10 @@ Signed-off-by: Ming Lei <ming.lei@canonical.com>
|
|||
2 files changed, 19 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/block/loop.c b/drivers/block/loop.c
|
||||
index d7173cb..4db0301 100644
|
||||
index d1f168b73634..453bceec22f9 100644
|
||||
--- a/drivers/block/loop.c
|
||||
+++ b/drivers/block/loop.c
|
||||
@@ -1425,13 +1425,24 @@ static int loop_queue_rq(struct blk_mq_hw_ctx *hctx,
|
||||
@@ -1477,13 +1477,24 @@ static int loop_queue_rq(struct blk_mq_hw_ctx *hctx,
|
||||
const struct blk_mq_queue_data *bd)
|
||||
{
|
||||
struct loop_cmd *cmd = blk_mq_rq_to_pdu(bd->rq);
|
||||
|
@ -62,7 +66,7 @@ index d7173cb..4db0301 100644
|
|||
spin_lock_irq(&lo->lo_lock);
|
||||
if (lo->write_started)
|
||||
need_sched = false;
|
||||
@@ -1443,6 +1454,8 @@ static int loop_queue_rq(struct blk_mq_hw_ctx *hctx,
|
||||
@@ -1495,6 +1506,8 @@ static int loop_queue_rq(struct blk_mq_hw_ctx *hctx,
|
||||
if (need_sched)
|
||||
queue_work(loop_wq, &lo->write_work);
|
||||
} else {
|
||||
|
@ -71,7 +75,7 @@ index d7173cb..4db0301 100644
|
|||
queue_work(loop_wq, &cmd->read_work);
|
||||
}
|
||||
|
||||
@@ -1467,6 +1480,8 @@ static void loop_handle_cmd(struct loop_cmd *cmd)
|
||||
@@ -1519,6 +1532,8 @@ static void loop_handle_cmd(struct loop_cmd *cmd)
|
||||
if (ret)
|
||||
cmd->rq->errors = -EIO;
|
||||
blk_mq_complete_request(cmd->rq);
|
||||
|
@ -81,7 +85,7 @@ index d7173cb..4db0301 100644
|
|||
|
||||
static void loop_queue_write_work(struct work_struct *work)
|
||||
diff --git a/drivers/block/loop.h b/drivers/block/loop.h
|
||||
index 301c27f..eb855f5 100644
|
||||
index 301c27f8323f..eb855f57a62d 100644
|
||||
--- a/drivers/block/loop.h
|
||||
+++ b/drivers/block/loop.h
|
||||
@@ -57,6 +57,7 @@ struct loop_device {
|
||||
|
@ -101,4 +105,5 @@ index 301c27f..eb855f5 100644
|
|||
};
|
||||
|
||||
--
|
||||
1.9.1
|
||||
2.1.0
|
||||
|
||||
|
|
Loading…
Reference in New Issue