函数源码

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source File:block\kyber-iosched.c Create Date:2022-07-27 19:28:21
首页 Copyright©Brick

858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
#define KYBER_LAT_SHOW_STORE(domain, name)              \
static ssize_t kyber_##name##_lat_show(struct elevator_queue *e,    \
                       char *page)          \
{                                   \
    struct kyber_queue_data *kqd = e->elevator_data;        \
                                    \
    return sprintf(page, "%llu\n", kqd->latency_targets[domain]);   \
}                                   \
                                    \
static ssize_t kyber_##name##_lat_store(struct elevator_queue *e,   \
                    const char *page, size_t count) \
{                                   \
    struct kyber_queue_data *kqd = e->elevator_data;        \
    unsigned long long nsec;                    \
    int ret;                            \
                                    \
    ret = kstrtoull(page, 10, &nsec);               \
    if (ret)                            \
        return ret;                     \
                                    \
    kqd->latency_targets[domain] = nsec;                \
                                    \
    return count;                           \
}
KYBER_LAT_SHOW_STORE(KYBER_READ, read);
KYBER_LAT_SHOW_STORE(KYBER_WRITE, write);