Re: [PATCH 1/2] lightnvm: break the loop when rqd is not null

From: Matias BjÃrling
Date: Thu May 19 2016 - 08:40:47 EST


On 05/19/2016 08:38 AM, Wenwei Tao wrote:
From: Wenwei Tao <ww.tao0320@xxxxxxxxx>

Break the loop when rqd is not null to reduce
unnecessary schedule.

Signed-off-by: Wenwei Tao <ww.tao0320@xxxxxxxxx>
---
drivers/lightnvm/rrpc.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/lightnvm/rrpc.c b/drivers/lightnvm/rrpc.c
index 2103e97..2915e39 100644
--- a/drivers/lightnvm/rrpc.c
+++ b/drivers/lightnvm/rrpc.c
@@ -98,6 +98,9 @@ static void rrpc_discard(struct rrpc *rrpc, struct bio *bio)

do {
rqd = rrpc_inflight_laddr_acquire(rrpc, slba, len);
+ if (rqd)
+ break;
+
schedule();
} while (!rqd);



If that case, mind if I convert the do..while to while?

while(1) {
rqd = rrpc_inflight_laddr_acquire(rrpc, slba, len);
if (rqd)
break;
schedule();
}