root/tools/testing/selftests/bpf/progs/test_user_ringbuf.h
/* SPDX-License-Identifier: GPL-2.0 */
/* Copyright (c) 2022 Meta Platforms, Inc. and affiliates. */

#ifndef _TEST_USER_RINGBUF_H
#define _TEST_USER_RINGBUF_H

#define TEST_OP_64 4
#define TEST_OP_32 2

enum test_msg_op {
        TEST_MSG_OP_INC64,
        TEST_MSG_OP_INC32,
        TEST_MSG_OP_MUL64,
        TEST_MSG_OP_MUL32,

        // Must come last.
        TEST_MSG_OP_NUM_OPS,
};

struct test_msg {
        enum test_msg_op msg_op;
        union {
                __s64 operand_64;
                __s32 operand_32;
        };
};

struct sample {
        int pid;
        int seq;
        long value;
        char comm[16];
};

#endif /* _TEST_USER_RINGBUF_H */