Package io.netty.channel.uring
Class Native
- java.lang.Object
-
- io.netty.channel.uring.Native
-
final class Native extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classNative.IoUringProbe(package private) static classNative.IoUringProbeOp
-
Field Summary
Fields Modifier and Type Field Description (package private) static shortAF_INET(package private) static shortAF_INET6(package private) static shortAF_UNIX(package private) static intCMSG_LEN(package private) static intCMSG_LEN_FOR_FD(package private) static intCMSG_OFFSETOF_CMSG_LEN(package private) static intCMSG_OFFSETOF_CMSG_LEVEL(package private) static intCMSG_OFFSETOF_CMSG_TYPE(package private) static intCMSG_SPACE(package private) static intCMSG_SPACE_FOR_FD(package private) static intCQE_SIZE(package private) static intCQE32_SIZE(package private) static intERRNO_ECANCELED_NEGATIVE(package private) static intERRNO_ETIME_NEGATIVE(package private) static intERRNO_NOBUFS_NEGATIVE(package private) static intIN_ADDRESS_OFFSETOF_S_ADDR(package private) static intIN6_ADDRESS_OFFSETOF_S6_ADDR(package private) static intIO_URING_BUFFER_RING_TAIL(package private) static intIO_URING_OP_SUPPORTED(package private) static shortIORING_ACCEPT_DONTWAIT(package private) static shortIORING_ACCEPT_MULTISHOT(package private) static shortIORING_ACCEPT_POLL_FIRST(package private) static intIORING_CQE_BUFFER_SHIFT(package private) static intIORING_CQE_F_32(package private) static intIORING_CQE_F_BUF_MORE(package private) static intIORING_CQE_F_BUFFER(package private) static intIORING_CQE_F_MORE(package private) static intIORING_CQE_F_NOTIF(package private) static intIORING_CQE_F_SKIP(package private) static intIORING_CQE_F_SOCK_NONEMPTY(package private) static intIORING_ENTER_GETEVENTS(package private) static intIORING_ENTER_NO_IOWAIT(package private) static intIORING_ENTER_REGISTERED_RING(package private) static intIORING_FEAT_NO_IOWAIT(package private) static intIORING_FEAT_NODROP(package private) static intIORING_FEAT_RECVSEND_BUNDLE(package private) static intIORING_FEAT_SUBMIT_STABLE(package private) static shortIORING_NOP_CQE32(package private) static intIORING_NOTIF_USAGE_ZC_COPIED(package private) static byteIORING_OP_ACCEPT(package private) static byteIORING_OP_ASYNC_CANCEL(package private) static byteIORING_OP_BIND(package private) static byteIORING_OP_CLOSE(package private) static byteIORING_OP_CONNECT(package private) static byteIORING_OP_EPOLL_CTL(package private) static byteIORING_OP_FADVISE(package private) static byteIORING_OP_FALLOCATE(package private) static byteIORING_OP_FGETXATTR(package private) static byteIORING_OP_FILES_UPDATE(package private) static byteIORING_OP_FIXED_FD_INSTALL(package private) static byteIORING_OP_FSETXATTR(package private) static byteIORING_OP_FSYNC(package private) static byteIORING_OP_FTRUNCATE(package private) static byteIORING_OP_FUTEX_WAIT(package private) static byteIORING_OP_FUTEX_WAITV(package private) static byteIORING_OP_FUTEX_WAKE(package private) static byteIORING_OP_GETXATTR(package private) static byteIORING_OP_LINK_TIMEOUT(package private) static byteIORING_OP_LINKAT(package private) static byteIORING_OP_MADVISE(package private) static byteIORING_OP_MKDIRAT(package private) static byteIORING_OP_MSG_RING(package private) static byteIORING_OP_NOP(package private) static byteIORING_OP_OPENAT(package private) static byteIORING_OP_OPENAT2(package private) static byteIORING_OP_POLL_ADD(package private) static byteIORING_OP_POLL_REMOVE(package private) static byteIORING_OP_PROVIDE_BUFFERS(package private) static byteIORING_OP_READ(package private) static byteIORING_OP_READ_FIXED(package private) static byteIORING_OP_READ_MULTISHOT(package private) static byteIORING_OP_READV(package private) static byteIORING_OP_RECV(package private) static byteIORING_OP_RECVMSG(package private) static byteIORING_OP_REMOVE_BUFFERS(package private) static byteIORING_OP_RENAMEAT(package private) static byteIORING_OP_SEND(package private) static byteIORING_OP_SEND_ZC(package private) static byteIORING_OP_SENDMSG(package private) static byteIORING_OP_SENDMSG_ZC(package private) static byteIORING_OP_SETXATTR(package private) static byteIORING_OP_SHUTDOWN(package private) static byteIORING_OP_SOCKET(package private) static byteIORING_OP_SPLICE(package private) static byteIORING_OP_STATX(package private) static byteIORING_OP_SYMLINKAT(package private) static byteIORING_OP_SYNC_FILE_RANGE(package private) static byteIORING_OP_TEE(package private) static byteIORING_OP_TIMEOUT(package private) static byteIORING_OP_TIMEOUT_REMOVE(package private) static byteIORING_OP_UNLINKAT(package private) static byteIORING_OP_URING_CMD(package private) static byteIORING_OP_WAITID(package private) static byteIORING_OP_WRITE(package private) static byteIORING_OP_WRITE_FIXED(package private) static byteIORING_OP_WRITEV(package private) static shortIORING_POLL_ADD_MULTI(package private) static shortIORING_RECV_MULTISHOT(package private) static shortIORING_RECVSEND_BUNDLE(package private) static shortIORING_RECVSEND_POLL_FIRST(package private) static shortIORING_SEND_ZC_REPORT_USAGE(package private) static intIORING_SETUP_CLAMP(package private) static intIORING_SETUP_CQE_MIXED(package private) static intIORING_SETUP_CQE32(package private) static intIORING_SETUP_CQSIZE(package private) static intIORING_SETUP_DEFER_TASKRUN(package private) static intIORING_SETUP_NO_SQARRAY(package private) static intIORING_SETUP_R_DISABLED(package private) static intIORING_SETUP_SINGLE_ISSUER(package private) static intIORING_SETUP_SUBMIT_ALL(package private) static intIORING_SETUP_TASKRUN_FLAG(package private) static intIORING_SQ_CQ_OVERFLOW(package private) static intIORING_SQ_NEED_WAKEUP(package private) static intIORING_SQ_TASKRUN(package private) static intIOSQE_ASYNC(package private) static intIOSQE_BUFFER_SELECT(package private) static intIOSQE_CQE_SKIP_SUCCESS(package private) static intIOSQE_HARDLINK(package private) static intIOSQE_IO_DRAIN(package private) static intIOSQE_LINK(package private) static intIOU_PBUF_RING_INC(package private) static intIOURING_BUFFER_OFFSETOF_ADDR(package private) static intIOURING_BUFFER_OFFSETOF_BID(package private) static intIOURING_BUFFER_OFFSETOF_LEN(package private) static intIOVEC_OFFSETOF_IOV_BASE(package private) static intIOVEC_OFFSETOF_IOV_LEN(package private) static booleanIS_SUPPORTING_TCP_FASTOPEN_CLIENTtcp_fastopen client mode enabled state.(package private) static booleanIS_SUPPORTING_TCP_FASTOPEN_SERVERtcp_fastopen server mode enabled state.private static InternalLoggerlogger(package private) static intMAX_SKB_FRAGS(package private) static intMAX_SUN_PATH_LEN(package private) static intMSG_CONTROL_LEN_FOR_FD(package private) static intMSG_DONTWAIT(package private) static intMSG_FASTOPEN(package private) static intMSGHDR_OFFSETOF_MSG_CONTROL(package private) static intMSGHDR_OFFSETOF_MSG_CONTROLLEN(package private) static intMSGHDR_OFFSETOF_MSG_FLAGS(package private) static intMSGHDR_OFFSETOF_MSG_IOV(package private) static intMSGHDR_OFFSETOF_MSG_IOVLEN(package private) static intMSGHDR_OFFSETOF_MSG_NAME(package private) static intMSGHDR_OFFSETOF_MSG_NAMELEN(package private) static intPAGE_SIZE(package private) static intPOLLIN(package private) static intPOLLOUT(package private) static intPOLLRDHUPprivate static int[]REQUIRED_IORING_OPS(package private) static intSCM_RIGHTS(package private) static intSIZEOF_IOURING_BUF(package private) static intSIZEOF_IOVEC(package private) static intSIZEOF_MSGHDR(package private) static intSIZEOF_SIZE_T(package private) static intSIZEOF_SOCKADDR_IN(package private) static intSIZEOF_SOCKADDR_IN6(package private) static intSIZEOF_SOCKADDR_STORAGE(package private) static intSIZEOF_SOCKADDR_UN(package private) static intSOCK_CLOEXEC(package private) static intSOCK_NONBLOCK(package private) static intSOCKADDR_IN_OFFSETOF_SIN_ADDR(package private) static intSOCKADDR_IN_OFFSETOF_SIN_FAMILY(package private) static intSOCKADDR_IN_OFFSETOF_SIN_PORT(package private) static intSOCKADDR_IN6_OFFSETOF_SIN6_ADDR(package private) static intSOCKADDR_IN6_OFFSETOF_SIN6_FAMILY(package private) static intSOCKADDR_IN6_OFFSETOF_SIN6_FLOWINFO(package private) static intSOCKADDR_IN6_OFFSETOF_SIN6_PORT(package private) static intSOCKADDR_IN6_OFFSETOF_SIN6_SCOPE_ID(package private) static intSOCKADDR_UN_OFFSETOF_SUN_FAMILY(package private) static intSOCKADDR_UN_OFFSETOF_SUN_PATH(package private) static intSOL_SOCKET(package private) static intSOL_UDP(package private) static intSPLICE_F_MOVEprivate static intTCP_FASTOPEN_MODEprivate static intTFO_ENABLED_CLIENT_MASKprivate static intTFO_ENABLED_SERVER_MASK(package private) static intUDP_SEGMENT
-
Constructor Summary
Constructors Modifier Constructor Description privateNative()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static intblockingEventFd()(package private) static voidcheckAllIOSupported(Native.IoUringProbe probe)(package private) static voidcheckKernelVersion(java.lang.String kernelVersion)private static booleancheckKernelVersion(java.lang.String kernelVersion, int major, int minor)(package private) static longcmsghdrData(long hdrAddr)(package private) static intcreateFile(java.lang.String name)(package private) static RingBuffercreateRingBuffer(int ringSize, int setupFlags)(package private) static RingBuffercreateRingBuffer(int ringSize, int cqeSize, int setupFlags)(package private) static voideventFdWrite(int fd, long value)(package private) static intgetFd(DefaultFileRegion fileChannel)private static intgetFd0(java.lang.Object fileChannel)(package private) static intioUringBufRingSize(int entries)(package private) static intioUringEnter(int ringFd, int toSubmit, int minComplete, int flags)(package private) static voidioUringExit(long submissionQueueArrayAddress, int submissionQueueRingEntries, long submissionQueueRingAddress, int submissionQueueRingSize, long completionQueueRingAddress, int completionQueueRingSize, int ringFd, int enterRingFd)(package private) static Native.IoUringProbeioUringProbe(int ringfd)(package private) static booleanioUringProbe(Native.IoUringProbe probe, int[] ops)private static int[]ioUringProbe0(int ringFd)(package private) static longioUringRegisterBufRing(int ringFd, int entries, short bufferGroup, int flags)(package private) static intioUringRegisterEnableRings(int ringFd)(package private) static intioUringRegisterIoWqMaxWorkers(int ringFd, int maxBoundedValue, int maxUnboundedValue)(package private) static intioUringRegisterRingFds(int ringFds)private static long[]ioUringSetup(int entries, int cqeSize, int setupFlags)(package private) static booleanioUringSetupSupportsFlags(int setupFlags)(package private) static intioUringUnRegisterBufRing(int ringFd, long ioUringBufRingAddr, int entries, short bufferGroupId)(package private) static booleanisAcceptMultishotSupported(Native.IoUringProbe probe)(package private) static booleanisCqeFSockNonEmptySupported(Native.IoUringProbe probe)(package private) static booleanisPollAddMultiShotSupported(Native.IoUringProbe probe)(package private) static booleanisRecvMultishotSupported()(package private) static booleanisRegisterBufferRingSupported(int ringFd, int flags)(package private) static booleanisRegisterIoWqWorkerSupported(int ringFd)check current kernel version whether support io_uring_register_io_wq_worker Available since 5.15.(package private) static booleanisSendmsgZcSupported(Native.IoUringProbe probe)(package private) static booleanisSendZcSupported(Native.IoUringProbe probe)(package private) static booleanisSpliceSupported(Native.IoUringProbe probe)(package private) static booleanisUnixDomainSocketInqSupported()(package private) static java.lang.StringkernelVersion()private static voidloadNativeLibrary()(package private) static FileDescriptornewBlockingEventFd()(package private) static java.lang.StringopToStr(byte op)private static intregisterUnix()(package private) static intsetupFlags(boolean useSingleIssuer)
-
-
-
Field Detail
-
logger
private static final InternalLogger logger
-
SOCK_NONBLOCK
static final int SOCK_NONBLOCK
-
SOCK_CLOEXEC
static final int SOCK_CLOEXEC
-
AF_INET
static final short AF_INET
-
AF_INET6
static final short AF_INET6
-
AF_UNIX
static final short AF_UNIX
-
SIZEOF_SOCKADDR_STORAGE
static final int SIZEOF_SOCKADDR_STORAGE
-
SIZEOF_SOCKADDR_UN
static final int SIZEOF_SOCKADDR_UN
-
SOCKADDR_UN_OFFSETOF_SUN_FAMILY
static final int SOCKADDR_UN_OFFSETOF_SUN_FAMILY
-
SOCKADDR_UN_OFFSETOF_SUN_PATH
static final int SOCKADDR_UN_OFFSETOF_SUN_PATH
-
MAX_SUN_PATH_LEN
static final int MAX_SUN_PATH_LEN
-
SIZEOF_SOCKADDR_IN
static final int SIZEOF_SOCKADDR_IN
-
SIZEOF_SOCKADDR_IN6
static final int SIZEOF_SOCKADDR_IN6
-
SOCKADDR_IN_OFFSETOF_SIN_FAMILY
static final int SOCKADDR_IN_OFFSETOF_SIN_FAMILY
-
SOCKADDR_IN_OFFSETOF_SIN_PORT
static final int SOCKADDR_IN_OFFSETOF_SIN_PORT
-
SOCKADDR_IN_OFFSETOF_SIN_ADDR
static final int SOCKADDR_IN_OFFSETOF_SIN_ADDR
-
IN_ADDRESS_OFFSETOF_S_ADDR
static final int IN_ADDRESS_OFFSETOF_S_ADDR
-
SOCKADDR_IN6_OFFSETOF_SIN6_FAMILY
static final int SOCKADDR_IN6_OFFSETOF_SIN6_FAMILY
-
SOCKADDR_IN6_OFFSETOF_SIN6_PORT
static final int SOCKADDR_IN6_OFFSETOF_SIN6_PORT
-
SOCKADDR_IN6_OFFSETOF_SIN6_FLOWINFO
static final int SOCKADDR_IN6_OFFSETOF_SIN6_FLOWINFO
-
SOCKADDR_IN6_OFFSETOF_SIN6_ADDR
static final int SOCKADDR_IN6_OFFSETOF_SIN6_ADDR
-
SOCKADDR_IN6_OFFSETOF_SIN6_SCOPE_ID
static final int SOCKADDR_IN6_OFFSETOF_SIN6_SCOPE_ID
-
IN6_ADDRESS_OFFSETOF_S6_ADDR
static final int IN6_ADDRESS_OFFSETOF_S6_ADDR
-
SIZEOF_SIZE_T
static final int SIZEOF_SIZE_T
-
SIZEOF_IOVEC
static final int SIZEOF_IOVEC
-
CMSG_SPACE
static final int CMSG_SPACE
-
CMSG_SPACE_FOR_FD
static final int CMSG_SPACE_FOR_FD
-
CMSG_LEN
static final int CMSG_LEN
-
CMSG_LEN_FOR_FD
static final int CMSG_LEN_FOR_FD
-
MSG_CONTROL_LEN_FOR_FD
static final int MSG_CONTROL_LEN_FOR_FD
-
CMSG_OFFSETOF_CMSG_LEN
static final int CMSG_OFFSETOF_CMSG_LEN
-
CMSG_OFFSETOF_CMSG_LEVEL
static final int CMSG_OFFSETOF_CMSG_LEVEL
-
CMSG_OFFSETOF_CMSG_TYPE
static final int CMSG_OFFSETOF_CMSG_TYPE
-
IO_URING_BUFFER_RING_TAIL
static final int IO_URING_BUFFER_RING_TAIL
-
IOVEC_OFFSETOF_IOV_BASE
static final int IOVEC_OFFSETOF_IOV_BASE
-
IOVEC_OFFSETOF_IOV_LEN
static final int IOVEC_OFFSETOF_IOV_LEN
-
SIZEOF_MSGHDR
static final int SIZEOF_MSGHDR
-
MSGHDR_OFFSETOF_MSG_NAME
static final int MSGHDR_OFFSETOF_MSG_NAME
-
MSGHDR_OFFSETOF_MSG_NAMELEN
static final int MSGHDR_OFFSETOF_MSG_NAMELEN
-
MSGHDR_OFFSETOF_MSG_IOV
static final int MSGHDR_OFFSETOF_MSG_IOV
-
MSGHDR_OFFSETOF_MSG_IOVLEN
static final int MSGHDR_OFFSETOF_MSG_IOVLEN
-
MSGHDR_OFFSETOF_MSG_CONTROL
static final int MSGHDR_OFFSETOF_MSG_CONTROL
-
MSGHDR_OFFSETOF_MSG_CONTROLLEN
static final int MSGHDR_OFFSETOF_MSG_CONTROLLEN
-
MSGHDR_OFFSETOF_MSG_FLAGS
static final int MSGHDR_OFFSETOF_MSG_FLAGS
-
POLLIN
static final int POLLIN
-
POLLOUT
static final int POLLOUT
-
POLLRDHUP
static final int POLLRDHUP
-
ERRNO_ECANCELED_NEGATIVE
static final int ERRNO_ECANCELED_NEGATIVE
-
ERRNO_ETIME_NEGATIVE
static final int ERRNO_ETIME_NEGATIVE
-
ERRNO_NOBUFS_NEGATIVE
static final int ERRNO_NOBUFS_NEGATIVE
-
PAGE_SIZE
static final int PAGE_SIZE
-
MAX_SKB_FRAGS
static final int MAX_SKB_FRAGS
-
SIZEOF_IOURING_BUF
static final int SIZEOF_IOURING_BUF
-
IOURING_BUFFER_OFFSETOF_ADDR
static final int IOURING_BUFFER_OFFSETOF_ADDR
-
IOURING_BUFFER_OFFSETOF_LEN
static final int IOURING_BUFFER_OFFSETOF_LEN
-
IOURING_BUFFER_OFFSETOF_BID
static final int IOURING_BUFFER_OFFSETOF_BID
-
IORING_OP_NOP
static final byte IORING_OP_NOP
- See Also:
- Constant Field Values
-
IORING_OP_READV
static final byte IORING_OP_READV
- See Also:
- Constant Field Values
-
IORING_OP_WRITEV
static final byte IORING_OP_WRITEV
- See Also:
- Constant Field Values
-
IORING_OP_FSYNC
static final byte IORING_OP_FSYNC
- See Also:
- Constant Field Values
-
IORING_OP_READ_FIXED
static final byte IORING_OP_READ_FIXED
- See Also:
- Constant Field Values
-
IORING_OP_WRITE_FIXED
static final byte IORING_OP_WRITE_FIXED
- See Also:
- Constant Field Values
-
IORING_OP_POLL_ADD
static final byte IORING_OP_POLL_ADD
- See Also:
- Constant Field Values
-
IORING_OP_POLL_REMOVE
static final byte IORING_OP_POLL_REMOVE
- See Also:
- Constant Field Values
-
IORING_OP_SYNC_FILE_RANGE
static final byte IORING_OP_SYNC_FILE_RANGE
- See Also:
- Constant Field Values
-
IORING_OP_SENDMSG
static final byte IORING_OP_SENDMSG
- See Also:
- Constant Field Values
-
IORING_OP_RECVMSG
static final byte IORING_OP_RECVMSG
- See Also:
- Constant Field Values
-
IORING_OP_TIMEOUT
static final byte IORING_OP_TIMEOUT
- See Also:
- Constant Field Values
-
IORING_OP_TIMEOUT_REMOVE
static final byte IORING_OP_TIMEOUT_REMOVE
- See Also:
- Constant Field Values
-
IORING_OP_ACCEPT
static final byte IORING_OP_ACCEPT
- See Also:
- Constant Field Values
-
IORING_OP_ASYNC_CANCEL
static final byte IORING_OP_ASYNC_CANCEL
- See Also:
- Constant Field Values
-
IORING_OP_LINK_TIMEOUT
static final byte IORING_OP_LINK_TIMEOUT
- See Also:
- Constant Field Values
-
IORING_OP_CONNECT
static final byte IORING_OP_CONNECT
- See Also:
- Constant Field Values
-
IORING_OP_FALLOCATE
static final byte IORING_OP_FALLOCATE
- See Also:
- Constant Field Values
-
IORING_OP_OPENAT
static final byte IORING_OP_OPENAT
- See Also:
- Constant Field Values
-
IORING_OP_CLOSE
static final byte IORING_OP_CLOSE
- See Also:
- Constant Field Values
-
IORING_OP_FILES_UPDATE
static final byte IORING_OP_FILES_UPDATE
- See Also:
- Constant Field Values
-
IORING_OP_STATX
static final byte IORING_OP_STATX
- See Also:
- Constant Field Values
-
IORING_OP_READ
static final byte IORING_OP_READ
- See Also:
- Constant Field Values
-
IORING_OP_WRITE
static final byte IORING_OP_WRITE
- See Also:
- Constant Field Values
-
IORING_OP_FADVISE
static final byte IORING_OP_FADVISE
- See Also:
- Constant Field Values
-
IORING_OP_MADVISE
static final byte IORING_OP_MADVISE
- See Also:
- Constant Field Values
-
IORING_OP_SEND
static final byte IORING_OP_SEND
- See Also:
- Constant Field Values
-
IORING_OP_RECV
static final byte IORING_OP_RECV
- See Also:
- Constant Field Values
-
IORING_OP_OPENAT2
static final byte IORING_OP_OPENAT2
- See Also:
- Constant Field Values
-
IORING_OP_EPOLL_CTL
static final byte IORING_OP_EPOLL_CTL
- See Also:
- Constant Field Values
-
IORING_OP_SPLICE
static final byte IORING_OP_SPLICE
- See Also:
- Constant Field Values
-
IORING_OP_PROVIDE_BUFFERS
static final byte IORING_OP_PROVIDE_BUFFERS
- See Also:
- Constant Field Values
-
IORING_OP_REMOVE_BUFFERS
static final byte IORING_OP_REMOVE_BUFFERS
- See Also:
- Constant Field Values
-
IORING_OP_TEE
static final byte IORING_OP_TEE
- See Also:
- Constant Field Values
-
IORING_OP_SHUTDOWN
static final byte IORING_OP_SHUTDOWN
- See Also:
- Constant Field Values
-
IORING_OP_RENAMEAT
static final byte IORING_OP_RENAMEAT
- See Also:
- Constant Field Values
-
IORING_OP_UNLINKAT
static final byte IORING_OP_UNLINKAT
- See Also:
- Constant Field Values
-
IORING_OP_MKDIRAT
static final byte IORING_OP_MKDIRAT
- See Also:
- Constant Field Values
-
IORING_OP_SYMLINKAT
static final byte IORING_OP_SYMLINKAT
- See Also:
- Constant Field Values
-
IORING_OP_LINKAT
static final byte IORING_OP_LINKAT
- See Also:
- Constant Field Values
-
IORING_OP_MSG_RING
static final byte IORING_OP_MSG_RING
- See Also:
- Constant Field Values
-
IORING_OP_FSETXATTR
static final byte IORING_OP_FSETXATTR
- See Also:
- Constant Field Values
-
IORING_OP_SETXATTR
static final byte IORING_OP_SETXATTR
- See Also:
- Constant Field Values
-
IORING_OP_FGETXATTR
static final byte IORING_OP_FGETXATTR
- See Also:
- Constant Field Values
-
IORING_OP_GETXATTR
static final byte IORING_OP_GETXATTR
- See Also:
- Constant Field Values
-
IORING_OP_SOCKET
static final byte IORING_OP_SOCKET
- See Also:
- Constant Field Values
-
IORING_OP_URING_CMD
static final byte IORING_OP_URING_CMD
- See Also:
- Constant Field Values
-
IORING_OP_SEND_ZC
static final byte IORING_OP_SEND_ZC
- See Also:
- Constant Field Values
-
IORING_OP_SENDMSG_ZC
static final byte IORING_OP_SENDMSG_ZC
- See Also:
- Constant Field Values
-
IORING_OP_READ_MULTISHOT
static final byte IORING_OP_READ_MULTISHOT
- See Also:
- Constant Field Values
-
IORING_OP_WAITID
static final byte IORING_OP_WAITID
- See Also:
- Constant Field Values
-
IORING_OP_FUTEX_WAIT
static final byte IORING_OP_FUTEX_WAIT
- See Also:
- Constant Field Values
-
IORING_OP_FUTEX_WAKE
static final byte IORING_OP_FUTEX_WAKE
- See Also:
- Constant Field Values
-
IORING_OP_FUTEX_WAITV
static final byte IORING_OP_FUTEX_WAITV
- See Also:
- Constant Field Values
-
IORING_OP_FIXED_FD_INSTALL
static final byte IORING_OP_FIXED_FD_INSTALL
- See Also:
- Constant Field Values
-
IORING_OP_FTRUNCATE
static final byte IORING_OP_FTRUNCATE
- See Also:
- Constant Field Values
-
IORING_OP_BIND
static final byte IORING_OP_BIND
- See Also:
- Constant Field Values
-
IORING_CQE_F_BUFFER
static final int IORING_CQE_F_BUFFER
- See Also:
- Constant Field Values
-
IORING_CQE_F_MORE
static final int IORING_CQE_F_MORE
- See Also:
- Constant Field Values
-
IORING_CQE_F_SOCK_NONEMPTY
static final int IORING_CQE_F_SOCK_NONEMPTY
- See Also:
- Constant Field Values
-
IORING_CQE_F_NOTIF
static final int IORING_CQE_F_NOTIF
- See Also:
- Constant Field Values
-
IORING_CQE_F_BUF_MORE
static final int IORING_CQE_F_BUF_MORE
- See Also:
- Constant Field Values
-
IORING_CQE_F_SKIP
static final int IORING_CQE_F_SKIP
- See Also:
- Constant Field Values
-
IORING_CQE_F_32
static final int IORING_CQE_F_32
- See Also:
- Constant Field Values
-
IORING_SETUP_CQSIZE
static final int IORING_SETUP_CQSIZE
- See Also:
- Constant Field Values
-
IORING_SETUP_CLAMP
static final int IORING_SETUP_CLAMP
- See Also:
- Constant Field Values
-
IORING_SETUP_R_DISABLED
static final int IORING_SETUP_R_DISABLED
- See Also:
- Constant Field Values
-
IORING_SETUP_SUBMIT_ALL
static final int IORING_SETUP_SUBMIT_ALL
- See Also:
- Constant Field Values
-
IORING_SETUP_CQE32
static final int IORING_SETUP_CQE32
- See Also:
- Constant Field Values
-
IORING_SETUP_TASKRUN_FLAG
static final int IORING_SETUP_TASKRUN_FLAG
- See Also:
- Constant Field Values
-
IORING_SETUP_SINGLE_ISSUER
static final int IORING_SETUP_SINGLE_ISSUER
- See Also:
- Constant Field Values
-
IORING_SETUP_DEFER_TASKRUN
static final int IORING_SETUP_DEFER_TASKRUN
- See Also:
- Constant Field Values
-
IORING_SETUP_NO_SQARRAY
static final int IORING_SETUP_NO_SQARRAY
- See Also:
- Constant Field Values
-
IORING_SETUP_CQE_MIXED
static final int IORING_SETUP_CQE_MIXED
- See Also:
- Constant Field Values
-
IORING_CQE_BUFFER_SHIFT
static final int IORING_CQE_BUFFER_SHIFT
- See Also:
- Constant Field Values
-
IORING_POLL_ADD_MULTI
static final short IORING_POLL_ADD_MULTI
- See Also:
- Constant Field Values
-
IORING_RECVSEND_POLL_FIRST
static final short IORING_RECVSEND_POLL_FIRST
- See Also:
- Constant Field Values
-
IORING_RECVSEND_BUNDLE
static final short IORING_RECVSEND_BUNDLE
- See Also:
- Constant Field Values
-
IORING_RECV_MULTISHOT
static final short IORING_RECV_MULTISHOT
- See Also:
- Constant Field Values
-
IORING_SEND_ZC_REPORT_USAGE
static final short IORING_SEND_ZC_REPORT_USAGE
- See Also:
- Constant Field Values
-
IORING_NOTIF_USAGE_ZC_COPIED
static final int IORING_NOTIF_USAGE_ZC_COPIED
- See Also:
- Constant Field Values
-
IORING_ACCEPT_MULTISHOT
static final short IORING_ACCEPT_MULTISHOT
- See Also:
- Constant Field Values
-
IORING_ACCEPT_DONTWAIT
static final short IORING_ACCEPT_DONTWAIT
- See Also:
- Constant Field Values
-
IORING_ACCEPT_POLL_FIRST
static final short IORING_ACCEPT_POLL_FIRST
- See Also:
- Constant Field Values
-
IORING_NOP_CQE32
static final short IORING_NOP_CQE32
- See Also:
- Constant Field Values
-
IORING_FEAT_NODROP
static final int IORING_FEAT_NODROP
- See Also:
- Constant Field Values
-
IORING_FEAT_SUBMIT_STABLE
static final int IORING_FEAT_SUBMIT_STABLE
- See Also:
- Constant Field Values
-
IORING_FEAT_RECVSEND_BUNDLE
static final int IORING_FEAT_RECVSEND_BUNDLE
- See Also:
- Constant Field Values
-
IORING_FEAT_NO_IOWAIT
static final int IORING_FEAT_NO_IOWAIT
- See Also:
- Constant Field Values
-
IORING_SQ_NEED_WAKEUP
static final int IORING_SQ_NEED_WAKEUP
- See Also:
- Constant Field Values
-
IORING_SQ_CQ_OVERFLOW
static final int IORING_SQ_CQ_OVERFLOW
- See Also:
- Constant Field Values
-
IORING_SQ_TASKRUN
static final int IORING_SQ_TASKRUN
- See Also:
- Constant Field Values
-
SPLICE_F_MOVE
static final int SPLICE_F_MOVE
- See Also:
- Constant Field Values
-
IOU_PBUF_RING_INC
static final int IOU_PBUF_RING_INC
- See Also:
- Constant Field Values
-
IO_URING_OP_SUPPORTED
static final int IO_URING_OP_SUPPORTED
- See Also:
- Constant Field Values
-
CQE_SIZE
static final int CQE_SIZE
- See Also:
- Constant Field Values
-
CQE32_SIZE
static final int CQE32_SIZE
- See Also:
- Constant Field Values
-
IORING_ENTER_GETEVENTS
static final int IORING_ENTER_GETEVENTS
-
IORING_ENTER_REGISTERED_RING
static final int IORING_ENTER_REGISTERED_RING
- See Also:
- Constant Field Values
-
IORING_ENTER_NO_IOWAIT
static final int IORING_ENTER_NO_IOWAIT
- See Also:
- Constant Field Values
-
IOSQE_ASYNC
static final int IOSQE_ASYNC
-
IOSQE_LINK
static final int IOSQE_LINK
-
IOSQE_HARDLINK
static final int IOSQE_HARDLINK
-
IOSQE_IO_DRAIN
static final int IOSQE_IO_DRAIN
-
IOSQE_BUFFER_SELECT
static final int IOSQE_BUFFER_SELECT
-
IOSQE_CQE_SKIP_SUCCESS
static final int IOSQE_CQE_SKIP_SUCCESS
- See Also:
- Constant Field Values
-
MSG_DONTWAIT
static final int MSG_DONTWAIT
-
MSG_FASTOPEN
static final int MSG_FASTOPEN
-
SOL_UDP
static final int SOL_UDP
-
SOL_SOCKET
static final int SOL_SOCKET
-
UDP_SEGMENT
static final int UDP_SEGMENT
-
SCM_RIGHTS
static final int SCM_RIGHTS
-
TFO_ENABLED_CLIENT_MASK
private static final int TFO_ENABLED_CLIENT_MASK
- See Also:
- Constant Field Values
-
TFO_ENABLED_SERVER_MASK
private static final int TFO_ENABLED_SERVER_MASK
- See Also:
- Constant Field Values
-
TCP_FASTOPEN_MODE
private static final int TCP_FASTOPEN_MODE
-
IS_SUPPORTING_TCP_FASTOPEN_CLIENT
static final boolean IS_SUPPORTING_TCP_FASTOPEN_CLIENT
tcp_fastopen client mode enabled state.
-
IS_SUPPORTING_TCP_FASTOPEN_SERVER
static final boolean IS_SUPPORTING_TCP_FASTOPEN_SERVER
tcp_fastopen server mode enabled state.
-
REQUIRED_IORING_OPS
private static final int[] REQUIRED_IORING_OPS
-
-
Method Detail
-
opToStr
static java.lang.String opToStr(byte op)
-
setupFlags
static int setupFlags(boolean useSingleIssuer)
-
createRingBuffer
static RingBuffer createRingBuffer(int ringSize, int setupFlags)
-
createRingBuffer
static RingBuffer createRingBuffer(int ringSize, int cqeSize, int setupFlags)
-
checkAllIOSupported
static void checkAllIOSupported(Native.IoUringProbe probe)
-
isRecvMultishotSupported
static boolean isRecvMultishotSupported()
-
isAcceptMultishotSupported
static boolean isAcceptMultishotSupported(Native.IoUringProbe probe)
-
isCqeFSockNonEmptySupported
static boolean isCqeFSockNonEmptySupported(Native.IoUringProbe probe)
-
isSpliceSupported
static boolean isSpliceSupported(Native.IoUringProbe probe)
-
isPollAddMultiShotSupported
static boolean isPollAddMultiShotSupported(Native.IoUringProbe probe)
-
isSendZcSupported
static boolean isSendZcSupported(Native.IoUringProbe probe)
-
isSendmsgZcSupported
static boolean isSendmsgZcSupported(Native.IoUringProbe probe)
-
isRegisterIoWqWorkerSupported
static boolean isRegisterIoWqWorkerSupported(int ringFd)
check current kernel version whether support io_uring_register_io_wq_worker Available since 5.15.- Returns:
- true if support io_uring_register_io_wq_worker
-
isRegisterBufferRingSupported
static boolean isRegisterBufferRingSupported(int ringFd, int flags)
-
checkKernelVersion
static void checkKernelVersion(java.lang.String kernelVersion)
-
checkKernelVersion
private static boolean checkKernelVersion(java.lang.String kernelVersion, int major, int minor)
-
ioUringProbe
static boolean ioUringProbe(Native.IoUringProbe probe, int[] ops)
-
ioUringSetupSupportsFlags
static boolean ioUringSetupSupportsFlags(int setupFlags)
-
isUnixDomainSocketInqSupported
static boolean isUnixDomainSocketInqSupported()
-
ioUringSetup
private static long[] ioUringSetup(int entries, int cqeSize, int setupFlags)
-
ioUringProbe
static Native.IoUringProbe ioUringProbe(int ringfd)
-
ioUringProbe0
private static int[] ioUringProbe0(int ringFd)
-
ioUringRegisterIoWqMaxWorkers
static int ioUringRegisterIoWqMaxWorkers(int ringFd, int maxBoundedValue, int maxUnboundedValue)
-
ioUringRegisterEnableRings
static int ioUringRegisterEnableRings(int ringFd)
-
ioUringRegisterRingFds
static int ioUringRegisterRingFds(int ringFds)
-
ioUringRegisterBufRing
static long ioUringRegisterBufRing(int ringFd, int entries, short bufferGroup, int flags)
-
ioUringUnRegisterBufRing
static int ioUringUnRegisterBufRing(int ringFd, long ioUringBufRingAddr, int entries, short bufferGroupId)
-
ioUringBufRingSize
static int ioUringBufRingSize(int entries)
-
ioUringEnter
static int ioUringEnter(int ringFd, int toSubmit, int minComplete, int flags)
-
eventFdWrite
static void eventFdWrite(int fd, long value)
-
getFd
static int getFd(DefaultFileRegion fileChannel)
-
getFd0
private static int getFd0(java.lang.Object fileChannel)
-
newBlockingEventFd
static FileDescriptor newBlockingEventFd()
-
ioUringExit
static void ioUringExit(long submissionQueueArrayAddress, int submissionQueueRingEntries, long submissionQueueRingAddress, int submissionQueueRingSize, long completionQueueRingAddress, int completionQueueRingSize, int ringFd, int enterRingFd)
-
blockingEventFd
private static int blockingEventFd()
-
createFile
static int createFile(java.lang.String name)
-
registerUnix
private static int registerUnix()
-
cmsghdrData
static long cmsghdrData(long hdrAddr)
-
kernelVersion
static java.lang.String kernelVersion()
-
loadNativeLibrary
private static void loadNativeLibrary()
-
-