| /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/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()
|
| H A D | a6xx_preempt.c | 216 struct a6xx_preempt_record *record_ptr = a6xx_gpu->preempt[i]; in a6xx_preempt_hw_init() 300 struct a6xx_preempt_record *record_ptr = a6xx_gpu->preempt[ring->id]; in a6xx_preempt_trigger() 378 a6xx_gpu->preempt[ring->id] = ptr; in preempt_init_ring()
|
| /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/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 | ga100.c | 105 .preempt = gk110_chan_preempt, 119 .preempt = ga100_cgrp_preempt, 402 runl->func->preempt(runl); in ga100_runl_init() 435 .preempt = ga100_runl_preempt,
|
| H A D | runl.c | 87 if (runl->func->preempt) { in nvkm_runl_rc() 137 if (runl->func->preempt) in nvkm_runl_rc_runl() 138 runl->func->preempt(runl); in nvkm_runl_rc_runl()
|
| /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
|
| /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/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/drivers/gpu/drm/xe/ |
| 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()
|
| /linux/kernel/trace/rv/monitors/snep/ |
| H A D | Kconfig | 11 Monitor to ensure schedule does not enable preempt.
|
| /linux/drivers/parport/ |
| H A D | share.c | 686 if (!par_dev_cb->preempt || !par_dev_cb->wakeup) { in parport_register_dev_model() 727 par_dev->preempt = par_dev_cb->preempt; in parport_register_dev_model() 971 if (oldcad->preempt) { in parport_claim() 972 if (oldcad->preempt(oldcad->private)) in parport_claim()
|
| /linux/Documentation/translations/zh_CN/locking/ |
| H A D | index.rst | 30 * preempt-locking
|
| /linux/kernel/trace/rv/monitors/sco/ |
| H A D | sco.c | 27 static void handle_schedule_entry(void *data, bool preempt) in handle_schedule_entry() argument
|
| /linux/kernel/trace/rv/monitors/snroc/ |
| H A D | snroc.c | 27 static void handle_sched_switch(void *data, bool preempt, in handle_sched_switch() argument
|
| /linux/kernel/trace/rv/monitors/wwnr/ |
| H A D | wwnr.c | 21 static void handle_switch(void *data, bool preempt, struct task_struct *p, in handle_switch() argument
|
| /linux/kernel/trace/rv/monitors/scpd/ |
| H A D | scpd.c | 33 static void handle_schedule_entry(void *data, bool preempt) in handle_schedule_entry() argument
|