Definition at line 27 of file RIoUring.hxx.
|
| struct | RReadEvent |
| | Basic read event composed of IO data and a target file descriptor. More...
|
| |
|
| static bool | IsAvailable (std::string *errMsg=nullptr) |
| | Probes whether io_uring is actually usable at runtime.
|
| |
#include <ROOT/RIoUring.hxx>
◆ RIoUring() [1/3]
| ROOT::Internal::RIoUring::RIoUring |
( |
| ) |
|
|
inline |
◆ RIoUring() [2/3]
| ROOT::Internal::RIoUring::RIoUring |
( |
std::uint32_t | entriesHint | ) |
|
|
inlineexplicit |
◆ RIoUring() [3/3]
| ROOT::Internal::RIoUring::RIoUring |
( |
const RIoUring & | | ) |
|
|
delete |
◆ ~RIoUring()
| ROOT::Internal::RIoUring::~RIoUring |
( |
| ) |
|
|
inline |
◆ GetQueueDepth()
| std::uint32_t ROOT::Internal::RIoUring::GetQueueDepth |
( |
| ) |
|
|
inline |
◆ GetRawRing()
| struct io_uring * ROOT::Internal::RIoUring::GetRawRing |
( |
| ) |
|
|
inline |
Access the raw io_uring instance.
Definition at line 81 of file RIoUring.hxx.
◆ IsAvailable()
| static bool ROOT::Internal::RIoUring::IsAvailable |
( |
std::string * | errMsg = nullptr | ) |
|
|
inlinestatic |
Probes whether io_uring is actually usable at runtime.
The presence of liburing at build time does not imply kernel support: the running kernel may have been compiled without CONFIG_IO_URING (e.g. older EL9 kernels) or the io_uring_setup system call may be blocked by a seccomp profile. On failure, if errMsg is set, it contains a diagnostic string. The kernel is probed only once per process; afterwards the cached result is returned.
Definition at line 90 of file RIoUring.hxx.
◆ operator=()
◆ SubmitReadsAndWait()
| void ROOT::Internal::RIoUring::SubmitReadsAndWait |
( |
RReadEvent * | readEvents, |
|
|
unsigned int | nReads ) |
|
inline |
Submit a number of read events and wait for completion.
Events are submitted in batches if the number of events is larger than the submission queue depth.
Definition at line 128 of file RIoUring.hxx.
◆ fDepth
| std::uint32_t ROOT::Internal::RIoUring::fDepth = 0 |
|
private |
◆ fRing
| struct io_uring ROOT::Internal::RIoUring::fRing |
|
private |
io/io/inc/ROOT/RIoUring.hxx