aboutsummaryrefslogtreecommitdiff
path: root/include/kpl/io.h
blob: a1b4b3f0f390e192d6310b098cb34857223f7987 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

#pragma once

// Io through io_uring

#include "kpl/macro.h"

typedef enum : int8_t {
    KPL_CONFIG_IO_QUEUE_POW2_MIN        = 4,
    KPL_CONFIG_IO_QUEUE_POW2_DEFAULT    = 10,
    KPL_CONFIG_IO_QUEUE_POW2_MAX        = 16
} kpl_io_queue_pow_options;

typedef struct {
    int8_t queue_pow2;
} kpl_config_io;

typedef struct {
    kpl_config_io *config_io;
    // TODO
} kpl_io;

bool kpl_io_init(kpl_io *io);

void kpl_io_free(kpl_io *io);