/linux-5.19.10/tools/testing/selftests/sync/ |
D | sync_alloc.c | 34 int timeline, valid; in test_alloc_timeline() local 36 timeline = sw_sync_timeline_create(); in test_alloc_timeline() 37 valid = sw_sync_timeline_is_valid(timeline); in test_alloc_timeline() 40 sw_sync_timeline_destroy(timeline); in test_alloc_timeline() 46 int timeline, fence, valid; in test_alloc_fence() local 48 timeline = sw_sync_timeline_create(); in test_alloc_fence() 49 valid = sw_sync_timeline_is_valid(timeline); in test_alloc_fence() 52 fence = sw_sync_fence_create(timeline, "allocFence", 1); in test_alloc_fence() 57 sw_sync_timeline_destroy(timeline); in test_alloc_fence() 63 int fence, timeline; in test_alloc_fence_negative() local [all …]
|
D | sync_fence.c | 35 int timeline = sw_sync_timeline_create(); in test_fence_one_timeline_wait() local 37 valid = sw_sync_timeline_is_valid(timeline); in test_fence_one_timeline_wait() 40 fence = sw_sync_fence_create(timeline, "allocFence", 5); in test_fence_one_timeline_wait() 49 ret = sw_sync_timeline_inc(timeline, 1); in test_fence_one_timeline_wait() 57 ret = sw_sync_timeline_inc(timeline, 4); in test_fence_one_timeline_wait() 65 ret = sw_sync_timeline_inc(timeline, 10); in test_fence_one_timeline_wait() 71 sw_sync_timeline_destroy(timeline); in test_fence_one_timeline_wait() 79 int timeline = sw_sync_timeline_create(); in test_fence_one_timeline_merge() local 82 a = sw_sync_fence_create(timeline, "allocFence", 1); in test_fence_one_timeline_merge() 83 b = sw_sync_fence_create(timeline, "allocFence", 2); in test_fence_one_timeline_merge() [all …]
|
D | sync_stress_parallelism.c | 36 int timeline; member 43 int timeline = test_data_two_threads.timeline; in test_stress_two_threads_shared_timeline_thread() local 48 fence = sw_sync_fence_create(timeline, "fence", in test_stress_two_threads_shared_timeline_thread() 66 ret = sw_sync_timeline_inc(timeline, 1); in test_stress_two_threads_shared_timeline_thread() 79 int timeline = sw_sync_timeline_create(); in test_stress_two_threads_shared_timeline() local 81 valid = sw_sync_timeline_is_valid(timeline); in test_stress_two_threads_shared_timeline() 86 test_data_two_threads.timeline = timeline; in test_stress_two_threads_shared_timeline() 108 sw_sync_timeline_destroy(timeline); in test_stress_two_threads_shared_timeline()
|
D | sync_merge.c | 35 int timeline = sw_sync_timeline_create(); in test_fence_merge_same_fence() local 37 valid = sw_sync_timeline_is_valid(timeline); in test_fence_merge_same_fence() 40 fence = sw_sync_fence_create(timeline, "allocFence", 5); in test_fence_merge_same_fence() 51 sw_sync_timeline_inc(timeline, 5); in test_fence_merge_same_fence() 57 sw_sync_timeline_destroy(timeline); in test_fence_merge_same_fence()
|
/linux-5.19.10/drivers/gpu/drm/i915/gt/ |
D | intel_timeline.c | 58 intel_timeline_pin_map(struct intel_timeline *timeline) in intel_timeline_pin_map() argument 60 struct drm_i915_gem_object *obj = timeline->hwsp_ggtt->obj; in intel_timeline_pin_map() 61 u32 ofs = offset_in_page(timeline->hwsp_offset); in intel_timeline_pin_map() 68 timeline->hwsp_map = vaddr; in intel_timeline_pin_map() 69 timeline->hwsp_seqno = memset(vaddr + ofs, 0, TIMELINE_SEQNO_BYTES); in intel_timeline_pin_map() 75 static int intel_timeline_init(struct intel_timeline *timeline, in intel_timeline_init() argument 80 kref_init(&timeline->kref); in intel_timeline_init() 81 atomic_set(&timeline->pin_count, 0); in intel_timeline_init() 83 timeline->gt = gt; in intel_timeline_init() 86 timeline->hwsp_offset = offset; in intel_timeline_init() [all …]
|
D | intel_context.c | 173 err = intel_timeline_pin(ce->timeline, ww); in intel_context_pre_pin() 188 intel_timeline_unpin(ce->timeline); in intel_context_pre_pin() 199 intel_timeline_unpin(ce->timeline); in intel_context_post_unpin() 222 err = i915_gem_object_lock(ce->timeline->hwsp_ggtt->obj, ww); in __intel_context_do_pin_ww() 291 i915_gem_ww_unlock_single(ce->timeline->hwsp_ggtt->obj); in __intel_context_do_pin_ww() 357 __intel_timeline_pin(ce->timeline); in __intel_context_active() 426 if (ce->timeline) in intel_context_fini() 427 intel_timeline_put(ce->timeline); in intel_context_fini() 457 intel_timeline_enter(ce->timeline); in intel_context_enter_engine() 462 intel_timeline_exit(ce->timeline); in intel_context_exit_engine() [all …]
|
D | intel_timeline.h | 33 intel_timeline_get(struct intel_timeline *timeline) in intel_timeline_get() argument 35 kref_get(&timeline->kref); in intel_timeline_get() 36 return timeline; in intel_timeline_get() 40 static inline void intel_timeline_put(struct intel_timeline *timeline) in intel_timeline_put() argument 42 kref_put(&timeline->kref, __intel_timeline_free); in intel_timeline_put()
|
D | intel_engine_pm.c | 68 ce->timeline->seqno, in __engine_unpark() 69 READ_ONCE(*ce->timeline->hwsp_seqno), in __engine_unpark() 71 GEM_BUG_ON(ce->timeline->seqno != in __engine_unpark() 72 READ_ONCE(*ce->timeline->hwsp_seqno)); in __engine_unpark() 149 GEM_BUG_ON(ce->timeline->hwsp_ggtt != engine->status_page.vma); in switch_to_kernel_context() 184 GEM_BUG_ON(atomic_read(&ce->timeline->active_count) < 0); in switch_to_kernel_context() 211 __queue_and_release_pm(rq, ce->timeline, engine); in switch_to_kernel_context()
|
D | intel_engine_heartbeat.c | 184 if (!mutex_trylock(&ce->timeline->mutex)) { in heartbeat() 201 mutex_unlock(&ce->timeline->mutex); in heartbeat() 252 lockdep_assert_held(&ce->timeline->mutex); in __intel_engine_pulse() 293 err = mutex_lock_interruptible(&ce->timeline->mutex); in intel_engine_set_heartbeat() 308 mutex_unlock(&ce->timeline->mutex); in intel_engine_set_heartbeat() 327 if (!mutex_lock_interruptible(&ce->timeline->mutex)) { in intel_engine_pulse() 329 mutex_unlock(&ce->timeline->mutex); in intel_engine_pulse() 350 if (mutex_lock_interruptible(&ce->timeline->mutex)) { in intel_engine_flush_barriers() 365 mutex_unlock(&ce->timeline->mutex); in intel_engine_flush_barriers()
|
D | intel_context.h | 24 ce__->timeline->fence_context, \ 207 lockdep_assert_held(&ce->timeline->mutex); in intel_context_enter() 214 lockdep_assert(lockdep_is_held(&ce->timeline->mutex) || in intel_context_mark_active() 221 lockdep_assert_held(&ce->timeline->mutex); in intel_context_exit() 240 __acquires(&ce->timeline->mutex) in intel_context_timeline_lock() 242 struct intel_timeline *tl = ce->timeline; in intel_context_timeline_lock()
|
/linux-5.19.10/drivers/gpu/drm/i915/gt/selftests/ |
D | mock_timeline.c | 11 void mock_timeline_init(struct intel_timeline *timeline, u64 context) in mock_timeline_init() argument 13 timeline->gt = NULL; in mock_timeline_init() 14 timeline->fence_context = context; in mock_timeline_init() 16 mutex_init(&timeline->mutex); in mock_timeline_init() 18 INIT_ACTIVE_FENCE(&timeline->last_request); in mock_timeline_init() 19 INIT_LIST_HEAD(&timeline->requests); in mock_timeline_init() 21 i915_syncmap_init(&timeline->sync); in mock_timeline_init() 23 INIT_LIST_HEAD(&timeline->link); in mock_timeline_init() 26 void mock_timeline_fini(struct intel_timeline *timeline) in mock_timeline_fini() argument 28 i915_syncmap_free(&timeline->sync); in mock_timeline_fini()
|
/linux-5.19.10/tools/power/pm-graph/config/ |
D | custom-timeline-functions.cfg | 29 # graph source functions in the timeline (default: false) 33 # gather detailed ftrace callgraph data on all timeline events (default: false) 45 # graph only devices longer than min in the timeline (default: 0.001 ms) 53 # insert a small visible gap between suspend and resume on the timeline (default: false) 60 # Override default timeline entries 61 # Do not use the internal default functions for timeline entries (default: false) 63 override-timeline-functions: true 65 # Override default dev timeline entries 66 # Do not use the internal default functions for dev timeline entries (default: false) 68 override-dev-timeline-functions: true [all …]
|
D | example.cfg | 37 # insert a small visible gap between suspend and resume on the timeline (default: false) 41 # Only capture the logs, don't generate the html timeline (default: false) 70 # graph user processes and cpu usage in the timeline (default: false) 74 # graph source functions in the timeline (default: false) 82 # Run two suspend/resumes back to back and display in the same timeline (default: false) 98 # graph only devices longer than min in the timeline (default: 0.001 ms) 109 # Override default timeline entries: 110 # Do not use the internal default functions for timeline entries (def: false) 112 override-timeline-functions: true 114 # Override default dev timeline entries: [all …]
|
D | standby.cfg | 37 # insert a small visible gap between suspend and resume on the timeline (default: false) 46 # graph user processes and cpu usage in the timeline (default: false) 50 # graph source functions in the timeline (default: false) 70 # graph only devices longer than min in the timeline (default: 0.001 ms) 76 # gather detailed ftrace callgraph data on all timeline events (default: false)
|
D | freeze.cfg | 37 # insert a small visible gap between suspend and resume on the timeline (default: false) 46 # graph user processes and cpu usage in the timeline (default: false) 50 # graph source functions in the timeline (default: false) 70 # graph only devices longer than min in the timeline (default: 0.001 ms) 76 # gather detailed ftrace callgraph data on all timeline events (default: false)
|
D | freeze-dev.cfg | 37 # insert a small visible gap between suspend and resume on the timeline (default: false) 46 # graph user processes and cpu usage in the timeline (default: false) 50 # graph source functions in the timeline (default: false) 70 # graph only devices longer than min in the timeline (default: 0.001 ms) 76 # gather detailed ftrace callgraph data on all timeline events (default: false)
|
D | freeze-callgraph.cfg | 38 # insert a small visible gap between suspend and resume on the timeline (default: false) 47 # graph user processes and cpu usage in the timeline (default: false) 51 # graph source functions in the timeline (default: false) 71 # graph only devices longer than min in the timeline (default: 0.001 ms) 77 # gather detailed ftrace callgraph data on all timeline events (default: false)
|
D | standby-callgraph.cfg | 38 # insert a small visible gap between suspend and resume on the timeline (default: false) 47 # graph user processes and cpu usage in the timeline (default: false) 51 # graph source functions in the timeline (default: false) 71 # graph only devices longer than min in the timeline (default: 0.001 ms) 77 # gather detailed ftrace callgraph data on all timeline events (default: false)
|
D | standby-dev.cfg | 37 # insert a small visible gap between suspend and resume on the timeline (default: false) 46 # graph user processes and cpu usage in the timeline (default: false) 50 # graph source functions in the timeline (default: false) 70 # graph only devices longer than min in the timeline (default: 0.001 ms) 76 # gather detailed ftrace callgraph data on all timeline events (default: false)
|
D | suspend-callgraph.cfg | 38 # insert a small visible gap between suspend and resume on the timeline (default: false) 47 # graph user processes and cpu usage in the timeline (default: false) 51 # graph source functions in the timeline (default: false) 71 # graph only devices longer than min in the timeline (default: 0.001 ms) 77 # gather detailed ftrace callgraph data on all timeline events (default: false)
|
/linux-5.19.10/drivers/dma-buf/ |
D | sync_trace.h | 13 TP_PROTO(struct sync_timeline *timeline), 15 TP_ARGS(timeline), 18 __string(name, timeline->name) 23 __assign_str(name, timeline->name); 24 __entry->value = timeline->value;
|
/linux-5.19.10/tools/power/pm-graph/ |
D | README | 142 be used to regenerate the html timeline with different options 154 Developer mode adds information on low level source calls to the timeline. 157 subsystem dependent calls to better fill out the timeline. 160 timeline. This is useful in discovering dependent threads to get a better 165 The timeline will be much larger if run with dev mode, so it can be useful 179 Proc mode adds user process info to the timeline. This is done in a manner 240 Add kernel source calls and threads to the timeline (default: disabled). 252 Run the test and capture the trace logs, but skip the timeline and summary 279 or you can skip timeline generation in order to speed things up 284 Each test subfolder contains the dmesg/ftrace logs and/or the html timeline [all …]
|
/linux-5.19.10/drivers/gpu/drm/i915/gem/ |
D | i915_gem_throttle.c | 66 if (!ce->timeline) in i915_gem_throttle_ioctl() 69 mutex_lock(&ce->timeline->mutex); in i915_gem_throttle_ioctl() 71 &ce->timeline->requests, in i915_gem_throttle_ioctl() 83 mutex_unlock(&ce->timeline->mutex); in i915_gem_throttle_ioctl()
|
/linux-5.19.10/drivers/gpu/drm/i915/ |
D | i915_active.c | 30 u64 timeline; member 158 ref->cache->timeline = 0; /* needs cmpxchg(u64) */ in __active_retire() 248 u64 cached = READ_ONCE(it->timeline); in __active_lookup() 264 if (!cached && !cmpxchg64(&it->timeline, 0, idx)) in __active_lookup() 275 if (it->timeline < idx) { in __active_lookup() 277 } else if (it->timeline > idx) { in __active_lookup() 308 if (node->timeline == idx) in active_instance() 311 if (node->timeline < idx) in active_instance() 327 node->timeline = idx; in active_instance() 374 GEM_BUG_ON(node->timeline != engine->kernel_context->timeline->fence_context); in ____active_del_barrier() [all …]
|
/linux-5.19.10/include/trace/events/ |
D | dma_fence.h | 20 __string(timeline, fence->ops->get_timeline_name(fence)) 27 __assign_str(timeline, fence->ops->get_timeline_name(fence)); 33 __get_str(driver), __get_str(timeline), __entry->context,
|