5 typedef int (blk_iopoll_fn
)(struct blk_iopoll
*, int);
22 * Returns 0 if we successfully set the IOPOLL_F_SCHED bit, indicating
23 * that we were the first to acquire this iop for scheduling. If this iop
24 * is currently disabled, return "failure".
26 static inline int blk_iopoll_sched_prep(struct blk_iopoll
*iop
)
28 if (!test_bit(IOPOLL_F_DISABLE
, &iop
->state
))
29 return test_and_set_bit(IOPOLL_F_SCHED
, &iop
->state
);
34 static inline int blk_iopoll_disable_pending(struct blk_iopoll
*iop
)
36 return test_bit(IOPOLL_F_DISABLE
, &iop
->state
);
39 extern void blk_iopoll_sched(struct blk_iopoll
*);
40 extern void blk_iopoll_init(struct blk_iopoll
*, int, blk_iopoll_fn
*);
41 extern void blk_iopoll_complete(struct blk_iopoll
*);
42 extern void __blk_iopoll_complete(struct blk_iopoll
*);
43 extern void blk_iopoll_enable(struct blk_iopoll
*);
44 extern void blk_iopoll_disable(struct blk_iopoll
*);
46 extern int blk_iopoll_enabled
;