فهرست منبع

block: make blk_iopoll_prep_sched() follow normal 0/1 return convention

Return 0 if we successfully marked this iopoll structure as ours for
scheduling, instead of 1.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe 16 سال پیش
والد
کامیت
d62f843b29
1فایلهای تغییر یافته به همراه9 افزوده شده و 2 حذف شده
  1. 9 2
      include/linux/blk-iopoll.h

+ 9 - 2
include/linux/blk-iopoll.h

@@ -18,10 +18,17 @@ enum {
 	IOPOLL_F_DISABLE	= 1,
 };
 
+/*
+ * Returns 0 if we successfully set the IOPOLL_F_SCHED bit, indicating
+ * that we were the first to acquire this iop for scheduling. If this iop
+ * is currently disabled, return "failure".
+ */
 static inline int blk_iopoll_sched_prep(struct blk_iopoll *iop)
 {
-	return !test_bit(IOPOLL_F_DISABLE, &iop->state) &&
-		!test_and_set_bit(IOPOLL_F_SCHED, &iop->state);
+	if (!test_bit(IOPOLL_F_DISABLE, &iop->state))
+		return test_and_set_bit(IOPOLL_F_SCHED, &iop->state);
+
+	return 1;
 }
 
 static inline int blk_iopoll_disable_pending(struct blk_iopoll *iop)