On 7/25/22 11:20, Ammar Faizi wrote:
Hi Pavel,
On 7/25/22 5:03 PM, Pavel Begunkov wrote:
+static inline void io_uring_prep_notif_update(struct io_uring_sqe *sqe,
+ __u64 new_tag, /* 0 to ignore */
+ unsigned offset, unsigned nr)
+{
+ io_uring_prep_rw(IORING_OP_FILES_UPDATE, sqe, -1, (void *)new_tag, nr,
+ (__u64)offset);
+ sqe->ioprio = IORING_RSRC_UPDATE_NOTIF;
+}
+
This part breaks 32-bit architecture.
include/liburing.h: In function ‘io_uring_prep_notif_update’:
In file included from syscall.h:14,
from setup.c:5:
include/liburing.h: In function ‘io_uring_prep_notif_update’:
include/liburing.h:716:59: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
716 | io_uring_prep_rw(IORING_OP_FILES_UPDATE, sqe, -1, (void *)new_tag, nr,
| ^
include/liburing.h:716:59: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
716 | io_uring_prep_rw(IORING_OP_FILES_UPDATE, sqe, -1, (void *)new_tag, nr,
|
Got it, thanks
--
Pavel Begunkov