bytecodealliance / bytecodealliance/rustix

add io_uring_sqe64,io_uring_sqe128,io_uring_cqe16,io_uring_cqe32

Abierto
#997 1 comentario 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Rust
Estrellas
2.1k
Forks
294
Merge medio
6 d 22 h
PR fusionados (30 d)
4

Descripción

```
#[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]>;
```

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza localizando las definiciones de tipos existentes de io_uring en los bindings de rustix y compara su layout con las formas SQE y CQE solicitadas. El trabajo estará terminado cuando IoUringSqe64, IoUringSqe128, IoUringCqe16 y IoUringCqe32 tengan las representaciones y los campos especificados, y las comprobaciones existentes relevantes sigan pasando.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
linux, rust
Área
operating-systems
Tipo de issue
Nueva funcionalidad
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
42/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.