Home
last modified time | relevance | path

Searched full:scheduler (Results 1 – 25 of 897) sorted by relevance

12345678910>>...36

/linux-6.14.4/net/netfilter/ipvs/
Dip_vs_sched.c29 * IPVS scheduler list
38 * Bind a service with a scheduler
41 struct ip_vs_scheduler *scheduler) in ip_vs_bind_scheduler() argument
45 if (scheduler->init_service) { in ip_vs_bind_scheduler()
46 ret = scheduler->init_service(svc); in ip_vs_bind_scheduler()
52 rcu_assign_pointer(svc->scheduler, scheduler); in ip_vs_bind_scheduler()
58 * Unbind a service with its scheduler
65 cur_sched = rcu_dereference_protected(svc->scheduler, 1); in ip_vs_unbind_scheduler()
72 /* svc->scheduler can be set to NULL only by caller */ in ip_vs_unbind_scheduler()
77 * Get scheduler in the scheduler list by name
[all …]
/linux-6.14.4/drivers/gpu/drm/i915/gvt/
Dsched_policy.c134 struct intel_gvt_workload_scheduler *scheduler = &gvt->scheduler; in try_to_schedule_next_vgpu() local
141 * let scheduler chose next_vgpu again by setting it to NULL. in try_to_schedule_next_vgpu()
143 if (scheduler->next_vgpu == scheduler->current_vgpu) { in try_to_schedule_next_vgpu()
144 scheduler->next_vgpu = NULL; in try_to_schedule_next_vgpu()
152 scheduler->need_reschedule = true; in try_to_schedule_next_vgpu()
156 if (scheduler->current_workload[engine->id]) in try_to_schedule_next_vgpu()
161 vgpu_update_timeslice(scheduler->current_vgpu, cur_time); in try_to_schedule_next_vgpu()
162 vgpu_data = scheduler->next_vgpu->sched_data; in try_to_schedule_next_vgpu()
166 scheduler->current_vgpu = scheduler->next_vgpu; in try_to_schedule_next_vgpu()
167 scheduler->next_vgpu = NULL; in try_to_schedule_next_vgpu()
[all …]
Dscheduler.c292 struct intel_gvt_workload_scheduler *scheduler = &gvt->scheduler; in shadow_context_status_change() local
298 spin_lock_irqsave(&scheduler->mmio_context_lock, flags); in shadow_context_status_change()
300 scheduler->engine_owner[ring_id]) { in shadow_context_status_change()
302 intel_gvt_switch_mmio(scheduler->engine_owner[ring_id], in shadow_context_status_change()
304 scheduler->engine_owner[ring_id] = NULL; in shadow_context_status_change()
306 spin_unlock_irqrestore(&scheduler->mmio_context_lock, flags); in shadow_context_status_change()
311 workload = scheduler->current_workload[ring_id]; in shadow_context_status_change()
317 spin_lock_irqsave(&scheduler->mmio_context_lock, flags); in shadow_context_status_change()
318 if (workload->vgpu != scheduler->engine_owner[ring_id]) { in shadow_context_status_change()
320 intel_gvt_switch_mmio(scheduler->engine_owner[ring_id], in shadow_context_status_change()
[all …]
/linux-6.14.4/tools/perf/pmu-events/arch/arm64/ampere/ampereonex/
Dcore-imp-def.json219 "PublicDescription": "Dispatch stall due to IXU scheduler entries",
222 "BriefDescription": "Dispatch stall due to IXU scheduler entries"
225 "PublicDescription": "Dispatch stall due to FSU scheduler entries",
228 "BriefDescription": "Dispatch stall due to FSU scheduler entries"
285 "PublicDescription": "Instructions issued by the scheduler",
288 "BriefDescription": "Instructions issued by the scheduler"
297 "PublicDescription": "A load wakeup to the scheduler has been canceled",
300 "BriefDescription": "A load wakeup to the scheduler has been canceled"
303 "PublicDescription": "The scheduler had to cancel one slow Uop due to resource conflict",
306 "BriefDescription": "The scheduler had to cancel one slow Uop due to resource conflict"
[all …]
/linux-6.14.4/tools/perf/pmu-events/arch/arm64/ampere/ampereone/
Dcore-imp-def.json219 "PublicDescription": "Dispatch stall due to IXU scheduler entries",
222 "BriefDescription": "Dispatch stall due to IXU scheduler entries"
225 "PublicDescription": "Dispatch stall due to FSU scheduler entries",
228 "BriefDescription": "Dispatch stall due to FSU scheduler entries"
297 "PublicDescription": "Instructions issued by the scheduler",
300 "BriefDescription": "Instructions issued by the scheduler"
309 "PublicDescription": "A load wakeup to the scheduler has been cancelled",
312 "BriefDescription": "A load wakeup to the scheduler has been cancelled"
315 "PublicDescription": "The scheduler had to cancel one slow Uop due to resource conflict",
318 "BriefDescription": "The scheduler had to cancel one slow Uop due to resource conflict"
[all …]
/linux-6.14.4/Documentation/scheduler/
Dsched-ext.rst2 Extensible Scheduler Class
5 sched_ext is a scheduler class whose behavior can be defined by a set of BPF
6 programs - the BPF scheduler.
11 * The BPF scheduler can group CPUs however it sees fit and schedule them
14 * The BPF scheduler can be turned on and off dynamically anytime.
16 * The system integrity is maintained no matter what the BPF scheduler does.
21 * When the BPF scheduler triggers an error, debug information is dumped to
23 scheduler binary. The debug dump can also be accessed through the
25 triggers a debug dump. This doesn't terminate the BPF scheduler and can
47 sched_ext is used only when the BPF scheduler is loaded and running.
[all …]
Dsched-design-CFS.rst4 CFS Scheduler
11 CFS stands for "Completely Fair Scheduler," and is the "desktop" process
12 scheduler implemented by Ingo Molnar and merged in Linux 2.6.23. When
14 scheduler's SCHED_OTHER interactivity code. Nowadays, CFS is making room
16 Documentation/scheduler/sched-eevdf.rst.
63 previous vanilla scheduler and RSDL/SD are affected).
83 schedules (or a scheduler tick happens) the task's CPU usage is "accounted
97 other HZ detail. Thus the CFS scheduler has no notion of "timeslices" in the
98 way the previous scheduler had, and has no heuristics whatsoever. There is
103 which can be used to tune the scheduler from "desktop" (i.e., low latencies) to
[all …]
Dsched-nice-design.rst2 Scheduler Nice Design
6 nice-levels implementation in the new Linux scheduler.
12 scheduler, (otherwise we'd have done it long ago) because nice level
16 In the O(1) scheduler (in 2003) we changed negative nice levels to be
77 With the old scheduler, if you for example started a niced task with +1
88 The new scheduler in v2.6.23 addresses all three types of complaints:
91 enough), the scheduler was decoupled from 'time slice' and HZ concepts
94 support: with the new scheduler nice +19 tasks get a HZ-independent
96 scheduler.
99 the new scheduler makes nice(1) have the same CPU utilization effect on
[all …]
/linux-6.14.4/Documentation/block/
Dswitching-sched.rst2 Switching Scheduler
5 Each io queue has a set of io scheduler tunables associated with it. These
6 tunables control how the io scheduler works. You can find these entries
16 It is possible to change the IO scheduler for a given block device on
20 To set a specific scheduler, simply do this::
22 echo SCHEDNAME > /sys/block/DEV/queue/scheduler
24 where SCHEDNAME is the name of a defined IO scheduler, and DEV is the
28 a "cat /sys/block/DEV/queue/scheduler" - the list of valid names
29 will be displayed, with the currently selected scheduler in brackets::
31 # cat /sys/block/sda/queue/scheduler
[all …]
Ddeadline-iosched.rst2 Deadline IO scheduler tunables
5 This little file attempts to document how the deadline io scheduler works.
12 selecting an io scheduler on a per-device basis.
19 The goal of the deadline io scheduler is to attempt to guarantee a start
21 tunable. When a read request first enters the io scheduler, it is assigned
49 When we have to move requests from the io scheduler queue to the block
60 Sometimes it happens that a request enters the io scheduler that is contiguous
69 rbtree front sector lookup when the io scheduler merge function is called.
/linux-6.14.4/drivers/gpu/drm/scheduler/
Dsched_main.c27 * The GPU scheduler provides entities which allow userspace to push jobs
29 * The software queues have a priority among them. The scheduler selects the entities
30 * from the run queue using a FIFO. The scheduler provides dependency handling
32 * backend operations to the scheduler like submitting a job to hardware run queue,
35 * The organisation of the scheduler is the following:
37 * 1. Each hw run queue has one scheduler
38 * 2. Each scheduler has multiple run queues with different priorities
40 * 3. Each scheduler run queue has a queue of entities to schedule
54 * The DRM GPU scheduler provides a flow control mechanism to regulate the rate
55 * in which the jobs fetched from scheduler entities are executed.
[all …]
Dsched_entity.c37 * drm_sched_entity_init - Init a context entity used by scheduler when
40 * @entity: scheduler entity to init
76 * scheduler attached. It's just not valid to use the scheduler before it in drm_sched_entity_init()
88 pr_warn("%s: called with uninitialized scheduler\n", __func__); in drm_sched_entity_init()
91 * scheduler. Protect against num_rqs being 0, by converting to signed. Choose in drm_sched_entity_init()
120 * @entity: scheduler entity to init
169 * @entity: scheduler entity to check
197 /* Signal the scheduler finished fence when the entity in question is killed. */
238 /* Remove the entity from the scheduler and kill all pending jobs */
252 /* Make sure this entity is not used by the scheduler at the moment */ in drm_sched_entity_kill()
[all …]
/linux-6.14.4/Documentation/gpu/rfc/
Di915_scheduler.rst2 I915 GuC Submission/DRM Scheduler Section
8 i915 with the DRM scheduler is:
14 * Lots of rework will need to be done to integrate with DRM scheduler so
32 * Convert the i915 to use the DRM scheduler
33 * GuC submission backend fully integrated with DRM scheduler
35 handled in DRM scheduler)
36 * Resets / cancels hook in DRM scheduler
37 * Watchdog hooks into DRM scheduler
39 integrated with DRM scheduler (e.g. state machine gets
41 * Execlists backend will minimum required to hook in the DRM scheduler
[all …]
/linux-6.14.4/include/drm/
Dgpu_scheduler.h38 * Setting this flag on a scheduler fence prevents pipelining of jobs depending
85 * ring, and the scheduler will alternate between entities based on
122 * be scheduled on any scheduler on this list.
201 * by the scheduler thread, can be accessed locklessly from
247 * @sched: the scheduler to which this rq belongs to.
272 * @scheduled: this fence is what will be signaled by the scheduler
278 * @finished: this fence is what will be signaled by the scheduler
302 * @sched: the scheduler instance to which the job having this struct
323 * @sched: the scheduler instance on which this job is scheduled.
326 * @credits: the number of credits this job contributes to the scheduler
[all …]
/linux-6.14.4/block/
DKconfig.iosched5 tristate "MQ deadline I/O scheduler"
8 MQ version of the deadline IO scheduler.
11 tristate "Kyber I/O scheduler"
14 The Kyber I/O scheduler is a low-overhead scheduler suitable for
20 tristate "BFQ I/O scheduler"
23 BFQ I/O scheduler for BLK-MQ. BFQ distributes the bandwidth of
/linux-6.14.4/tools/sched_ext/
DREADME.md51 In order to run a sched_ext scheduler, you'll have to run a kernel compiled
93 example, using vmlinux.h allows a scheduler to access fields defined directly
108 bpf_printk("Task %s enabled in example scheduler", p->comm);
119 The scheduler build system will generate this vmlinux.h file as part of the
120 scheduler build pipeline. It looks for a vmlinux file in the following
163 For more scheduler implementations, tools and documentation, visit
168 A simple scheduler that provides an example of a minimal sched_ext scheduler.
171 Though very simple, in limited scenarios, this scheduler can perform reasonably
176 Another simple, yet slightly more complex scheduler that provides an example of
184 A "central" scheduler where scheduling decisions are made from a single CPU.
[all …]
/linux-6.14.4/drivers/net/wireless/intel/iwlegacy/
Dprph.h236 /* 3945 Tx scheduler registers */
247 * Tx Scheduler
249 * The Tx Scheduler selects the next frame to be transmitted, choosing TFDs
275 * 1) Scheduler-Ack, in which the scheduler automatically supports a
281 * In scheduler-ack mode, the scheduler keeps track of the Tx status of
292 * 2) FIFO (a.k.a. non-Scheduler-ACK), in which each TFD is processed in order.
300 * Driver controls scheduler operation via 3 means:
301 * 1) Scheduler registers
302 * 2) Shared scheduler data base in internal 4956 SRAM
313 * the scheduler (especially for queue #4/#9, the command queue, otherwise
[all …]
/linux-6.14.4/drivers/gpu/drm/xe/
Dxe_gpu_scheduler_types.h12 * struct xe_sched_msg - an in-band (relative to GPU scheduler run queue)
18 /** @link: list link into the gpu scheduler list of messages */
30 * scheduler
41 * struct xe_gpu_scheduler - Xe GPU scheduler
44 /** @base: DRM GPU scheduler */
46 /** @ops: Xe scheduler ops */
DKconfig.profile6 be forcefully taken away from scheduler.
12 be forcefully taken away from scheduler.
48 bool "Default configuration of limitation on scheduler timeout"
51 Configures the enablement of limitation on scheduler timeout
/linux-6.14.4/drivers/gpu/drm/panthor/
Dpanthor_sched.c37 * DOC: Scheduler
64 * FW-scheduler, we use the 1:1 entity:scheduler mode, such that each
65 * entity has its own job scheduler. When a job is ready to be executed
152 * struct panthor_scheduler - Object used to manage the scheduler
159 * @wq: Workqueue used by our internal scheduler logic and
162 * Used for the scheduler tick, group update or other kind of FW
173 * blocking the rest of the scheduler if the allocation tries to
197 * FW event processing to the scheduler workqueue.
224 * @lock: Lock protecting access to all the scheduler fields.
296 /** @has_ref: True if the scheduler owns a runtime PM reference. */
[all …]
/linux-6.14.4/tools/perf/pmu-events/arch/x86/amdzen3/
Dother.json28 …have been stalled due to a Token Stall. FP scheduler resource stall. Applies to ops that use the F…
46 …roup is valid but does not get dispatched due to a token stall. Integer Scheduler miscellaneous re…
82 …but does not get dispatched due to a token stall. No tokens for Integer Scheduler Queue 3 availabl…
88 …but does not get dispatched due to a token stall. No tokens for Integer Scheduler Queue 2 availabl…
94 …but does not get dispatched due to a token stall. No tokens for Integer Scheduler Queue 1 availabl…
100 …but does not get dispatched due to a token stall. No tokens for Integer Scheduler Queue 0 availabl…
/linux-6.14.4/kernel/
DKconfig.preempt76 bool "Scheduler controlled preemption model"
81 This option provides a scheduler driven preemption model that
99 low level and critical code paths (entry code, scheduler, low
101 execution contexts under scheduler control.
158 This option enables a new scheduler class sched_ext (SCX), which
167 - Rapid scheduler deployments: Non-disruptive swap outs of
177 Documentation/scheduler/sched-ext.rst
/linux-6.14.4/net/sched/
DKconfig16 If you say N here, you will get the standard packet scheduler, which
75 scheduler.
83 Say Y here if you want to use an n-band queue packet scheduler
173 tristate "Time Aware Priority (taprio) Scheduler"
208 tristate "Deficit Round Robin scheduler (DRR)"
219 tristate "Multi-queue priority scheduler (MQPRIO)"
222 Say Y here if you want to use the Multi-queue Priority scheduler.
223 This scheduler allows QOS to be offloaded on NICs that have support
232 tristate "SKB priority queue scheduler (SKBPRIO)"
235 scheduler. This schedules packets according to skb->priority,
[all …]
/linux-6.14.4/include/linux/sched/
Dext.h3 * BPF extensible scheduler class: Documentation/scheduler/sched-ext.rst
56 * buffer between the scheduler core and the BPF scheduler. See the
162 /* BPF scheduler modifiable fields */
167 * scheduler. Automatically decreased by SCX as the task executes. On
179 * but can also be modified directly by the BPF scheduler. Modifying it
189 * Can be set from ops.init_task() while the BPF scheduler is being
/linux-6.14.4/net/mptcp/
Dctrl.c41 char scheduler[MPTCP_SCHED_NAME_MAX]; member
88 return mptcp_get_pernet(net)->scheduler; in mptcp_get_scheduler()
103 strscpy(pernet->scheduler, "default", sizeof(pernet->scheduler)); in mptcp_pernet_set_defaults()
107 static int mptcp_set_scheduler(char *scheduler, const char *name) in mptcp_set_scheduler() argument
115 strscpy(scheduler, name, MPTCP_SCHED_NAME_MAX); in mptcp_set_scheduler()
126 char (*scheduler)[MPTCP_SCHED_NAME_MAX] = ctl->data; in proc_scheduler() local
134 strscpy(val, *scheduler, MPTCP_SCHED_NAME_MAX); in proc_scheduler()
138 ret = mptcp_set_scheduler(*scheduler, val); in proc_scheduler()
226 .procname = "scheduler",
276 table[6].data = &pernet->scheduler; in mptcp_pernet_new_table()

12345678910>>...36