|
@@ -210,8 +210,15 @@ struct kioctx *lookup_ioctx(unsigned long ctx_id);
|
|
|
int FASTCALL(io_submit_one(struct kioctx *ctx, struct iocb __user *user_iocb,
|
|
|
struct iocb *iocb));
|
|
|
|
|
|
-#define get_ioctx(kioctx) do { if (unlikely(atomic_read(&(kioctx)->users) <= 0)) BUG(); atomic_inc(&(kioctx)->users); } while (0)
|
|
|
-#define put_ioctx(kioctx) do { if (unlikely(atomic_dec_and_test(&(kioctx)->users))) __put_ioctx(kioctx); else if (unlikely(atomic_read(&(kioctx)->users) < 0)) BUG(); } while (0)
|
|
|
+#define get_ioctx(kioctx) do { \
|
|
|
+ BUG_ON(unlikely(atomic_read(&(kioctx)->users) <= 0)); \
|
|
|
+ atomic_inc(&(kioctx)->users); \
|
|
|
+} while (0)
|
|
|
+#define put_ioctx(kioctx) do { \
|
|
|
+ BUG_ON(unlikely(atomic_read(&(kioctx)->users) <= 0)); \
|
|
|
+ if (unlikely(atomic_dec_and_test(&(kioctx)->users))) \
|
|
|
+ __put_ioctx(kioctx); \
|
|
|
+} while (0)
|
|
|
|
|
|
#define in_aio() !is_sync_wait(current->io_wait)
|
|
|
/* may be used for debugging */
|