/Linux-v6.1/drivers/misc/vmw_vmci/ |
D | vmci_handle_array.c | 19 struct vmci_handle_arr *array; in vmci_handle_arr_create() local 28 array = kmalloc(handle_arr_calc_size(capacity), GFP_ATOMIC); in vmci_handle_arr_create() 29 if (!array) in vmci_handle_arr_create() 32 array->capacity = capacity; in vmci_handle_arr_create() 33 array->max_capacity = max_capacity; in vmci_handle_arr_create() 34 array->size = 0; in vmci_handle_arr_create() 36 return array; in vmci_handle_arr_create() 39 void vmci_handle_arr_destroy(struct vmci_handle_arr *array) in vmci_handle_arr_destroy() argument 41 kfree(array); in vmci_handle_arr_destroy() 47 struct vmci_handle_arr *array = *array_ptr; in vmci_handle_arr_append_entry() local [all …]
|
D | vmci_handle_array.h | 25 /* Select a default capacity that results in a 64 byte sized array */ 27 /* Make sure that the max array size can be expressed by a u32 */ 33 void vmci_handle_arr_destroy(struct vmci_handle_arr *array); 36 struct vmci_handle vmci_handle_arr_remove_entry(struct vmci_handle_arr *array, 39 struct vmci_handle vmci_handle_arr_remove_tail(struct vmci_handle_arr *array); 41 vmci_handle_arr_get_entry(const struct vmci_handle_arr *array, u32 index); 42 bool vmci_handle_arr_has_entry(const struct vmci_handle_arr *array, 44 struct vmci_handle *vmci_handle_arr_get_handles(struct vmci_handle_arr *array); 47 const struct vmci_handle_arr *array) in vmci_handle_arr_get_size() argument 49 return array->size; in vmci_handle_arr_get_size()
|
/Linux-v6.1/drivers/dma-buf/ |
D | dma-fence-array.c | 3 * dma-fence-array: aggregate fences to be waited together 14 #include <linux/dma-fence-array.h> 28 static void dma_fence_array_set_pending_error(struct dma_fence_array *array, in dma_fence_array_set_pending_error() argument 36 cmpxchg(&array->base.error, PENDING_ERROR, error); in dma_fence_array_set_pending_error() 39 static void dma_fence_array_clear_pending_error(struct dma_fence_array *array) in dma_fence_array_clear_pending_error() argument 42 cmpxchg(&array->base.error, PENDING_ERROR, 0); in dma_fence_array_clear_pending_error() 47 struct dma_fence_array *array = container_of(wrk, typeof(*array), work); in irq_dma_fence_array_work() local 49 dma_fence_array_clear_pending_error(array); in irq_dma_fence_array_work() 51 dma_fence_signal(&array->base); in irq_dma_fence_array_work() 52 dma_fence_put(&array->base); in irq_dma_fence_array_work() [all …]
|
D | dma-fence-unwrap.c | 11 #include <linux/dma-fence-array.h> 16 /* Internal helper to start new array iteration, don't use directly */ 20 cursor->array = dma_fence_chain_contained(cursor->chain); in __dma_fence_unwrap_array() 22 return dma_fence_array_first(cursor->array); in __dma_fence_unwrap_array() 53 tmp = dma_fence_array_next(cursor->array, cursor->index); in dma_fence_unwrap_next() 68 struct dma_fence *tmp, **array; in __dma_fence_unwrap_merge() local 82 array = kmalloc_array(count, sizeof(*array), GFP_KERNEL); in __dma_fence_unwrap_merge() 83 if (!array) in __dma_fence_unwrap_merge() 87 * This trashes the input fence array and uses it as position for the in __dma_fence_unwrap_merge() 89 * wrapper macro is creating this temporary array on the stack together in __dma_fence_unwrap_merge() [all …]
|
D | st-dma-fence-unwrap.c | 8 #include <linux/dma-fence-array.h> 48 struct dma_fence_array *array; in mock_array() local 62 array = dma_fence_array_create(num_fences, fences, in mock_array() 65 if (!array) in mock_array() 67 return &array->base; in mock_array() 98 struct dma_fence *f, *chain, *array; in sanitycheck() local 107 array = mock_array(1, f); in sanitycheck() 108 if (!array) in sanitycheck() 111 chain = mock_chain(NULL, array); in sanitycheck() 121 struct dma_fence *fence, *f1, *f2, *array; in unwrap_array() local [all …]
|
/Linux-v6.1/sound/hda/ |
D | array.c | 11 * snd_array_new - get a new element from the given array 12 * @array: the array object 14 * Get a new element from the given array. If it exceeds the 15 * pre-allocated array size, re-allocate the array. 19 void *snd_array_new(struct snd_array *array) in snd_array_new() argument 21 if (snd_BUG_ON(!array->elem_size)) in snd_array_new() 23 if (array->used >= array->alloced) { in snd_array_new() 24 int num = array->alloced + array->alloc_align; in snd_array_new() 25 int oldsize = array->alloced * array->elem_size; in snd_array_new() 26 int size = (num + 1) * array->elem_size; in snd_array_new() [all …]
|
/Linux-v6.1/drivers/md/persistent-data/ |
D | dm-array.h | 14 * The dm-array is a persistent version of an array. It packs the data 25 * size along with the array root in your encompassing data. 27 * Array entries are indexed via an unsigned integer starting from zero. 28 * Arrays are not sparse; if you resize an array to have 'n' entries then 33 * a) initialise a dm_array_info structure. This describes the array 39 * disk that holds a particular instance of an array. You may have a 41 * want to create a brand new, empty array with dm_array_empty(). 45 * root for a _new_ array. If you've incremented the old root, via 49 * c) resize an array with dm_array_resize(). 51 * d) Get a value from the array with dm_array_get_value(). [all …]
|
/Linux-v6.1/kernel/bpf/ |
D | arraymap.c | 22 static void bpf_array_free_percpu(struct bpf_array *array) in bpf_array_free_percpu() argument 26 for (i = 0; i < array->map.max_entries; i++) { in bpf_array_free_percpu() 27 free_percpu(array->pptrs[i]); in bpf_array_free_percpu() 32 static int bpf_array_alloc_percpu(struct bpf_array *array) in bpf_array_alloc_percpu() argument 37 for (i = 0; i < array->map.max_entries; i++) { in bpf_array_alloc_percpu() 38 ptr = bpf_map_alloc_percpu(&array->map, array->elem_size, 8, in bpf_array_alloc_percpu() 41 bpf_array_free_percpu(array); in bpf_array_alloc_percpu() 44 array->pptrs[i] = ptr; in bpf_array_alloc_percpu() 87 struct bpf_array *array; in array_map_alloc() local 103 /* round up array size to nearest power of 2, in array_map_alloc() [all …]
|
D | reuseport_array.c | 52 struct reuseport_array *array = reuseport_array(map); in reuseport_array_lookup_elem() local 55 if (unlikely(index >= array->map.max_entries)) in reuseport_array_lookup_elem() 58 return rcu_dereference(array->ptrs[index]); in reuseport_array_lookup_elem() 64 struct reuseport_array *array = reuseport_array(map); in reuseport_array_delete_elem() local 72 if (!rcu_access_pointer(array->ptrs[index])) in reuseport_array_delete_elem() 77 sk = rcu_dereference_protected(array->ptrs[index], in reuseport_array_delete_elem() 82 RCU_INIT_POINTER(array->ptrs[index], NULL); in reuseport_array_delete_elem() 96 struct reuseport_array *array = reuseport_array(map); in reuseport_array_free() local 102 * array now. Hence, this function only races with in reuseport_array_free() 107 * both removing sk from "array". Who removes it in reuseport_array_free() [all …]
|
/Linux-v6.1/Documentation/admin-guide/ |
D | md.rst | 22 or, to assemble a partitionable array:: 44 level of the RAID array 92 If a raid5 or raid6 array is both dirty and degraded, it could have 98 For this reason, md will normally refuse to start such an array. This 99 requires the sysadmin to take action to explicitly start the array 104 This option is not really available if the array has the root 106 array, md supports a module parameter ``start_dirty_degraded`` which, 131 An array is ``created`` by writing appropriate superblocks to all 138 An array should be created by a user-space tool. This will write 139 superblocks to all devices. It will usually mark the array as [all …]
|
/Linux-v6.1/drivers/misc/habanalabs/common/ |
D | security.c | 11 * hl_get_pb_block - return the relevant block within the block array 15 * @pb_blocks: blocks array 16 * @array_size: blocks array size 43 * @sgs_entry: pb array 69 * @pb_blocks: blocks array 70 * @sgs_array: pb array 71 * @array_size: blocks array size 98 * @pb_blocks: blocks array 99 * @sgs_array: pb array 100 * @array_size: blocks array size [all …]
|
/Linux-v6.1/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 …]
|
/Linux-v6.1/Documentation/core-api/ |
D | assoc_array.rst | 2 Generic Associative Array Implementation 8 This associative array implementation is an object container with the following 18 2. Objects do not need to contain linkage blocks for use by the array. This 20 Rather, the array is made up of metadata blocks that point to objects. 22 3. Objects require index keys to locate them within the array. 25 already in the array will replace the old object. 32 7. Index keys can include a hash to scatter objects throughout the array. 34 8. The array can iterated over. The objects will not necessarily come out in 37 9. The array can be iterated over while it is being modified, provided the 43 10. Objects in the array can be looked up by means of their index key. [all …]
|
/Linux-v6.1/Documentation/RCU/ |
D | arrayRCU.rst | 16 array that is separately indexed. It might be tempting to consider use 17 of RCU to instead protect the index into an array, however, this use 34 Hash tables are often implemented as an array, where each array entry 37 array-of-list situations, such as radix trees. 45 located in each array element, and where the array is never resized, 61 function formerly used by the System V IPC code. The array is used 70 the new array, and invokes ipc_rcu_putref() to free up the old array. 102 * contents of the new array are visible before the new 103 * array becomes visible. 111 The ipc_rcu_putref() function decrements the array's reference count [all …]
|
/Linux-v6.1/drivers/infiniband/hw/mthca/ |
D | mthca_allocator.c | 106 * Array of pointers with lazy allocation of leaf pages. Callers of 108 * serialize access to the array. 113 void *mthca_array_get(struct mthca_array *array, int index) in mthca_array_get() argument 117 if (array->page_list[p].page) in mthca_array_get() 118 return array->page_list[p].page[index & MTHCA_ARRAY_MASK]; in mthca_array_get() 123 int mthca_array_set(struct mthca_array *array, int index, void *value) in mthca_array_set() argument 128 if (!array->page_list[p].page) in mthca_array_set() 129 array->page_list[p].page = (void **) get_zeroed_page(GFP_ATOMIC); in mthca_array_set() 131 if (!array->page_list[p].page) in mthca_array_set() 134 array->page_list[p].page[index & MTHCA_ARRAY_MASK] = value; in mthca_array_set() [all …]
|
/Linux-v6.1/include/linux/ |
D | dma-fence-array.h | 3 * fence-array: aggregates fence to be waited together 19 * struct dma_fence_array_cb - callback helper for fence array 21 * @array: reference to the parent fence array object 25 struct dma_fence_array *array; member 29 * struct dma_fence_array - fence to represent an array of fences 32 * @num_fences: number of fences in the array 33 * @num_pending: fences in the array still pending 34 * @fences: array of the fences 65 * dma_fence_array_for_each - iterate over all fences in array 67 * @index: index into the array [all …]
|
D | assoc_array.h | 2 /* Generic associative array implementation. 20 * Generic associative array. 28 * Operations on objects and index keys for use by array manipulation routines. 54 static inline void assoc_array_init(struct assoc_array *array) in assoc_array_init() argument 56 array->root = NULL; in assoc_array_init() 57 array->nr_leaves_on_tree = 0; in assoc_array_init() 60 extern int assoc_array_iterate(const struct assoc_array *array, 64 extern void *assoc_array_find(const struct assoc_array *array, 67 extern void assoc_array_destroy(struct assoc_array *array, 69 extern struct assoc_array_edit *assoc_array_insert(struct assoc_array *array, [all …]
|
/Linux-v6.1/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/ |
D | pwrseq.c | 8 /* 3 Power on Array */ 15 /* 3Radio off GPIO Array */ 22 /* 3Card Disable Array */ 31 /* 3 Card Enable Array */ 40 /* 3Suspend Array */ 49 /* 3 Resume Array */ 58 /* 3HWPDN Array */ 84 /*3 Power on Array*/ 91 /*3Radio off GPIO Array */ 98 /*3Card Disable Array*/ [all …]
|
/Linux-v6.1/drivers/ras/ |
D | cec.c | 22 * array of the size of a memory page. It stores 512 u64's with the following 34 * and thus iterating over the array initially won't kick out those elements 38 * elements entered into the array, during which, we're decaying all elements. 68 * elements have stayed in the array without having been accessed again. 95 u64 *array; /* container page */ member 96 unsigned int n; /* number of elements in the array */ 140 * element in the array. On insertion and any access, it gets reset to max. 147 u8 decay = DECAY(ca->array[i]); in do_spring_cleaning() 154 ca->array[i] &= ~(DECAY_MASK << COUNT_BITS); in do_spring_cleaning() 155 ca->array[i] |= (decay << COUNT_BITS); in do_spring_cleaning() [all …]
|
/Linux-v6.1/drivers/gpio/ |
D | gpiolib-legacy.c | 82 * @array: array of the 'struct gpio' 83 * @num: how many GPIOs in the array 85 int gpio_request_array(const struct gpio *array, size_t num) in gpio_request_array() argument 89 for (i = 0; i < num; i++, array++) { in gpio_request_array() 90 err = gpio_request_one(array->gpio, array->flags, array->label); in gpio_request_array() 98 gpio_free((--array)->gpio); in gpio_request_array() 105 * @array: array of the 'struct gpio' 106 * @num: how many GPIOs in the array 108 void gpio_free_array(const struct gpio *array, size_t num) in gpio_free_array() argument 111 gpio_free((array++)->gpio); in gpio_free_array()
|
/Linux-v6.1/scripts/coccinelle/misc/ |
D | flexible_array.cocci | 5 /// Flexible-array members should be used instead. 27 identifier name, array; 35 * T array@p[\(0\|1\)]; 40 * T array@p[\(0\|1\)]; 45 * T array@p[\(0\|1\)]; 50 * T array@p[\(0\|1\)]; 55 identifier name, array; 62 T array[0]; 66 T array[0]; 71 identifier name, array; [all …]
|
/Linux-v6.1/fs/nfs/ |
D | pnfs_nfs.c | 130 struct pnfs_commit_array *array; in pnfs_find_commit_array_by_lseg() local 132 list_for_each_entry_rcu(array, &fl_cinfo->commits, cinfo_list) { in pnfs_find_commit_array_by_lseg() 133 if (array->lseg == lseg) in pnfs_find_commit_array_by_lseg() 134 return array; in pnfs_find_commit_array_by_lseg() 144 struct pnfs_commit_array *array; in pnfs_add_commit_array() local 146 array = pnfs_find_commit_array_by_lseg(fl_cinfo, lseg); in pnfs_add_commit_array() 147 if (array) in pnfs_add_commit_array() 148 return array; in pnfs_add_commit_array() 161 struct pnfs_commit_array *array; in pnfs_lookup_commit_array() local 164 array = pnfs_find_commit_array_by_lseg(fl_cinfo, lseg); in pnfs_lookup_commit_array() [all …]
|
/Linux-v6.1/kernel/trace/ |
D | tracing_map.h | 25 * zeroed array of struct tracing_map_entry (stored in the map field 28 * variable and a pointer named 'val'. This array of struct 32 * this indirectly via an array of tracing_map_sort_entry - see the 39 * It then uses this key, truncated to the array size, as an index 40 * into the array of tracing_map_entries. If the value of the 'key' 63 * tracing_map_entries in the tracing_map_entry array which can be 66 * with the tracing_map_entry array in the tracing_map. Because of 68 * tracing_map_entry array is always twice the maximum number of 74 * both the tracing_map_entry array and a pool of max_elts 78 * The tracing_map_entry array is allocated as a single block by [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/usb/ |
D | brcm,usb-pinmap.yaml | 27 description: Array of one or two GPIO pins used for input signals. 30 $ref: /schemas/types.yaml#/definitions/string-array 31 description: Array of input signal names, one per gpio in in-gpios. 34 $ref: /schemas/types.yaml#/definitions/uint32-array 35 description: Array of enable and mask pairs, one per gpio in-gpios. 39 description: Array of one GPIO pin used for output signals. 42 $ref: /schemas/types.yaml#/definitions/string-array 43 description: Array of output signal names, one per gpio in out-gpios. 46 $ref: /schemas/types.yaml#/definitions/uint32-array 47 description: Array of enable, value, changed and clear masks, one
|
/Linux-v6.1/lib/ |
D | assoc_array.c | 2 /* Generic associative array implementation. 16 * Iterate over an associative array. The caller must hold the RCU read lock 111 * assoc_array_iterate - Pass all objects in the array to a callback 112 * @array: The array to iterate over. 116 * Iterate over all the objects in an associative array. Each one will be 119 * If the array is being modified concurrently with the iteration then it is 120 * possible that some objects in the array will be passed to the iterator 125 * The function will return 0 if no objects were in the array or else it will 133 int assoc_array_iterate(const struct assoc_array *array, in assoc_array_iterate() argument 138 struct assoc_array_ptr *root = READ_ONCE(array->root); /* Address dependency. */ in assoc_array_iterate() [all …]
|