/linux/Documentation/userspace-api/netlink/ |
H A D | genetlink-legacy.rst | 1 .. SPDX-License-Identifier: BSD-3-Clause 9 the ``genetlink-legacy`` protocol level. 15 ------- 29 -------------------- 31 New Netlink families should use ``multi-attr`` to define arrays. 33 define array types reusing attribute type to carry information. 35 For reference the ``multi-attr`` array may look like this:: 37 [ARRAY-ATTR] 41 [SOME-OTHER-ATTR] 42 [ARRAY-ATTR] [all …]
|
H A D | specs.rst | 1 .. SPDX-License-Identifier: BSD-3-Clause 17 - the C uAPI header 18 …- documentation of the protocol as a ReST file - see :ref:`Documentation/networking/netlink_spec/i… 19 - policy tables for input attribute validation 20 - operation tables 25 See :doc:`intro-specs` for a practical starting guide. 28 ``((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)`` 40 - ``genetlink`` - most streamlined, should be used by all new families 41 - ``genetlink-c`` - superset of ``genetlink`` with extra attributes allowing 45 - ``genetlink-legacy`` - Generic Netlink catch all schema supporting quirks of [all …]
|
/linux/net/ethtool/ |
H A D | bitset.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 /* Some bitmaps are internally represented as an array of unsigned long, some 9 * as an array of u32 (some even as single u32 for now). To avoid the need of 17 return ~(u32)0 >> (32 - n % 32); in ethnl_lower_bits() 26 * ethnl_bitmap32_clear() - Clear u32 based bitmap 78 * ethnl_bitmap32_not_zero() - Check if any bit is set in an interval 83 * Return: true if there is non-zero bit with index @start <= i < @end, 108 (end_word - start_word) * sizeof(u32))) in ethnl_bitmap32_not_zero() 116 * ethnl_bitmap32_update() - Modify u32 based bitmap according to value/mask 146 nbits -= 32; in ethnl_bitmap32_update() [all …]
|
H A D | stats.c | 1 // SPDX-License-Identifier: GPL-2.0-only 35 [ETHTOOL_STATS_ETH_PHY] = "eth-phy", 36 [ETHTOOL_STATS_ETH_MAC] = "eth-mac", 37 [ETHTOOL_STATS_ETH_CTRL] = "eth-ctrl", 110 err = ethnl_update_bitset(req_info->stat_mask, __ETHTOOL_STATS_CNT, in stats_parse_request() 118 return -EINVAL; in stats_parse_request() 124 req_info->src = src; in stats_parse_request() 135 enum ethtool_mac_stats_src src = req_info->src; in stats_prepare_data() 136 struct net_device *dev = reply_base->dev; in stats_prepare_data() 137 struct nlattr **tb = info->attrs; in stats_prepare_data() [all …]
|
H A D | netlink.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 14 const struct nlattr *nest, struct net *net, 28 * ethnl_strz_size() - calculate attribute length for fixed size string 39 * ethnl_put_strz() - put string attribute with fixed size string 56 return -EMSGSIZE; in ethnl_put_strz() 64 * ethnl_update_u32() - update u32 value from NLA_U32 attribute 90 * ethnl_update_u8() - update u8 value from NLA_U8 attribute 116 * ethnl_update_bool32() - update u32 used as bool from NLA_U8 attribute 142 * ethnl_update_bool() - updateb bool used as bool from NLA_U8 attribute 168 * ethnl_update_binary() - update binary data from NLA_BINARY attribute [all …]
|
/linux/Documentation/netlink/specs/ |
H A D | nlctrl.yaml | 1 # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 4 protocol: genetlink-legacy 5 uapi-header: linux/genetlink.h 8 genetlink meta-family that exposes information about all genetlink 12 - 13 name: op-flags 15 enum-name: 17 - admin-perm 18 - cmd-cap-do 19 - cmd-cap-dump [all …]
|
H A D | team.yaml | 1 # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 5 protocol: genetlink-legacy 10 c-family-name: team-genl-name 11 c-version-name: team-genl-version 12 kernel-policy: global 13 uapi-header: linux/if_team.h 16 - 17 name: string-max-len 20 - 21 name: genl-change-event-mc-grp-name [all …]
|
H A D | netdev.yaml | 1 # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 9 - 11 name: xdp-act 12 render-max: true 14 - 19 - 23 - 24 name: ndo-xmit 27 - 28 name: xsk-zerocopy [all …]
|
/linux/Documentation/netlink/ |
H A D | genetlink.yaml | 1 # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 3 --- 4 $id: http://kernel.org/schemas/netlink/genetlink-legacy.yaml# 5 $schema: https://json-schema.org/draft-07/schema 12 len-or-define: 14 pattern: ^[0-9A-Za-z_-]+( - 1)?$ 16 len-or-limit: 17 # literal int or limit based on fixed-width type e.g. u8-min, u16-max, etc. 19 pattern: ^[su](8|16|32|64)-(min|max)$ 26 required: [ name, doc, attribute-sets, operations ] [all …]
|
/linux/drivers/net/ethernet/intel/fm10k/ |
H A D | fm10k_tlv.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright(c) 2013 - 2019 Intel Corporation. */ 7 * fm10k_tlv_msg_init - Initialize message block for TLV data storage 25 * fm10k_tlv_attr_put_null_string - Place null terminated string on message 76 * fm10k_tlv_attr_get_null_string - Get null terminated string from attribute 81 * it in the array pointed by string. It will return success if provided 95 while (len--) in fm10k_tlv_attr_get_null_string() 102 * fm10k_tlv_attr_put_mac_vlan - Store MAC/VLAN attribute in message 140 * fm10k_tlv_attr_get_mac_vlan - Get MAC/VLAN stored in attribute 146 * place it in the array pointed by mac_addr. It will return success [all …]
|
/linux/drivers/net/ethernet/rocker/ |
H A D | rocker_hw.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * drivers/net/ethernet/rocker/rocker_hw.h - Rocker switch device driver 4 * Copyright (c) 2014-2016 Jiri Pirko <jiri@mellanox.com> 32 /* MSI-X vectors */ 45 (ROCKER_MSIX_VEC_RX((portcnt - 1)) + 1) 56 #define ROCKER_TEST_REG64 0x0018 /* 8-byte */ 58 #define ROCKER_TEST_DMA_ADDR 0x0028 /* 8-byte */ 68 #define ROCKER_DMA_DESC_ADDR(x) (0x1000 + (x) * 32) /* 8-byte */ 121 ROCKER_TLV_CMD_INFO, /* nest */ 124 ROCKER_TLV_CMD_MAX = __ROCKER_TLV_CMD_MAX - 1, [all …]
|
/linux/arch/powerpc/include/asm/ |
H A D | imc-pmu.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 6 * IMC Nest Performance Monitor counter support. 22 #define IMC_DTB_COMPAT "ibm,opal-in-memory-counters" 23 #define IMC_DTB_UNIT_COMPAT "ibm,imc-counters" 28 * perf/imc-pmu.c has the LDBAR layout information. 35 * For debugfs interface for imc-mode and imc-command 50 * Place holder for nest pmu events and values. 87 /* Event attribute array index */ 146 * In-Memory Collection Counters type. 164 /* For trace-imc the domain is still thread but it operates in trace-mode */
|
/linux/Documentation/arch/x86/ |
H A D | entry_64.rst | 1 .. SPDX-License-Identifier: GPL-2.0 16 for 64-bit, arch/x86/entry/entry_32.S for 32-bit and finally 17 arch/x86/entry/entry_64_compat.S which implements the 32-bit compatibility 18 syscall entry points and thus provides for 32-bit processes the 19 ability to execute syscalls when running on 64-bit kernels. 25 - system_call: syscall instruction from 64-bit code. 27 - entry_INT80_compat: int 0x80 from 32-bit or 64-bit code; compat syscall 30 - entry_INT80_compat, ia32_sysenter: syscall and sysenter from 32-bit 33 - interrupt: An array of entries. Every IDT vector that doesn't 35 value in interrupts. These point to a whole array of [all …]
|
/linux/arch/powerpc/perf/ |
H A D | imc-pmu.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * In-Memory Collection (IMC) Performance Monitor counter support. 13 #include <asm/imc-pmu.h> 19 /* Nest IMC data structures and variables */ 22 * Used to avoid races in counting the nest-pmu units during hotplug 51 * core and trace-imc 61 return container_of(event->pmu, struct imc_pmu, pmu); in imc_event_to_pmu() 64 PMU_FORMAT_ATTR(event, "config:0-61"); 65 PMU_FORMAT_ATTR(offset, "config:0-31"); 67 PMU_FORMAT_ATTR(mode, "config:33-40"); [all …]
|
/linux/lib/ |
H A D | rhashtable.c | 1 // SPDX-License-Identifier: GPL-2.0-only 6 * Copyright (c) 2014-2015 Thomas Graf <tgraf@suug.ch> 7 * Copyright (c) 2008-2014 Patrick McHardy <kaber@trash.net> 41 return rht_head_hashfn(ht, tbl, he, ht->p); in head_hashfn() 49 return (debug_locks) ? lockdep_is_held(&ht->mutex) : 1; in lockdep_rht_mutex_is_held() 57 if (unlikely(tbl->nest)) in lockdep_rht_bucket_is_held() [all...] |
/linux/drivers/crypto/nx/ |
H A D | nx_csbcpb.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 104 #define NX_CPB_FDM(c) ((c)->cpb.hdr.fdm) 105 #define NX_CPB_KS_DS(c) ((c)->cpb.hdr.ks_ds) 137 /* co-processor status block */ 147 /* Nest accelerator workbook section 4.4 */ 199 /* indices into the array of algorithm properties */
|
/linux/net/netlink/ |
H A D | genetlink.c | 1 // SPDX-License-Identifier: GPL-2.0 59 if (!family->parallel_ops) in genl_op_lock() 65 if (!family->parallel_ops) in genl_op_unlock() 77 * Bit 1 is marked as already used since the drop-monitor code 82 * and the code no longer marks pre-reserved IDs as used. 95 /* We need the last attribute with non-zero ID therefore a 2-entry array */ 109 BUILD_BUG_ON(ARRAY_SIZE(genl_policy_reject_all) - 1 != 1); in genl_op_fill_in_reject_policy() 111 if (op->policy || op->cmd < family->resv_start_op) in genl_op_fill_in_reject_policy() 114 op->policy = genl_policy_reject_all; in genl_op_fill_in_reject_policy() 115 op->maxattr = 1; in genl_op_fill_in_reject_policy() [all …]
|
/linux/fs/btrfs/ |
H A D | ctree.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 22 #include "extent-io-tree.h" 55 * The slots array records the index of the item or block pointer 95 * btrfs_record_root_in_trans is a multi-step process, and it can race 109 * - How balance works 114 * While for non-shareable trees, we just simply do a tree search 117 * - How dirty roots are tracked 119 * track them, while non-subvolume roots have TRACK_DIRTY bit, they 222 /* The dirty list is only used by non-shareable roots */ 228 * Xarray that keeps track of in-memory inodes, protected by the lock [all …]
|
/linux/include/uapi/linux/ |
H A D | netlink.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 17 #define NETLINK_ISCSI 8 /* Open-iSCSI */ 45 * struct nlmsghdr - fixed format metadata header of Netlink messages 99 #define NLMSG_ALIGN(len) ( ((len)+NLMSG_ALIGNTO-1) & ~(NLMSG_ALIGNTO-1) ) 104 #define NLMSG_NEXT(nlh,len) ((len) -= NLMSG_ALIGN((nlh)->nlmsg_len), \ 106 NLMSG_ALIGN((nlh)->nlmsg_len))) 108 (nlh)->nlmsg_len >= sizeof(struct nlmsghdr) && \ 109 (nlh)->nlmsg_len <= (len)) 110 #define NLMSG_PAYLOAD(nlh,len) ((nlh)->nlmsg_len - NLMSG_SPACE((len))) 134 * enum nlmsgerr_attrs - nlmsgerr attributes [all …]
|
/linux/kernel/trace/ |
H A D | ring_buffer.c | 1 // SPDX-License-Identifier: GPL-2.0 100 * +------+ 103 * +------+ +---+ +---+ +---+ 104 * | |-->| |-->| | 105 * +---+ +---+ +---+ 108 * +---------------+ 111 * +------+ 113 * |page |------------------v 114 * +------+ +---+ +---+ +---+ 115 * | |-->| |-->| | [all …]
|
/linux/tools/net/ynl/lib/ |
H A D | ynl-priv.h | 1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */ 31 YNL_PARSE_CB_ERROR = -1, 38 #define YNL_ARRAY_SIZE(array) (sizeof(array) ? \ argument 39 sizeof(array) / sizeof(array[0]) : 0) 48 const struct ynl_policy_nest *nest; member 72 uptr -= offsetof(struct ynl_dump_list_type, data); in ynl_dump_obj_is_last() 81 uptr -= offsetof(struct ynl_dump_list_type, data); in ynl_dump_obj_next() 83 uptr = (unsigned long)list->next; in ynl_dump_obj_next() 104 /* YNL specific helpers used by the auto-generated code */ 145 nlh->nlmsg_len = NLMSG_HDRLEN; in ynl_nlmsg_put_header() [all …]
|
/linux/drivers/net/ethernet/meta/fbnic/ |
H A D | fbnic_tlv.c | 1 // SPDX-License-Identifier: GPL-2.0 14 * fbnic_tlv_msg_alloc - Allocate page and initialize FW message header 37 msg->hdr = hdr; in fbnic_tlv_msg_alloc() 43 * fbnic_tlv_attr_put_flag - Add flag value to message 47 * Return: -ENOSPC if there is no room for the attribute. Otherwise 0. 55 int attr_max_len = PAGE_SIZE - offset_in_page(msg) - sizeof(*msg); in fbnic_tlv_attr_put_flag() 59 attr_max_len -= le16_to_cpu(msg->hdr.len) * sizeof(u32); in fbnic_tlv_attr_put_flag() 61 return -ENOSPC; in fbnic_tlv_attr_put_flag() 64 attr = &msg[le16_to_cpu(msg->hdr.len)]; in fbnic_tlv_attr_put_flag() 70 attr->hdr = hdr; in fbnic_tlv_attr_put_flag() [all …]
|
/linux/net/ipv4/ |
H A D | nexthop.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Copyright (c) 2017-19 Cumulus Networks 5 * Copyright (c) 2017-19 David Ahern <dsa@cumulusnetworks.com> 93 return !net->nexthop.notifier_chain.head; in nexthop_notifiers_is_empty() 100 nh_info->dev = nhi->fib_nhc.nhc_dev; in __nh_notifier_single_info_init() 101 nh_info->gw_family = nhi->fib_nhc.nhc_gw_family; in __nh_notifier_single_info_init() 102 if (nh_info->gw_family == AF_INET) in __nh_notifier_single_info_init() 103 nh_info->ipv4 = nhi->fib_nhc.nhc_gw.ipv4; in __nh_notifier_single_info_init() 104 else if (nh_info->gw_family == AF_INET6) in __nh_notifier_single_info_init() 105 nh_info->ipv6 = nhi->fib_nhc.nhc_gw.ipv6; in __nh_notifier_single_info_init() [all …]
|
/linux/net/sched/ |
H A D | cls_api.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 65 * action index in the exts tc actions array. 84 if (WARN_ON(!handle || !tp->ops->get_exts)) in tcf_exts_miss_cookie_base_alloc() 85 return -EINVAL; in tcf_exts_miss_cookie_base_alloc() 89 return -ENOMEM; in tcf_exts_miss_cookie_base_alloc() 91 n->chain_index = tp->chain->index; in tcf_exts_miss_cookie_base_alloc() 92 n->chain = tp->chain; in tcf_exts_miss_cookie_base_alloc() 93 n->tp_prio = tp->prio; in tcf_exts_miss_cookie_base_alloc() 94 n->tp = tp; in tcf_exts_miss_cookie_base_alloc() 95 n->exts = exts; in tcf_exts_miss_cookie_base_alloc() [all …]
|
/linux/drivers/android/ |
H A D | binder_internal.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 27 * struct binder_device - information about a binder device node 43 * binderfs_mount_opts - mount options for binderfs 53 * binderfs_info - information about a binderfs mount 56 * binder-control device. 63 * @proc_log_dir: Pointer to the directory dentry containing process-specific 121 (entry)->name; \ 144 * struct binder_work - wor [all...] |