bytecodealliance / bytecodealliance/rustix

add io_uring_sqe64,io_uring_sqe128,io_uring_cqe16,io_uring_cqe32

Offen
#997 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Rust
Sterne
2.1k
Forks
294
Ø Merge
6 T. 22 Std.
Gemergte PRs (30 T.)
4

Beschreibung

```
#[repr(C)]
#[derive(Clone, Copy)]
pub struct IoUringSqe {
pub opcode: rustix::io_uring::IoringOp,
pub flags: rustix::io_uring::IoringSqeFlags,
pub ioprio: rustix::io_uring::ioprio_union,
pub fd: rustix::fd::RawFd,
pub off_or_addr2: rustix::io_uring::off_or_addr2_union,
pub addr_or_splice_off_in: rustix::io_uring::addr_or_splice_off_in_union,
pub len: rustix::io_uring::len_union,
pub op_flags: rustix::io_uring::op_flags_union,
pub user_data: rustix::io_uring::io_uring_user_data,
pub buf: rustix::io_uring::buf_union,
pub personality: u16,
pub splice_fd_in_or_file_index: rustix::io_uring::splice_fd_in_or_file_index_union,
pub addr3_or_cmd: addr3_or_cmd_union,
}

#[repr(C)]
#[derive(Copy, Clone)]
pub union addr3_or_cmd_union {
pub addr3: rustix::io_uring::addr3_struct,
pub cmd: T,
}

pub type IoUringSqe64 = IoUringSqe<()>;
pub type IoUringSqe128 = IoUringSqe<[u8; 80]>;

#[repr(C)]
#[derive(Clone, Copy)]
pub struct IoUringCqe {
pub user_data: rustix::io_uring::io_uring_user_data,
pub res: i32,
pub flags: rustix::io_uring::IoringCqeFlags,
pub big_cqe: T,
}

pub type IoUringCqe16 = IoUringCqe<()>;
pub type IoUringCqe32 = IoUringCqe<[u64; 2]>;
```

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, die vorhandenen io_uring-Typdefinitionen in den rustix-Bindings zu finden und ihr Layout mit den angeforderten SQE- und CQE-Formen zu vergleichen. Die Arbeit ist abgeschlossen, wenn IoUringSqe64, IoUringSqe128, IoUringCqe16 und IoUringCqe32 die angegebenen Repräsentationen und Felder haben und die relevanten bestehenden Prüfungen weiterhin bestehen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
linux, rust
Bereich
operating-systems
Issue-Typ
Feature
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
42/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.