| /kernel/linux/linux-6.6/kernel/bpf/ |
| D | local_storage.c | 78 struct bpf_cgroup_storage *storage; in cgroup_storage_lookup() local 80 storage = container_of(node, struct bpf_cgroup_storage, node); in cgroup_storage_lookup() 82 switch (bpf_cgroup_storage_key_cmp(map, key, &storage->key)) { in cgroup_storage_lookup() 92 return storage; in cgroup_storage_lookup() 103 struct bpf_cgroup_storage *storage) in cgroup_storage_insert() argument 114 switch (bpf_cgroup_storage_key_cmp(map, &storage->key, &this->key)) { in cgroup_storage_insert() 126 rb_link_node(&storage->node, parent, new); in cgroup_storage_insert() 127 rb_insert_color(&storage->node, root); in cgroup_storage_insert() 135 struct bpf_cgroup_storage *storage; in cgroup_storage_lookup_elem() local 137 storage = cgroup_storage_lookup(map, key, false); in cgroup_storage_lookup_elem() [all …]
|
| /kernel/linux/linux-5.10/kernel/bpf/ |
| D | local_storage.c | 76 struct bpf_cgroup_storage *storage; in cgroup_storage_lookup() local 78 storage = container_of(node, struct bpf_cgroup_storage, node); in cgroup_storage_lookup() 80 switch (bpf_cgroup_storage_key_cmp(map, key, &storage->key)) { in cgroup_storage_lookup() 90 return storage; in cgroup_storage_lookup() 101 struct bpf_cgroup_storage *storage) in cgroup_storage_insert() argument 112 switch (bpf_cgroup_storage_key_cmp(map, &storage->key, &this->key)) { in cgroup_storage_insert() 124 rb_link_node(&storage->node, parent, new); in cgroup_storage_insert() 125 rb_insert_color(&storage->node, root); in cgroup_storage_insert() 133 struct bpf_cgroup_storage *storage; in cgroup_storage_lookup_elem() local 135 storage = cgroup_storage_lookup(map, key, false); in cgroup_storage_lookup_elem() [all …]
|
| /kernel/linux/linux-6.6/tools/testing/selftests/bpf/progs/ |
| D | local_storage.c | 66 struct local_storage *storage; in BPF_PROG() local 79 storage = bpf_task_storage_get(&task_storage_map, task, 0, 0); in BPF_PROG() 80 if (!storage) in BPF_PROG() 84 is_self_unlink = storage->exec_inode == victim->d_inode; in BPF_PROG() 86 storage = bpf_task_storage_get(&task_storage_map2, task, 0, in BPF_PROG() 88 if (!storage || storage->value) in BPF_PROG() 94 /* Ensure that the task_storage_map is disconnected from the storage. in BPF_PROG() 95 * The storage memory should not be freed back to the in BPF_PROG() 112 struct local_storage *storage; in BPF_PROG() local 122 storage = bpf_inode_storage_get(&inode_storage_map, old_dentry->d_inode, in BPF_PROG() [all …]
|
| D | mptcp_sock.c | 31 struct mptcp_storage *storage; in _sockops() local 51 storage = bpf_sk_storage_get(&socket_storage_map, sk, 0, in _sockops() 53 if (!storage) in _sockops() 56 storage->token = 0; in _sockops() 57 __builtin_memset(storage->ca_name, 0, TCP_CA_NAME_MAX); in _sockops() 58 storage->first = NULL; in _sockops() 64 storage = bpf_sk_storage_get(&socket_storage_map, msk, 0, in _sockops() 66 if (!storage) in _sockops() 69 storage->token = msk->token; in _sockops() 70 __builtin_memcpy(storage->ca_name, msk->ca_name, TCP_CA_NAME_MAX); in _sockops() [all …]
|
| D | tcp_rtt.c | 25 struct tcp_rtt_storage *storage; in _sockops() local 34 storage = bpf_sk_storage_get(&socket_storage_map, sk, 0, in _sockops() 36 if (!storage) in _sockops() 51 storage->invoked++; in _sockops() 53 storage->dsack_dups = tcp_sk->dsack_dups; in _sockops() 54 storage->delivered = tcp_sk->delivered; in _sockops() 55 storage->delivered_ce = tcp_sk->delivered_ce; in _sockops() 56 storage->icsk_retransmits = tcp_sk->icsk_retransmits; in _sockops()
|
| D | sockopt_inherit.c | 56 struct sockopt_inherit *storage; in _getsockopt() local 65 storage = get_storage(ctx); in _getsockopt() 66 if (!storage) in _getsockopt() 67 return 0; /* EPERM, couldn't get sk storage */ in _getsockopt() 71 optval[0] = storage->val; in _getsockopt() 87 struct sockopt_inherit *storage; in _setsockopt() local 96 storage = get_storage(ctx); in _setsockopt() 97 if (!storage) in _setsockopt() 98 return 0; /* EPERM, couldn't get sk storage */ in _setsockopt() 100 storage->val = optval[0]; in _setsockopt()
|
| /kernel/linux/linux-6.6/Documentation/bpf/ |
| D | map_sk_storage.rst | 11 ``BPF_MAP_TYPE_SK_STORAGE`` is used to provide socket-local storage for BPF 12 programs. A map of type ``BPF_MAP_TYPE_SK_STORAGE`` declares the type of storage 14 storage. The values for maps of type ``BPF_MAP_TYPE_SK_STORAGE`` are stored 16 allocating storage for a socket when requested and for freeing the storage when 22 socket-local storage. 37 Socket-local storage for ``map`` can be retrieved from socket ``sk`` using the 39 flag is used then ``bpf_sk_storage_get()`` will create the storage for ``sk`` 41 ``BPF_LOCAL_STORAGE_GET_F_CREATE`` to initialize the storage value, otherwise 42 it will be zero initialized. Returns a pointer to the storage on success, or 56 Socket-local storage for ``map`` can be deleted from socket ``sk`` using the [all …]
|
| D | map_cgroup_storage.rst | 9 storage. It is only available with ``CONFIG_CGROUP_BPF``, and to programs that 11 storage is identified by the cgroup the program is attached to. 13 The map provide a local storage at the cgroup that the BPF program is attached 38 map will share the same storage. Otherwise, if the type is 42 To access the storage in a program, use ``bpf_get_local_storage``:: 51 ``struct bpf_spin_lock`` to synchronize the storage. See 128 storage. The non-per-CPU will have the same memory region for each storage. 130 Prior to Linux 5.9, the lifetime of a storage is precisely per-attachment, and 133 multiple attach types, and each attach creates a fresh zeroed storage. The 134 storage is freed upon detach. [all …]
|
| D | map_cgrp_storage.rst | 9 storage for cgroups. It is only available with ``CONFIG_CGROUPS``. 21 To access the storage in a program, use ``bpf_cgrp_storage_get``:: 26 a new local storage will be created if one does not exist. 28 The local storage can be removed with ``bpf_cgrp_storage_delete``:: 81 The old cgroup storage map ``BPF_MAP_TYPE_CGROUP_STORAGE`` has been marked as 91 (2). ``BPF_MAP_TYPE_CGRP_STORAGE`` supports local storage for more than one 95 (3). ``BPF_MAP_TYPE_CGROUP_STORAGE_DEPRECATED`` allocates local storage at attach time so 96 ``bpf_get_local_storage()`` always returns non-NULL local storage. 97 ``BPF_MAP_TYPE_CGRP_STORAGE`` allocates local storage at runtime so 98 it is possible that ``bpf_cgrp_storage_get()`` may return null local storage. [all …]
|
| /kernel/linux/linux-5.10/Documentation/bpf/ |
| D | map_cgroup_storage.rst | 9 storage. It is only available with ``CONFIG_CGROUP_BPF``, and to programs that 11 storage is identified by the cgroup the program is attached to. 13 The map provide a local storage at the cgroup that the BPF program is attached 38 map will share the same storage. Otherwise, if the type is 42 To access the storage in a program, use ``bpf_get_local_storage``:: 51 ``struct bpf_spin_lock`` to synchronize the storage. See 128 storage. The non-per-CPU will have the same memory region for each storage. 130 Prior to Linux 5.9, the lifetime of a storage is precisely per-attachment, and 133 multiple attach types, and each attach creates a fresh zeroed storage. The 134 storage is freed upon detach. [all …]
|
| /kernel/linux/linux-6.6/kernel/ |
| D | stacktrace.c | 20 * @entries: Pointer to storage array 21 * @nr_entries: Number of entries in the storage array 41 * @entries: Pointer to storage array 42 * @nr_entries: Number of entries in the storage array 105 * stack_trace_save - Save a stack trace into a storage array 106 * @store: Pointer to storage array 107 * @size: Size of the storage array 128 * stack_trace_save_tsk - Save a task stack trace into a storage array 130 * @store: Pointer to storage array 131 * @size: Size of the storage array [all …]
|
| /kernel/linux/linux-5.10/kernel/ |
| D | stacktrace.c | 19 * @entries: Pointer to storage array 20 * @nr_entries: Number of entries in the storage array 40 * @entries: Pointer to storage array 41 * @nr_entries: Number of entries in the storage array 104 * stack_trace_save - Save a stack trace into a storage array 105 * @store: Pointer to storage array 106 * @size: Size of the storage array 127 * stack_trace_save_tsk - Save a task stack trace into a storage array 129 * @store: Pointer to storage array 130 * @size: Size of the storage array [all …]
|
| /kernel/linux/linux-5.10/tools/testing/selftests/bpf/progs/ |
| D | local_storage.c | 60 struct dummy_storage *storage; in BPF_PROG() local 66 storage = bpf_inode_storage_get(&inode_storage_map, victim->d_inode, 0, in BPF_PROG() 68 if (!storage) in BPF_PROG() 71 if (storage->value != DUMMY_STORAGE_VALUE) in BPF_PROG() 86 struct dummy_storage *storage; in BPF_PROG() local 92 storage = bpf_sk_storage_get(&sk_storage_map, sock->sk, 0, in BPF_PROG() 94 if (!storage) in BPF_PROG() 97 if (storage->value != DUMMY_STORAGE_VALUE) in BPF_PROG() 112 struct dummy_storage *storage; in BPF_PROG() local 117 storage = bpf_sk_storage_get(&sk_storage_map, sock->sk, 0, in BPF_PROG() [all …]
|
| D | sockopt_inherit.c | 55 struct sockopt_inherit *storage; in _getsockopt() local 64 storage = get_storage(ctx); in _getsockopt() 65 if (!storage) in _getsockopt() 66 return 0; /* EPERM, couldn't get sk storage */ in _getsockopt() 70 optval[0] = storage->val; in _getsockopt() 80 struct sockopt_inherit *storage; in _setsockopt() local 89 storage = get_storage(ctx); in _setsockopt() 90 if (!storage) in _setsockopt() 91 return 0; /* EPERM, couldn't get sk storage */ in _setsockopt() 93 storage->val = optval[0]; in _setsockopt()
|
| D | tcp_rtt.c | 26 struct tcp_rtt_storage *storage; in _sockops() local 35 storage = bpf_sk_storage_get(&socket_storage_map, sk, 0, in _sockops() 37 if (!storage) in _sockops() 52 storage->invoked++; in _sockops() 54 storage->dsack_dups = tcp_sk->dsack_dups; in _sockops() 55 storage->delivered = tcp_sk->delivered; in _sockops() 56 storage->delivered_ce = tcp_sk->delivered_ce; in _sockops() 57 storage->icsk_retransmits = tcp_sk->icsk_retransmits; in _sockops()
|
| /kernel/linux/linux-5.10/Documentation/usb/ |
| D | mass-storage.rst | 2 Mass Storage Gadget (MSG) 8 Mass Storage Gadget (or MSG) acts as a USB Mass Storage device, 10 multiple logical units (LUNs). Backing storage for each LUN is 27 relation to mass storage function (or MSF) and different gadgets 28 using it, and how it differs from File Storage Gadget (or FSG) 35 The mass storage gadget accepts the following mass storage specific 41 backing storage for each logical unit. There may be at most 45 *BEWARE* that if a file is used as a backing storage, it may not 75 true. This has been changed to better match File Storage Gadget 110 MS Windows mounts removable storage in “Removal optimised mode” by [all …]
|
| /kernel/linux/linux-6.6/Documentation/usb/ |
| D | mass-storage.rst | 2 Mass Storage Gadget (MSG) 8 Mass Storage Gadget (or MSG) acts as a USB Mass Storage device, 10 multiple logical units (LUNs). Backing storage for each LUN is 27 relation to mass storage function (or MSF) and different gadgets 28 using it, and how it differs from File Storage Gadget (or FSG) 35 The mass storage gadget accepts the following mass storage specific 41 backing storage for each logical unit. There may be at most 45 *BEWARE* that if a file is used as a backing storage, it may not 75 true. This has been changed to better match File Storage Gadget 110 MS Windows mounts removable storage in “Removal optimised mode” by [all …]
|
| /kernel/linux/linux-6.6/drivers/platform/x86/intel/uncore-frequency/ |
| D | uncore-frequency-common.h | 28 * @uncore_attr_group: Attribute group storage 29 * @max_freq_khz_kobj_attr: Storage for kobject attribute max_freq_khz 30 * @mix_freq_khz_kobj_attr: Storage for kobject attribute min_freq_khz 31 * @initial_max_freq_khz_kobj_attr: Storage for kobject attribute initial_max_freq_khz 32 * @initial_min_freq_khz_kobj_attr: Storage for kobject attribute initial_min_freq_khz 33 * @current_freq_khz_kobj_attr: Storage for kobject attribute current_freq_khz 34 * @domain_id_kobj_attr: Storage for kobject attribute domain_id 35 * @fabric_cluster_id_kobj_attr: Storage for kobject attribute fabric_cluster_id 36 * @package_id_kobj_attr: Storage for kobject attribute package_id 37 * @uncore_attrs: Attribute storage for group creation
|
| /kernel/linux/linux-5.10/tools/testing/selftests/bpf/ |
| D | test_cgroup_storage.c | 14 #define TEST_CGROUP "/test-bpf-cgroup-storage-buf/" 86 printf("Failed to get the first key in cgroup storage\n"); in main() 91 printf("Failed to lookup cgroup storage 0\n"); in main() 99 printf("Failed to update the data in the cgroup storage\n"); in main() 108 /* Check the counter in the cgroup local storage */ in main() 110 printf("Failed to lookup cgroup storage\n"); in main() 115 printf("Unexpected data in the cgroup storage: %llu\n", value); in main() 119 /* Bump the counter in the cgroup local storage */ in main() 122 printf("Failed to update the data in the cgroup storage\n"); in main() 131 /* Check the final value of the counter in the cgroup local storage */ in main() [all …]
|
| /kernel/linux/linux-6.6/tools/testing/selftests/bpf/ |
| D | test_cgroup_storage.c | 15 #define TEST_CGROUP "/test-bpf-cgroup-storage-buf/" 90 printf("Failed to get the first key in cgroup storage\n"); in main() 95 printf("Failed to lookup cgroup storage 0\n"); in main() 103 printf("Failed to update the data in the cgroup storage\n"); in main() 112 /* Check the counter in the cgroup local storage */ in main() 114 printf("Failed to lookup cgroup storage\n"); in main() 119 printf("Unexpected data in the cgroup storage: %llu\n", value); in main() 123 /* Bump the counter in the cgroup local storage */ in main() 126 printf("Failed to update the data in the cgroup storage\n"); in main() 135 /* Check the final value of the counter in the cgroup local storage */ in main() [all …]
|
| /kernel/linux/linux-5.10/drivers/usb/storage/ |
| D | Kconfig | 3 # USB Storage driver configuration 10 tristate "USB Mass Storage support" 13 Say Y here if you want to connect USB mass storage devices to your 22 (BLK_DEV_SD) for most USB storage devices. 25 module will be called usb-storage. 30 bool "USB Mass Storage verbose debug" 32 Say Y here in order to have the USB Mass Storage code generate 73 - ISD SmartCable for Storage 82 tristate "USBAT/USBAT02-based storage support" 84 Say Y here to include additional code to support storage devices [all …]
|
| D | unusual_devs.h | 3 * Driver for USB Mass Storage compliant devices 58 "SND1 Storage", 283 "USB Mass Storage Device", 301 * Generic Mass Storage (PROTOTYPE--Remember to change idVendor) 397 "875DC Storage", 406 "785EPX Storage", 608 "File-backed Storage Gadget", 731 "PEG Mass Storage", 738 "PEG Mass Storage", 745 "PEG Mass Storage", [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/storage/ |
| D | Kconfig | 3 # USB Storage driver configuration 10 tristate "USB Mass Storage support" 13 Say Y here if you want to connect USB mass storage devices to your 22 (BLK_DEV_SD) for most USB storage devices. 25 module will be called usb-storage. 30 bool "USB Mass Storage verbose debug" 32 Say Y here in order to have the USB Mass Storage code generate 73 - ISD SmartCable for Storage 82 tristate "USBAT/USBAT02-based storage support" 84 Say Y here to include additional code to support storage devices [all …]
|
| D | unusual_devs.h | 3 * Driver for USB Mass Storage compliant devices 58 "SND1 Storage", 290 "USB Mass Storage Device", 308 * Generic Mass Storage (PROTOTYPE--Remember to change idVendor) 404 "875DC Storage", 413 "785EPX Storage", 615 "File-backed Storage Gadget", 738 "PEG Mass Storage", 745 "PEG Mass Storage", 752 "PEG Mass Storage", [all …]
|
| /kernel/linux/linux-5.10/tools/testing/selftests/bpf/verifier/ |
| D | cgroup_storage.c | 2 "valid cgroup storage access", 17 "invalid cgroup storage access 1", 33 "invalid cgroup storage access 2", 46 "invalid cgroup storage access 3", 62 "invalid cgroup storage access 4", 79 "invalid cgroup storage access 5", 95 "invalid cgroup storage access 6", 112 "valid per-cpu cgroup storage access", 127 "invalid per-cpu cgroup storage access 1", 143 "invalid per-cpu cgroup storage access 2", [all …]
|