1*e5a9df51SDavid Vernet /* SPDX-License-Identifier: GPL-2.0 */ 2*e5a9df51SDavid Vernet /* Copyright (c) 2022 Meta Platforms, Inc. and affiliates. */ 3*e5a9df51SDavid Vernet 4*e5a9df51SDavid Vernet #ifndef _TEST_USER_RINGBUF_H 5*e5a9df51SDavid Vernet #define _TEST_USER_RINGBUF_H 6*e5a9df51SDavid Vernet 7*e5a9df51SDavid Vernet #define TEST_OP_64 4 8*e5a9df51SDavid Vernet #define TEST_OP_32 2 9*e5a9df51SDavid Vernet 10*e5a9df51SDavid Vernet enum test_msg_op { 11*e5a9df51SDavid Vernet TEST_MSG_OP_INC64, 12*e5a9df51SDavid Vernet TEST_MSG_OP_INC32, 13*e5a9df51SDavid Vernet TEST_MSG_OP_MUL64, 14*e5a9df51SDavid Vernet TEST_MSG_OP_MUL32, 15*e5a9df51SDavid Vernet 16*e5a9df51SDavid Vernet // Must come last. 17*e5a9df51SDavid Vernet TEST_MSG_OP_NUM_OPS, 18*e5a9df51SDavid Vernet }; 19*e5a9df51SDavid Vernet 20*e5a9df51SDavid Vernet struct test_msg { 21*e5a9df51SDavid Vernet enum test_msg_op msg_op; 22*e5a9df51SDavid Vernet union { 23*e5a9df51SDavid Vernet __s64 operand_64; 24*e5a9df51SDavid Vernet __s32 operand_32; 25*e5a9df51SDavid Vernet }; 26*e5a9df51SDavid Vernet }; 27*e5a9df51SDavid Vernet 28*e5a9df51SDavid Vernet struct sample { 29*e5a9df51SDavid Vernet int pid; 30*e5a9df51SDavid Vernet int seq; 31*e5a9df51SDavid Vernet long value; 32*e5a9df51SDavid Vernet char comm[16]; 33*e5a9df51SDavid Vernet }; 34*e5a9df51SDavid Vernet 35*e5a9df51SDavid Vernet #endif /* _TEST_USER_RINGBUF_H */ 36