Home
last modified time | relevance | path

Searched refs:gang (Results 1 - 23 of 23) sorted by relevance

/kernel/linux/linux-5.10/arch/powerpc/platforms/cell/spufs/
H A Dgang.c17 struct spu_gang *gang; in alloc_spu_gang() local
19 gang = kzalloc(sizeof *gang, GFP_KERNEL); in alloc_spu_gang()
20 if (!gang) in alloc_spu_gang()
23 kref_init(&gang->kref); in alloc_spu_gang()
24 mutex_init(&gang->mutex); in alloc_spu_gang()
25 mutex_init(&gang->aff_mutex); in alloc_spu_gang()
26 INIT_LIST_HEAD(&gang->list); in alloc_spu_gang()
27 INIT_LIST_HEAD(&gang->aff_list_head); in alloc_spu_gang()
30 return gang; in alloc_spu_gang()
35 struct spu_gang *gang; destroy_spu_gang() local
41 get_spu_gang(struct spu_gang *gang) get_spu_gang() argument
47 put_spu_gang(struct spu_gang *gang) put_spu_gang() argument
52 spu_gang_add_ctx(struct spu_gang *gang, struct spu_context *ctx) spu_gang_add_ctx() argument
61 spu_gang_remove_ctx(struct spu_gang *gang, struct spu_context *ctx) spu_gang_remove_ctx() argument
[all...]
H A Dsched.c258 static void aff_merge_remaining_ctxs(struct spu_gang *gang) in aff_merge_remaining_ctxs() argument
262 list_for_each_entry(ctx, &gang->aff_list_head, aff_list) { in aff_merge_remaining_ctxs()
264 list_add(&ctx->aff_list, &gang->aff_list_head); in aff_merge_remaining_ctxs()
266 gang->aff_flags |= AFF_MERGED; in aff_merge_remaining_ctxs()
269 static void aff_set_offsets(struct spu_gang *gang) in aff_set_offsets() argument
275 list_for_each_entry_reverse(ctx, &gang->aff_ref_ctx->aff_list, in aff_set_offsets()
277 if (&ctx->aff_list == &gang->aff_list_head) in aff_set_offsets()
283 list_for_each_entry(ctx, gang->aff_ref_ctx->aff_list.prev, aff_list) { in aff_set_offsets()
284 if (&ctx->aff_list == &gang->aff_list_head) in aff_set_offsets()
289 gang in aff_set_offsets()
344 aff_set_ref_point_location(struct spu_gang *gang) aff_set_ref_point_location() argument
400 struct spu_gang *gang = ctx->gang; has_affinity() local
[all...]
H A Dinode.c242 ctx = alloc_spu_context(SPUFS_I(dir)->i_gang); /* XXX gang */ in spufs_mkdir()
300 spufs_assert_affinity(unsigned int flags, struct spu_gang *gang, in spufs_assert_affinity() argument
317 gang->aff_ref_ctx && in spufs_assert_affinity()
318 gang->aff_ref_ctx->flags & SPU_CREATE_AFFINITY_MEM) in spufs_assert_affinity()
321 if (gang->aff_flags & AFF_MERGED) in spufs_assert_affinity()
333 !list_is_last(&neighbor->aff_list, &gang->aff_list_head) && in spufs_assert_affinity()
340 if (gang != neighbor->gang) { in spufs_assert_affinity()
346 list_for_each_entry(tmp, &gang->aff_list_head, aff_list) in spufs_assert_affinity()
375 ctx->gang in spufs_set_affinity()
408 struct spu_gang *gang; spufs_create_context() local
464 struct spu_gang *gang; spufs_mkgang() local
[all...]
H A Dcontext.c25 struct spu_context *alloc_spu_context(struct spu_gang *gang) in alloc_spu_context() argument
52 if (gang) in alloc_spu_context()
53 spu_gang_add_ctx(gang, ctx); in alloc_spu_context()
78 if (ctx->gang) in destroy_spu_context()
79 spu_gang_remove_ctx(ctx->gang, ctx); in destroy_spu_context()
H A Dspufs.h100 struct spu_gang *gang; member
243 /* gang management */
245 struct spu_gang *get_spu_gang(struct spu_gang *gang);
246 int put_spu_gang(struct spu_gang *gang);
247 void spu_gang_remove_ctx(struct spu_gang *gang, struct spu_context *ctx);
248 void spu_gang_add_ctx(struct spu_gang *gang, struct spu_context *ctx);
269 struct spu_context * alloc_spu_context(struct spu_gang *gang);
H A DMakefile5 spufs-y += sched.o backing_ops.o hw_ops.o run.o gang.o
/kernel/linux/linux-6.6/arch/powerpc/platforms/cell/spufs/
H A Dgang.c17 struct spu_gang *gang; in alloc_spu_gang() local
19 gang = kzalloc(sizeof *gang, GFP_KERNEL); in alloc_spu_gang()
20 if (!gang) in alloc_spu_gang()
23 kref_init(&gang->kref); in alloc_spu_gang()
24 mutex_init(&gang->mutex); in alloc_spu_gang()
25 mutex_init(&gang->aff_mutex); in alloc_spu_gang()
26 INIT_LIST_HEAD(&gang->list); in alloc_spu_gang()
27 INIT_LIST_HEAD(&gang->aff_list_head); in alloc_spu_gang()
30 return gang; in alloc_spu_gang()
35 struct spu_gang *gang; destroy_spu_gang() local
41 get_spu_gang(struct spu_gang *gang) get_spu_gang() argument
47 put_spu_gang(struct spu_gang *gang) put_spu_gang() argument
52 spu_gang_add_ctx(struct spu_gang *gang, struct spu_context *ctx) spu_gang_add_ctx() argument
61 spu_gang_remove_ctx(struct spu_gang *gang, struct spu_context *ctx) spu_gang_remove_ctx() argument
[all...]
H A Dsched.c254 static void aff_merge_remaining_ctxs(struct spu_gang *gang) in aff_merge_remaining_ctxs() argument
258 list_for_each_entry(ctx, &gang->aff_list_head, aff_list) { in aff_merge_remaining_ctxs()
260 list_add(&ctx->aff_list, &gang->aff_list_head); in aff_merge_remaining_ctxs()
262 gang->aff_flags |= AFF_MERGED; in aff_merge_remaining_ctxs()
265 static void aff_set_offsets(struct spu_gang *gang) in aff_set_offsets() argument
271 list_for_each_entry_reverse(ctx, &gang->aff_ref_ctx->aff_list, in aff_set_offsets()
273 if (&ctx->aff_list == &gang->aff_list_head) in aff_set_offsets()
279 list_for_each_entry(ctx, gang->aff_ref_ctx->aff_list.prev, aff_list) { in aff_set_offsets()
280 if (&ctx->aff_list == &gang->aff_list_head) in aff_set_offsets()
285 gang in aff_set_offsets()
340 aff_set_ref_point_location(struct spu_gang *gang) aff_set_ref_point_location() argument
395 struct spu_gang *gang = ctx->gang; has_affinity() local
[all...]
H A Dinode.c241 ctx = alloc_spu_context(SPUFS_I(dir)->i_gang); /* XXX gang */ in spufs_mkdir()
299 spufs_assert_affinity(unsigned int flags, struct spu_gang *gang, in spufs_assert_affinity() argument
316 gang->aff_ref_ctx && in spufs_assert_affinity()
317 gang->aff_ref_ctx->flags & SPU_CREATE_AFFINITY_MEM) in spufs_assert_affinity()
320 if (gang->aff_flags & AFF_MERGED) in spufs_assert_affinity()
332 !list_is_last(&neighbor->aff_list, &gang->aff_list_head) && in spufs_assert_affinity()
339 if (gang != neighbor->gang) { in spufs_assert_affinity()
345 list_for_each_entry(tmp, &gang->aff_list_head, aff_list) in spufs_assert_affinity()
374 ctx->gang in spufs_set_affinity()
407 struct spu_gang *gang; spufs_create_context() local
463 struct spu_gang *gang; spufs_mkgang() local
[all...]
H A Dcontext.c25 struct spu_context *alloc_spu_context(struct spu_gang *gang) in alloc_spu_context() argument
52 if (gang) in alloc_spu_context()
53 spu_gang_add_ctx(gang, ctx); in alloc_spu_context()
78 if (ctx->gang) in destroy_spu_context()
79 spu_gang_remove_ctx(ctx->gang, ctx); in destroy_spu_context()
H A Dspufs.h100 struct spu_gang *gang; member
243 /* gang management */
245 struct spu_gang *get_spu_gang(struct spu_gang *gang);
246 int put_spu_gang(struct spu_gang *gang);
247 void spu_gang_remove_ctx(struct spu_gang *gang, struct spu_context *ctx);
248 void spu_gang_add_ctx(struct spu_gang *gang, struct spu_context *ctx);
269 struct spu_context * alloc_spu_context(struct spu_gang *gang);
H A DMakefile5 spufs-y += sched.o backing_ops.o hw_ops.o run.o gang.o
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_mes.c281 struct amdgpu_mes_gang *gang, *tmp1; in amdgpu_mes_destroy_process() local
301 list_for_each_entry_safe(gang, tmp1, &process->gang_list, list) { in amdgpu_mes_destroy_process()
302 list_for_each_entry_safe(queue, tmp2, &gang->queue_list, list) { in amdgpu_mes_destroy_process()
308 queue_input.gang_context_addr = gang->gang_ctx_gpu_addr; in amdgpu_mes_destroy_process()
316 idr_remove(&adev->mes.gang_id_idr, gang->gang_id); in amdgpu_mes_destroy_process()
323 list_for_each_entry_safe(gang, tmp1, &process->gang_list, list) { in amdgpu_mes_destroy_process()
324 /* free all queues in the gang */ in amdgpu_mes_destroy_process()
325 list_for_each_entry_safe(queue, tmp2, &gang->queue_list, list) { in amdgpu_mes_destroy_process()
330 amdgpu_bo_free_kernel(&gang->gang_ctx_bo, in amdgpu_mes_destroy_process()
331 &gang in amdgpu_mes_destroy_process()
348 struct amdgpu_mes_gang *gang; amdgpu_mes_add_gang() local
417 struct amdgpu_mes_gang *gang; amdgpu_mes_remove_gang() local
455 struct amdgpu_mes_gang *gang; amdgpu_mes_suspend() local
484 struct amdgpu_mes_gang *gang; amdgpu_mes_resume() local
581 struct amdgpu_mes_gang *gang; amdgpu_mes_add_hw_queue() local
701 struct amdgpu_mes_gang *gang; amdgpu_mes_remove_hw_queue() local
999 struct amdgpu_mes_gang *gang; amdgpu_mes_add_ring() local
[all...]
H A Damdgpu_mes.h169 struct amdgpu_mes_gang *gang; member
H A Damdgpu.h1331 struct dma_fence *gang);
H A Damdgpu_device.c5953 * amdgpu_device_switch_gang - switch to a new gang
5955 * @gang: the gang to switch to
5957 * Try to switch to a new gang.
5958 * Returns: NULL if we switched to the new gang or a reference to the current
5959 * gang leader.
5962 struct dma_fence *gang) in amdgpu_device_switch_gang()
5972 if (old == gang) in amdgpu_device_switch_gang()
5979 old, gang) != old); in amdgpu_device_switch_gang()
5961 amdgpu_device_switch_gang(struct amdgpu_device *adev, struct dma_fence *gang) amdgpu_device_switch_gang() argument
/kernel/linux/linux-5.10/drivers/perf/
H A Dqcom_l3_pmu.c198 u32 gang; in qcom_l3_cache__64bit_counter_start() local
201 gang = readl_relaxed(l3pmu->regs + L3_M_BC_GANG); in qcom_l3_cache__64bit_counter_start()
202 gang |= GANG_EN(idx + 1); in qcom_l3_cache__64bit_counter_start()
203 writel_relaxed(gang, l3pmu->regs + L3_M_BC_GANG); in qcom_l3_cache__64bit_counter_start()
229 u32 gang = readl_relaxed(l3pmu->regs + L3_M_BC_GANG); in qcom_l3_cache__64bit_counter_stop() local
236 writel_relaxed(gang & ~GANG_EN(idx + 1), l3pmu->regs + L3_M_BC_GANG); in qcom_l3_cache__64bit_counter_stop()
/kernel/linux/linux-6.6/drivers/perf/
H A Dqcom_l3_pmu.c198 u32 gang; in qcom_l3_cache__64bit_counter_start() local
201 gang = readl_relaxed(l3pmu->regs + L3_M_BC_GANG); in qcom_l3_cache__64bit_counter_start()
202 gang |= GANG_EN(idx + 1); in qcom_l3_cache__64bit_counter_start()
203 writel_relaxed(gang, l3pmu->regs + L3_M_BC_GANG); in qcom_l3_cache__64bit_counter_start()
229 u32 gang = readl_relaxed(l3pmu->regs + L3_M_BC_GANG); in qcom_l3_cache__64bit_counter_stop() local
236 writel_relaxed(gang & ~GANG_EN(idx + 1), l3pmu->regs + L3_M_BC_GANG); in qcom_l3_cache__64bit_counter_stop()
/kernel/linux/linux-6.6/fs/btrfs/
H A Ddisk-io.c1842 struct btrfs_root *gang[8]; in btrfs_free_fs_roots() local
1846 gang[0] = list_entry(fs_info->dead_roots.next, in btrfs_free_fs_roots()
1848 list_del(&gang[0]->root_list); in btrfs_free_fs_roots()
1850 if (test_bit(BTRFS_ROOT_IN_RADIX, &gang[0]->state)) in btrfs_free_fs_roots()
1851 btrfs_drop_and_free_fs_root(fs_info, gang[0]); in btrfs_free_fs_roots()
1852 btrfs_put_root(gang[0]); in btrfs_free_fs_roots()
1857 (void **)gang, 0, in btrfs_free_fs_roots()
1858 ARRAY_SIZE(gang)); in btrfs_free_fs_roots()
1862 btrfs_drop_and_free_fs_root(fs_info, gang[i]); in btrfs_free_fs_roots()
2878 struct btrfs_root *gang[ in btrfs_cleanup_fs_roots() local
4520 struct btrfs_root *gang[8]; btrfs_drop_all_logs() local
4850 struct btrfs_root *gang[8]; btrfs_free_all_qgroup_pertrans() local
[all...]
H A Dextent_io.c4562 struct extent_buffer *gang[GANG_LOOKUP_SIZE]; in get_next_extent_buffer() local
4575 (void **)gang, cur >> fs_info->sectorsize_bits, in get_next_extent_buffer()
4582 if (gang[i]->start >= page_start + PAGE_SIZE) in get_next_extent_buffer()
4585 if (gang[i]->start >= bytenr) { in get_next_extent_buffer()
4586 found = gang[i]; in get_next_extent_buffer()
4590 cur = gang[ret - 1]->start + gang[ret - 1]->len; in get_next_extent_buffer()
H A Dtransaction.c1420 struct btrfs_root *gang[8]; in commit_fs_roots() local
1433 (void **)gang, 0, in commit_fs_roots()
1434 ARRAY_SIZE(gang), in commit_fs_roots()
1439 struct btrfs_root *root = gang[i]; in commit_fs_roots()
/kernel/linux/linux-5.10/fs/btrfs/
H A Ddisk-io.c2079 struct btrfs_root *gang[8]; in btrfs_free_fs_roots() local
2083 gang[0] = list_entry(fs_info->dead_roots.next, in btrfs_free_fs_roots()
2085 list_del(&gang[0]->root_list); in btrfs_free_fs_roots()
2087 if (test_bit(BTRFS_ROOT_IN_RADIX, &gang[0]->state)) in btrfs_free_fs_roots()
2088 btrfs_drop_and_free_fs_root(fs_info, gang[0]); in btrfs_free_fs_roots()
2089 btrfs_put_root(gang[0]); in btrfs_free_fs_roots()
2094 (void **)gang, 0, in btrfs_free_fs_roots()
2095 ARRAY_SIZE(gang)); in btrfs_free_fs_roots()
2099 btrfs_drop_and_free_fs_root(fs_info, gang[i]); in btrfs_free_fs_roots()
4032 struct btrfs_root *gang[ in btrfs_cleanup_fs_roots() local
4366 struct btrfs_root *gang[8]; btrfs_drop_all_logs() local
[all...]
H A Dtransaction.c1327 struct btrfs_root *gang[8]; in commit_fs_roots() local
1334 (void **)gang, 0, in commit_fs_roots()
1335 ARRAY_SIZE(gang), in commit_fs_roots()
1340 struct btrfs_root *root = gang[i]; in commit_fs_roots()

Completed in 40 milliseconds