| /linux/arch/arm64/include/asm/ |
| H A D | preempt.h | 12 return READ_ONCE(current_thread_info()->preempt.count); in preempt_count() 18 WRITE_ONCE(current_thread_info()->preempt.count, pc); in preempt_count_set() 31 current_thread_info()->preempt.need_resched = 0; in set_preempt_need_resched() 36 current_thread_info()->preempt.need_resched = 1; in clear_preempt_need_resched() 41 return !current_thread_info()->preempt.need_resched; in test_preempt_need_resched() 46 u32 pc = READ_ONCE(current_thread_info()->preempt.count); in __preempt_count_add() 48 WRITE_ONCE(current_thread_info()->preempt.count, pc); in __preempt_count_add() 53 u32 pc = READ_ONCE(current_thread_info()->preempt.count); in __preempt_count_sub() 55 WRITE_ONCE(current_thread_info()->preempt.count, pc); in __preempt_count_sub() 64 WRITE_ONCE(ti->preempt.count, --pc); in __preempt_count_dec_and_test()
|
| /linux/init/ |
| H A D | Makefile | 28 preempt-flag-$(CONFIG_PREEMPT_BUILD) := PREEMPT 29 preempt-flag-$(CONFIG_PREEMPT_DYNAMIC) := PREEMPT_DYNAMIC 30 preempt-flag-$(CONFIG_PREEMPT_RT) := PREEMPT_RT 37 …utsver=$$(echo '$(pound)'"$(build-version)" $(smp-flag-y) $(preempt-flag-y) "$(build-timestamp)" |…
|
| /linux/drivers/gpu/drm/msm/adreno/ |
| H A D | a5xx_preempt.c | 149 a5xx_gpu->preempt[ring->id]->wptr = get_wptr(ring); in a5xx_preempt_trigger() 231 a5xx_gpu->preempt[i]->data = 0; in a5xx_preempt_hw_init() 232 a5xx_gpu->preempt[i]->info = 0; in a5xx_preempt_hw_init() 233 a5xx_gpu->preempt[i]->wptr = 0; in a5xx_preempt_hw_init() 234 a5xx_gpu->preempt[i]->rptr = 0; in a5xx_preempt_hw_init() 235 a5xx_gpu->preempt[i]->rbase = gpu->rb[i]->iova; in a5xx_preempt_hw_init() 236 a5xx_gpu->preempt[i]->rptr_addr = shadowptr(a5xx_gpu, gpu->rb[i]); in a5xx_preempt_hw_init() 278 a5xx_gpu->preempt[ring->id] = ptr; in preempt_init_ring()
|
| /linux/include/linux/sched/ |
| H A D | wake_q.h | 70 guard(preempt)(); in raw_spin_unlock_wake() local 81 guard(preempt)(); in raw_spin_unlock_irq_wake() local 93 guard(preempt)(); in raw_spin_unlock_irqrestore_wake() local
|
| /linux/tools/testing/selftests/ftrace/test.d/preemptirq/ |
| H A D | irqsoff_tracer.tc | 36 modprobe $MOD test_mode=preempt delay=500000 || fail 38 modprobe $MOD test_mode=preempt delay=500000 || fail 40 modprobe $MOD test_mode=preempt delay=500000 || fail
|
| /linux/drivers/gpu/drm/xe/ |
| H A D | Kconfig.profile | 35 int "Default max preempt timeout (us)" 38 Configures the default max preempt timeout after which context 42 int "Default min preempt timeout (us)" 45 Configures the default min preempt timeout after which context
|
| H A D | xe_vm.h | 243 queue_work(vm->xe->ordered_wq, &vm->preempt.rebind_work); in xe_vm_queue_rebind_worker() 257 if (xe_vm_in_preempt_fence_mode(vm) && vm->preempt.rebind_deactivated) { in xe_vm_reactivate_rebind() 258 vm->preempt.rebind_deactivated = false; in xe_vm_reactivate_rebind()
|
| H A D | xe_vm.c | 71 list_for_each_entry(q, &vm->preempt.exec_queues, lr.link) { in preempt_fences_waiting() 96 if (*count >= vm->preempt.num_exec_queues) in alloc_preempt_fences() 99 for (; *count < vm->preempt.num_exec_queues; ++(*count)) { in alloc_preempt_fences() 117 list_for_each_entry(q, &vm->preempt.exec_queues, lr.link) { in wait_for_existing_preempt_fences() 138 list_for_each_entry(q, &vm->preempt.exec_queues, lr.link) { in xe_vm_is_idle() 151 list_for_each_entry(q, &vm->preempt.exec_queues, lr.link) { in arm_preempt_fences() 172 if (!vm->preempt.num_exec_queues) in add_preempt_fences() 175 err = dma_resv_reserve_fences(bo->ttm.base.resv, vm->preempt.num_exec_queues); in add_preempt_fences() 179 list_for_each_entry(q, &vm->preempt.exec_queues, lr.link) in add_preempt_fences() 197 list_for_each_entry(q, &vm->preempt.exec_queues, lr.link) { in resume_and_reinstall_preempt_fences() [all …]
|
| /linux/Documentation/locking/ |
| H A D | preempt-locking.rst | 53 Note, some FPU functions are already explicitly preempt safe. For example, 77 preempt_enable() decrement the preempt counter 78 preempt_disable() increment the preempt counter 79 preempt_enable_no_resched() decrement, but do not immediately preempt 81 preempt_count() return the preempt counter 85 call to preempt_enable. The preempt statements define to nothing if 94 a reschedule if the preempt count is 0. A simple printk() might trigger a 121 This code is not preempt-safe, but see how easily we can fix it by simply
|
| H A D | index.rst | 20 preempt-locking
|
| /linux/drivers/gpu/drm/nouveau/nvkm/engine/fifo/ |
| H A D | gk110.c | 41 cgrp->func->preempt(cgrp); in gk110_chan_preempt() 57 .preempt = gk110_chan_preempt, 68 .preempt = gk110_cgrp_preempt,
|
| H A D | chan.h | 52 void (*preempt)(struct nvkm_chan *); member 63 void nvkm_chan_error(struct nvkm_chan *, bool preempt); 65 void nvkm_chan_remove(struct nvkm_chan *, bool preempt);
|
| H A D | chan.c | 141 chan->func->preempt(chan); in nvkm_chan_preempt_locked() 153 if (!chan->func->preempt) in nvkm_chan_preempt() 182 nvkm_chan_remove(struct nvkm_chan *chan, bool preempt) in nvkm_chan_remove() argument 187 if (preempt && chan->func->preempt) in nvkm_chan_remove() 227 nvkm_chan_error(struct nvkm_chan *chan, bool preempt) in nvkm_chan_error() argument 235 if (preempt) in nvkm_chan_error() 236 chan->func->preempt(chan); in nvkm_chan_error()
|
| /linux/include/linux/ |
| H A D | rcupdate.h | 164 # define rcu_tasks_classic_qs(t, preempt) \ argument 166 if (!(preempt) && READ_ONCE((t)->rcu_tasks_holdout)) \ 173 # define rcu_tasks_classic_qs(t, preempt) do { } while (0) argument 203 #define rcu_tasks_qs(t, preempt) \ argument 205 rcu_tasks_classic_qs((t), (preempt)); \ 218 #define rcu_tasks_classic_qs(t, preempt) do { } while (0) argument 219 #define rcu_tasks_qs(t, preempt) do { } while (0) argument
|
| H A D | rcutiny.h | 100 #define rcu_note_context_switch(preempt) \ argument 103 rcu_tasks_qs(current, (preempt)); \
|
| /linux/samples/trace_events/ |
| H A D | trace_custom_sched.h | 27 TP_PROTO(bool preempt, 32 TP_ARGS(preempt, prev, next, prev_state),
|
| /linux/kernel/trace/rv/monitors/sssw/ |
| H A D | sssw.c | 31 static void handle_sched_switch(void *data, bool preempt, in handle_sched_switch() argument 36 if (preempt) in handle_sched_switch()
|
| /linux/Documentation/trace/rv/ |
| H A D | monitor_wip.rst | 39 do not trace (preempt count >= 1) 44 do not trace (preempt count >= 1)
|
| /linux/kernel/trace/rv/monitors/nrp/ |
| H A D | nrp.c | 78 static void handle_schedule_entry(void *data, bool preempt) in handle_schedule_entry() argument 80 if (preempt) in handle_schedule_entry()
|
| /linux/kernel/trace/rv/monitors/sts/ |
| H A D | sts.c | 77 static void handle_sched_switch(void *data, bool preempt, in handle_sched_switch() argument 85 static void handle_schedule_entry(void *data, bool preempt) in handle_schedule_entry() argument
|
| /linux/arch/x86/include/asm/ |
| H A D | tlb.h | 148 guard(preempt)(); in invlpgb_flush_all() local 162 guard(preempt)(); in invlpgb_flush_all_nonglobals() local
|
| /linux/include/trace/events/ |
| H A D | sched.h | 190 static inline long __trace_sched_switch_state(bool preempt, in __trace_sched_switch_state() argument 202 if (preempt) in __trace_sched_switch_state() 222 TP_PROTO(bool preempt, 227 TP_ARGS(preempt, prev, next, prev_state), 243 __entry->prev_state = __trace_sched_switch_state(preempt, prev_state, prev); 883 TP_PROTO(bool preempt), 884 TP_ARGS(preempt));
|
| /linux/Documentation/arch/powerpc/ |
| H A D | vpa-dtl.rst | 18 retrieve a log of dispatch and preempt events from the hypervisor 20 user can retrieve when and why each dispatch & preempt has occurred. 31 Trace Log) contains information about dispatch/preempt, enqueue time etc. 121 First two fields represent the dispatch reason and preempt reason. The post
|
| /linux/kernel/trace/rv/monitors/snep/ |
| H A D | Kconfig | 11 Monitor to ensure schedule does not enable preempt.
|
| /linux/Documentation/translations/zh_CN/locking/ |
| H A D | index.rst | 30 * preempt-locking
|