1 // SPDX-License-Identifier: LGPL-2.0
3 /* Copyright (c) 2021, UT-Battelle, LLC
5 * Author: James Simmons <jsimmons@infradead.org>
8 #ifndef __UAPI_LNET_NL_H__
9 #define __UAPI_LNET_NL_H__
11 #include <linux/types.h>
13 enum lnet_nl_key_format {
14 /* Is it FLOW or BLOCK */
16 /* Is it SEQUENCE or MAPPING */
22 * enum lnet_nl_scalar_attrs - scalar LNet netlink attributes used
23 * to compose messages for sending or
26 * @LN_SCALAR_ATTR_UNSPEC: unspecified attribute to catch errors
27 * @LN_SCALAR_ATTR_PAD: padding for 64-bit attributes, ignore
29 * @LN_SCALAR_ATTR_LIST: List of scalar attributes (NLA_NESTED)
30 * @LN_SCALAR_ATTR_LIST_SIZE: Number of items in scalar list (NLA_U16)
31 * @LN_SCALAR_ATTR_INDEX: True Netlink attr value (NLA_U16)
32 * @LN_SCALAR_ATTR_NLA_TYPE: Data format for value part of the pair
34 * @LN_SCALAR_ATTR_VALUE: String value of key part of the pair.
36 * @LN_SCALAR_ATTR_INT_VALUE: Numeric value of key part of the pair.
38 * @LN_SCALAR_ATTR_KEY_FORMAT: LNKF_* format of the key value pair.
40 enum lnet_nl_scalar_attrs {
41 LN_SCALAR_ATTR_UNSPEC = 0,
42 LN_SCALAR_ATTR_PAD = LN_SCALAR_ATTR_UNSPEC,
45 LN_SCALAR_ATTR_LIST_SIZE,
47 LN_SCALAR_ATTR_NLA_TYPE,
49 LN_SCALAR_ATTR_INT_VALUE,
50 LN_SCALAR_ATTR_KEY_FORMAT,
52 __LN_SCALAR_ATTR_MAX_PLUS_ONE,
55 #define LN_SCALAR_MAX (__LN_SCALAR_ATTR_MAX_PLUS_ONE - 1)
65 struct ln_key_props lkl_list[];
68 #endif /* __UAPI_LNET_NL_H__ */