Home
last modified time | relevance | path

Searched refs:tags (Results 1 – 25 of 2452) sorted by relevance

12345678910>>...99

/linux/block/
A Dblk-mq-tag.c58 struct blk_mq_tags *tags = hctx->tags; in __blk_mq_tag_idle() local
241 struct blk_mq_tags *tags = hctx->tags; in bt_iter() local
303 struct blk_mq_tags *tags = iter_data->tags; in bt_tags_iter() local
347 .tags = tags, in bt_tags_for_each()
363 bt_tags_for_each(tags, &tags->breserved_tags, fn, priv, in __blk_mq_all_tag_iter()
408 if (tagset->tags && tagset->tags[i]) in blk_mq_tagset_busy_iter()
475 struct blk_mq_tags *tags = hctx->tags; in blk_mq_queue_tag_busy_iter() local
529 tags = kzalloc_node(sizeof(*tags), GFP_KERNEL, node); in blk_mq_init_tags()
530 if (!tags) in blk_mq_init_tags()
543 return tags; in blk_mq_init_tags()
[all …]
A Dblk-mq-tag.h10 extern void blk_mq_free_tags(struct blk_mq_tags *tags);
20 extern void blk_mq_put_tag(struct blk_mq_tags *tags, struct blk_mq_ctx *ctx,
22 void blk_mq_put_tags(struct blk_mq_tags *tags, int *tag_array, int nr_tags);
24 struct blk_mq_tags **tags,
30 extern void blk_mq_tag_wakeup_all(struct blk_mq_tags *tags, bool);
33 void blk_mq_all_tag_iter(struct blk_mq_tags *tags, busy_tag_iter_fn *fn,
69 static inline bool blk_mq_tag_is_reserved(struct blk_mq_tags *tags, in blk_mq_tag_is_reserved() argument
72 return tag < tags->nr_reserved_tags; in blk_mq_tag_is_reserved()
A Dblk-mq.c2802 kfree(tags->rqs); in blk_mq_free_rq_map()
2803 tags->rqs = NULL; in blk_mq_free_rq_map()
2824 if (!tags) in blk_mq_alloc_rq_map()
2844 return tags; in blk_mq_alloc_rq_map()
3077 if (!tags) in blk_mq_clear_flush_rq_mapping()
3159 hctx->tags = set->tags[hctx_idx]; in blk_mq_init_hctx()
3283 if (!tags) in blk_mq_alloc_map_and_rqs()
3292 return tags; in blk_mq_alloc_map_and_rqs()
3314 if (tags) { in blk_mq_free_map_and_rqs()
3413 hctx->tags = set->tags[i]; in blk_mq_map_swqueue()
[all …]
A Dblk-mq.h51 void blk_mq_free_rqs(struct blk_mq_tag_set *set, struct blk_mq_tags *tags,
53 void blk_mq_free_rq_map(struct blk_mq_tags *tags);
57 struct blk_mq_tags *tags,
177 return data->hctx->tags; in blk_mq_tags_from_data()
188 return hctx->nr_ctx && hctx->tags; in blk_mq_hw_queue_mapped()
257 blk_mq_put_tag(hctx->tags, rq->mq_ctx, rq->tag); in __blk_mq_put_driver_tag()
282 hctx->tags->rqs[rq->tag] = rq; in blk_mq_get_driver_tag()
368 users = atomic_read(&hctx->tags->active_queues); in hctx_may_queue()
/linux/drivers/gpu/drm/nouveau/nvkm/core/
A Dmemory.c35 if (tags) { in nvkm_memory_tags_put()
38 nvkm_mm_free(&fb->tags.mm, &tags->mn); in nvkm_memory_tags_put()
39 kfree(memory->tags); in nvkm_memory_tags_put()
56 if ((tags = memory->tags)) { in nvkm_memory_tags_get()
61 if (tags->mn && tags->mn->length != nr) { in nvkm_memory_tags_get()
68 *ptags = tags; in nvkm_memory_tags_get()
72 if (!(tags = kmalloc(sizeof(*tags), GFP_KERNEL))) { in nvkm_memory_tags_get()
77 if (!nvkm_mm_head(&fb->tags.mm, 0, 1, nr, nr, 1, &tags->mn)) { in nvkm_memory_tags_get()
79 clr(device, tags->mn->offset, tags->mn->length); in nvkm_memory_tags_get()
90 tags->mn = NULL; in nvkm_memory_tags_get()
[all …]
/linux/fs/erofs/
A Dtagptr.h57 const typeof(_tags) tags = (_tags); \
58 if (__builtin_constant_p(tags) && (tags & ~__tagptr_mask(type))) \
60 tagptr_init(type, (uintptr_t)(ptr) | tags); })
86 #define tagptr_replace_tags(_ptptr, tags) ({ \ argument
88 *ptptr = tagptr_fold(*ptptr, tagptr_unfold_ptr(*ptptr), tags); \
93 const typeof(_tags) tags = (_tags); \
94 if (__builtin_constant_p(tags) && (tags & ~__tagptr_mask(*ptptr))) \
96 ptptr->v |= tags; \
101 const typeof(_tags) tags = (_tags); \
102 if (__builtin_constant_p(tags) && (tags & ~__tagptr_mask(*ptptr))) \
[all …]
/linux/arch/arm64/mm/
A Dmteswap.c51 void *tags = xa_load(&mte_pages, entry.val); in mte_restore_tags() local
53 if (!tags) in mte_restore_tags()
65 mte_restore_page_tags(page_address(page), tags); in mte_restore_tags()
73 void *tags = xa_erase(&mte_pages, entry.val); in mte_invalidate_tags() local
75 mte_free_tag_storage(tags); in mte_invalidate_tags()
82 void *tags; in mte_invalidate_tags_area() local
87 xas_for_each(&xa_state, tags, last_entry.val - 1) { in mte_invalidate_tags_area()
89 mte_free_tag_storage(tags); in mte_invalidate_tags_area()
/linux/arch/arm/kernel/
A Datags_parse.c179 struct tag *tags = (struct tag *)&default_tags; in setup_machine_tags() local
199 tags = atags_vaddr; in setup_machine_tags()
208 if (tags->hdr.tag != ATAG_CORE) in setup_machine_tags()
209 convert_to_tag_list(tags); in setup_machine_tags()
211 if (tags->hdr.tag != ATAG_CORE) { in setup_machine_tags()
213 tags = (struct tag *)&default_tags; in setup_machine_tags()
217 mdesc->fixup(tags, &from); in setup_machine_tags()
219 if (tags->hdr.tag == ATAG_CORE) { in setup_machine_tags()
221 squash_mem_tags(tags); in setup_machine_tags()
222 save_atags(tags); in setup_machine_tags()
[all …]
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/fb/
A Dnv20.c47 u32 tags = round_up(tiles / fb->ram->parts, 0x40); in nv20_fb_tile_comp() local
48 if (!nvkm_mm_head(&fb->tags.mm, 0, 1, tags, tags, 1, &tile->tag)) { in nv20_fb_tile_comp()
66 nvkm_mm_free(&fb->tags.mm, &tile->tag); in nv20_fb_tile_fini()
83 const u32 tags = nvkm_rd32(fb->subdev.device, 0x100320); in nv20_fb_tags() local
84 return tags ? tags + 1 : 0; in nv20_fb_tags()
89 .tags = nv20_fb_tags,
A Dnv35.c34 u32 tags = round_up(tiles / fb->ram->parts, 0x40); in nv35_fb_tile_comp() local
35 if (!nvkm_mm_head(&fb->tags.mm, 0, 1, tags, tags, 1, &tile->tag)) { in nv35_fb_tile_comp()
39 tile->zcomp |= ((tile->tag->offset + tags - 1) >> 6) << 13; in nv35_fb_tile_comp()
48 .tags = nv20_fb_tags,
A Dnv36.c34 u32 tags = round_up(tiles / fb->ram->parts, 0x40); in nv36_fb_tile_comp() local
35 if (!nvkm_mm_head(&fb->tags.mm, 0, 1, tags, tags, 1, &tile->tag)) { in nv36_fb_tile_comp()
39 tile->zcomp |= ((tile->tag->offset + tags - 1) >> 6) << 14; in nv36_fb_tile_comp()
48 .tags = nv20_fb_tags,
A Dnv40.c34 u32 tags = round_up(tiles / fb->ram->parts, 0x100); in nv40_fb_tile_comp() local
36 !nvkm_mm_head(&fb->tags.mm, 0, 1, tags, tags, 1, &tile->tag)) { in nv40_fb_tile_comp()
39 tile->zcomp |= ((tile->tag->offset + tags - 1) >> 8) << 13; in nv40_fb_tile_comp()
54 .tags = nv20_fb_tags,
A Dbase.c100 u32 tags = 0; in nvkm_fb_oneinit() local
120 if (fb->func->tags) { in nvkm_fb_oneinit()
121 tags = fb->func->tags(fb); in nvkm_fb_oneinit()
122 nvkm_debug(subdev, "%d comptags\n", tags); in nvkm_fb_oneinit()
125 return nvkm_mm_init(&fb->tags.mm, 0, 0, tags, 1); in nvkm_fb_oneinit()
208 nvkm_mm_fini(&fb->tags.mm); in nvkm_fb_dtor()
209 mutex_destroy(&fb->tags.mutex); in nvkm_fb_dtor()
236 mutex_init(&fb->tags.mutex); in nvkm_fb_ctor()
A Dnv25.c34 u32 tags = round_up(tiles / fb->ram->parts, 0x40); in nv25_fb_tile_comp() local
35 if (!nvkm_mm_head(&fb->tags.mm, 0, 1, tags, tags, 1, &tile->tag)) { in nv25_fb_tile_comp()
47 .tags = nv20_fb_tags,
A Dnv30.c53 u32 tags = round_up(tiles / fb->ram->parts, 0x40); in nv30_fb_tile_comp() local
54 if (!nvkm_mm_head(&fb->tags.mm, 0, 1, tags, tags, 1, &tile->tag)) { in nv30_fb_tile_comp()
58 tile->zcomp |= ((tile->tag->offset + tags - 1) >> 6) << 12; in nv30_fb_tile_comp()
119 .tags = nv20_fb_tags,
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/volt/
A Dgpio.c30 static const u8 tags[] = { variable
42 for (i = 0; i < ARRAY_SIZE(tags); i++) { in nvkm_voltgpio_get()
44 int ret = nvkm_gpio_get(gpio, 0, tags[i], 0xff); in nvkm_voltgpio_get()
60 for (i = 0; i < ARRAY_SIZE(tags); i++, vid >>= 1) { in nvkm_voltgpio_set()
62 int ret = nvkm_gpio_set(gpio, 0, tags[i], 0xff, vid & 1); in nvkm_voltgpio_set()
85 for (i = 0; i < ARRAY_SIZE(tags); i++) { in nvkm_voltgpio_init()
87 int ret = nvkm_gpio_find(gpio, 0, tags[i], 0xff, &func); in nvkm_voltgpio_init()
/linux/arch/sparc/kernel/
A Dadi_64.c160 unsigned char *tags; in alloc_tag_store() local
284 tags = kzalloc(size, GFP_NOWAIT|__GFP_NOWARN); in alloc_tag_store()
285 if (tags == NULL) { in alloc_tag_store()
291 tag_desc->tags = tags; in alloc_tag_store()
302 unsigned char *tags = NULL; in del_tag_store() local
313 tags = tag_desc->tags; in del_tag_store()
314 tag_desc->tags = NULL; in del_tag_store()
318 kfree(tags); in del_tag_store()
322 ((tag_desc)->tags + ((addr - (tag_desc)->start)/(2*adi_blksize())))
/linux/Documentation/arm64/
A Dmemory-tagging-extension.rst36 To access the allocation tags, a user process must enable the Tagged
40 ``PROT_MTE`` - Pages allow access to the MTE allocation tags.
44 supported and the allocation tags can be shared between processes.
62 the logical and allocation tags occurs on access, there are three
120 excludes all tags other than 0. A user thread can enable specific tags
162 - ``PR_MTE_TAG_MASK`` set to 0 (all tags excluded)
175 the tags from or set the tags to a tracee's address space. The
197 tracer's space cannot be accessed or does not have valid tags.
200 address) and no tags copied. ``iov_len`` not updated.
288 * non-zero tags in the randomly generated set.
[all …]
/linux/tools/testing/selftests/arm64/mte/
A Dmte_common_util.c121 bool tags, int fd) in __mte_allocate_memory_range() argument
156 if (tags) in __mte_allocate_memory_range()
168 void *mte_allocate_memory(size_t size, int mem_type, int mapping, bool tags) in mte_allocate_memory() argument
170 return __mte_allocate_memory_range(size, mem_type, mapping, 0, 0, tags, -1); in mte_allocate_memory()
173 void *mte_allocate_file_memory(size_t size, int mem_type, int mapping, bool tags, int fd) in mte_allocate_file_memory() argument
195 return __mte_allocate_memory_range(size, mem_type, mapping, 0, 0, tags, fd); in mte_allocate_file_memory()
226 size_t range_before, size_t range_after, bool tags) in __mte_free_memory_range() argument
234 if (tags) in __mte_free_memory_range()
250 void mte_free_memory(void *ptr, size_t size, int mem_type, bool tags) in mte_free_memory() argument
252 __mte_free_memory_range(ptr, size, mem_type, 0, 0, tags); in mte_free_memory()
A Dmte_common_util.h45 void *mte_allocate_memory(size_t size, int mem_type, int mapping, bool tags);
49 bool tags, int fd);
52 void mte_free_memory(void *ptr, size_t size, int mem_type, bool tags);
85 int mem_type, bool tags) in check_allocated_memory() argument
92 if (tags && !MT_FETCH_TAG((uintptr_t)ptr)) { in check_allocated_memory()
/linux/arch/arm64/kernel/
A Dmte.c348 unsigned long tags, offset; in __access_remote_tags() local
373 tags = min(len, (PAGE_SIZE - offset) / MTE_GRANULE_SIZE); in __access_remote_tags()
377 tags = mte_copy_tags_from_user(maddr + offset, buf, tags); in __access_remote_tags()
380 tags = mte_copy_tags_to_user(buf, maddr + offset, tags); in __access_remote_tags()
385 if (!tags) in __access_remote_tags()
388 len -= tags; in __access_remote_tags()
389 buf += tags; in __access_remote_tags()
390 addr += tags * MTE_GRANULE_SIZE; in __access_remote_tags()
A Dhibernate.c249 void *tags; in swsusp_mte_free_storage() local
252 xas_for_each(&xa_state, tags, ULONG_MAX) { in swsusp_mte_free_storage()
253 mte_free_tag_storage(tags); in swsusp_mte_free_storage()
300 void *tags; in swsusp_mte_restore_tags() local
303 xas_for_each(&xa_state, tags, ULONG_MAX) { in swsusp_mte_restore_tags()
312 mte_restore_page_tags(page_address(page), tags); in swsusp_mte_restore_tags()
314 mte_free_tag_storage(tags); in swsusp_mte_restore_tags()
/linux/include/linux/
A Dradix-tree.h109 unsigned long tags; member
343 iter->tags = 0; in radix_tree_iter_retry()
401 iter->tags >>= 1; in radix_tree_next_slot()
402 if (unlikely(!iter->tags)) in radix_tree_next_slot()
404 if (likely(iter->tags & 1ul)) { in radix_tree_next_slot()
410 unsigned offset = __ffs(iter->tags); in radix_tree_next_slot()
412 iter->tags >>= offset++; in radix_tree_next_slot()
/linux/Documentation/sparc/
A Dadi.rst6 ADI allows a task to set version tags on any subset of its address
7 space. Once ADI is enabled and version tags are set for ranges of
26 be repeated for entire page to set tags for entire page.
34 SPARC M7 processor, MMU uses bits 63-60 for version tags and ADI block
41 kernel sets the PSTATE.mcde bit fot the task. Version tags for memory
62 tags are stored in physical memory. Tags are set on a physical page
69 version tags as well for the page. If a page allocated to a task is
75 - Kernel does not set any tags for user pages and it is entirely a
77 version tags are preserved if a page is swapped out to the disk and
78 swapped back in. It also preserves that version tags if a page is
[all …]
/linux/drivers/block/
A Dps3vram.c64 struct ps3vram_tag *tags; member
317 cache->tags[entry].address); in ps3vram_cache_evict()
319 cache->tags[entry].address, DMA_PAGE_SIZE, in ps3vram_cache_evict()
326 cache->tags[entry].flags &= ~CACHE_PAGE_DIRTY; in ps3vram_cache_evict()
345 cache->tags[entry].address = address; in ps3vram_cache_load()
359 cache->tags[i].flags = 0; in ps3vram_cache_flush()
379 cache->tags[i].address == base) { in ps3vram_cache_match()
382 cache->tags[i].address); in ps3vram_cache_match()
404 priv->cache.tags = kcalloc(CACHE_PAGE_COUNT, in ps3vram_cache_init()
407 if (!priv->cache.tags) in ps3vram_cache_init()
[all …]

Completed in 53 milliseconds

12345678910>>...99