section 9 · Kernel routines 🧠
87928 pages · page 300 of 440
S (continued)
- scx_add_event(9)Increase an event counter for 'name' by 'cnt'✨
- scx_arena_to_kaddr(9)Translate a BPF-arena pointer to its kernel address✨
- scx_bpf_cid_curr(9)Return the curr task on the CPU at @cid✨
- scx_bpf_cid_override(9)Install an explicit cpu->cid mapping with shard info✨
- scx_bpf_cid_to_cpu(9)Return the raw CPU id for @cid✨
- scx_bpf_cid_topo(9)Copy out per-cid topology info✨
- scx_bpf_cidperf_cap(9)Query the maximum relative capacity of the CPU at @cid✨
- scx_bpf_cidperf_cur(9)Query the current performance of the CPU at @cid✨
- scx_bpf_cidperf_set(9)Set the performance target of the CPU at @cid✨
- scx_bpf_cpu_curr(9)Return remote CPU's curr task✨
- scx_bpf_cpu_node(9)Return the NUMA node the given @cpu belongs to, or trigger an error if @cpu is invalid✨
- scx_bpf_cpu_to_cid(9)Return the cid for @cpu✨
- scx_bpf_cpuperf_cap(9)Query the maximum relative capacity of a CPU✨
- scx_bpf_cpuperf_cur(9)Query the current relative performance of a CPU✨
- scx_bpf_cpuperf_set(9)Set the relative performance target of a CPU✨
- scx_bpf_create_dsq(9)Create a custom DSQ✨
- scx_bpf_destroy_dsq(9)Destroy a custom DSQ✨
- scx_bpf_dispatch_cancel(9)Cancel the latest dispatch✨
- scx_bpf_dispatch_nr_slots(9)Return the number of remaining dispatch slots✨
- scx_bpf_dsq_insert___v2(9)Insert a task into the FIFO queue of a DSQ✨
- scx_bpf_dsq_insert_vtime(9)Insert a task into the vtime priority queue of a DSQ✨
- scx_bpf_dsq_move(9)Move a task from DSQ iteration to a DSQ✨
- scx_bpf_dsq_move_set_slice(9)Override slice when moving between DSQs✨
- scx_bpf_dsq_move_set_vtime(9)Override vtime when moving between DSQs✨
- scx_bpf_dsq_move_to_local___v2(9)move a task from a DSQ to the current CPU's local DSQ✨
- scx_bpf_dsq_move_vtime(9)Move a task from DSQ iteration to a PRIQ DSQ✨
- scx_bpf_dsq_nr_queued(9)Return the number of queued tasks✨
- scx_bpf_dsq_peek(9)Lockless peek at the first element.✨
- scx_bpf_dsq_reenq(9)Re-enqueue tasks on a DSQ✨
- scx_bpf_dump_bstr(9)Generate extra debug dump specific to the BPF scheduler✨
- scx_bpf_error_bstr(9)Indicate fatal error✨
- scx_bpf_events(9)Read the event counters of the calling scheduler✨
- scx_bpf_exit_bstr(9)Gracefully exit the BPF scheduler.✨
- scx_bpf_get_idle_cpumask(9)Get a referenced kptr to the idle-tracking per-CPU cpumask.✨
- scx_bpf_get_idle_cpumask_node(9)Get a referenced kptr to the idle- tracking per-CPU cpumask of a target NUMA node.✨
- scx_bpf_get_idle_smtmask(9)Get a referenced kptr to the idle-tracking, per-physical-core cpumask. Can be used to determine if an entire physical core is free.✨
- scx_bpf_get_idle_smtmask_node(9)Get a referenced kptr to the idle- tracking, per-physical-core cpumask of a target NUMA node. Can be used to determine if an entire physical core is free.✨
- scx_bpf_get_online_cpumask(9)Get a referenced kptr to cpu_online_mask✨
- scx_bpf_get_possible_cpumask(9)Get a referenced kptr to cpu_possible_mask✨
- scx_bpf_kick_cid(9)Trigger reschedule on the CPU mapped to @cid✨
- scx_bpf_kick_cpu(9)Trigger reschedule on a CPU✨
- scx_bpf_locked_rq(9)Return the rq currently locked by SCX✨
- scx_bpf_now(9)Returns a high-performance monotonically non-decreasing clock for the current CPU. The clock returned is in nanoseconds.✨
- scx_bpf_nr_cids(9)Return the size of the cid space✨
- scx_bpf_nr_cpu_ids(9)Return the number of possible CPU IDs✨
- scx_bpf_nr_node_ids(9)Return the number of possible node IDs✨
- scx_bpf_nr_online_cids(9)Return current count of online CPUs in cid space✨
- scx_bpf_online_cmask(9)Return the online cid mask in the scheduler arena✨
- scx_bpf_pick_any_cpu(9)Pick and claim an idle cpu if available or pick any CPU✨
- scx_bpf_pick_any_cpu_node(9)Pick and claim an idle cpu if available or pick any CPU from @node✨
- scx_bpf_pick_idle_cpu(9)Pick and claim an idle cpu✨
- scx_bpf_pick_idle_cpu_node(9)Pick and claim an idle cpu from @node✨
- scx_bpf_put_cpumask(9)Release a possible/online cpumask✨
- scx_bpf_put_idle_cpumask(9)Release a previously acquired referenced kptr to either the percpu, or SMT idle-tracking cpumask.✨
- scx_bpf_reenqueue_local(9)Re-enqueue tasks on a local DSQ✨
- scx_bpf_reenqueue_local___v2(9)Re-enqueue tasks on a local DSQ✨
- scx_bpf_select_cpu_and(9)Pick an idle CPU usable by task @p✨
- scx_bpf_select_cpu_dfl(9)The default implementation of ops.select_cpu()✨
- scx_bpf_sub_caps(9)Read self's or a direct child's cap cmasks✨
- scx_bpf_sub_dispatch(9)Trigger dispatching on a child scheduler✨
- scx_bpf_sub_grant(9)Grant @caps on a cmask's cids to a direct child✨
- scx_bpf_sub_kill_bstr(9)Kill a direct child sub-scheduler✨
- scx_bpf_sub_revoke(9)Revoke @caps on a cmask's cids from a direct child✨
- scx_bpf_task_cgroup(9)Return the sched cgroup of a task✨
- scx_bpf_task_cid(9)cid a task is currently associated with✨
- scx_bpf_task_cpu(9)CPU a task is currently associated with✨
- scx_bpf_task_running(9)Is task currently running?✨
- scx_bpf_task_set_dsq_vtime(9)Set task's virtual time for DSQ ordering✨
- scx_bpf_task_set_slice(9)Set task's time slice✨
- scx_bpf_test_and_clear_cpu_idle(9)Test and clear @cpu's idle state✨
- scx_bpf_this_cid(9)Return the cid of the CPU this program is running on✨
- scx_bpf_tid_to_task(9)Look up a task by its scx tid✨
- scx_bypass(9)[Un]bypass scx_ops and guarantee forward progress✨
- scx_bypass_dsp_enabled(9)Check if bypass dispatch path is enabled✨
- scx_call_op_set_cpumask(9)Invoke the set_cpumask or set_cmask op for @task✨
- scx_cgroup_claim_subtree(9)Claim the subtree's cgroups for an enabling sub✨
- scx_cgroup_return_subtree(9)Return the subtree's cgroups to the parent sched✨
- scx_cgroup_task_migrate_canceled(9)Undo migration preparation✨
- scx_cgroup_task_migrated(9)Re-home a task that changed cgroups✨
- scx_cgroup_task_migrating(9)Prepare a task for a cgroup migration✨
- scx_cid_init(9)build the cid mapping✨
- scx_cid_publish_tables(9)Publish the tables scx_cid_init() built✨
- scx_cid_retire_tables(9)Unpublish and retire the cid tables✨
- scx_cid_to_cpu(9)Translate @cid to its cpu✨
- scx_cmask_clear(9)Zero every bit in @m's active range✨
- SCX_CMASK_DEFINE(9)Define an on-stack cmask on tight storage✨
- SCX_CMASK_DEFINE_SHARD(9)Define an on-stack cmask sized to one shard✨
- scx_cmask_empty(9)Test whether @m has no bits set✨
- scx_cmask_fill(9)Set every bit in @m's active range✨
- scx_cmask_for_each_cid(9)iterate set cids in @m✨
- scx_cmask_init(9)Initialize @m on tight storage✨
- scx_cmask_ref_copy(9)Copy @src into the arena cmask referenced by @ref✨
- scx_cmask_ref_from_cpumask(9)Populate @ref's arena cmask from a cpumask✨
- scx_cmask_ref_init(9)Bind a scx_cmask_ref to a BPF-arena cmask✨
- scx_cmask_ref_init_kern(9)Bind a scx_cmask_ref to a kernel-owned cmask✨
- scx_cmask_ref_or(9)OR @src into the arena cmask referenced by @ref✨
- scx_cmask_ref_shard(9)Read one shard from @ref into @out✨
- scx_cmask_reframe(9)Reshape @m's active range without resizing storage✨
- scx_cmask_subset(9)test whether @sub is a subset of @super✨
- scx_cmask_test(9)test whether @cid is set in @m✨
- scx_cpu_to_cid(9)Translate @cpu to its cid✨
- scx_cpu_valid(9)Verify a cpu number, to be used on ops input args✨
- scx_discard_stale_ecaps_syncs(9)Discard ecaps syncs from earlier schedulers✨
- scx_dump_event(9)Dump an event 'kind' in 'events' to 's'✨
- scx_fill_cmask_scratch(9)Build this cpu's arena cmask from @cpumask✨
- scx_flush_disable_work(9)flush the disable work and wait for it to finish✨
- scx_for_each_descendant_pre(9)pre-order walk of a sched's descendants✨
- scx_hardlockup(9)sched_ext hardlockup handler✨
- scx_has_subs(9)Whether any sub-scheduler exists✨
- scx_is_cid_type(9)Test whether the active scheduler hierarchy is cid- form✨
- scx_is_descendant(9)Test whether sched is a descendant✨
- scx_kaddr_to_arena(9)Translate a kernel arena address to the BPF form✨
- scx_missing_caps(9)The caps in @needed that @sch lacks on @cpu✨
- scx_next_descendant_pre(9)find the next descendant for pre-order walk✨
- scx_ops_sanitize_err(9)Sanitize a -errno value✨
- scx_parent(9)Find the parent sched✨
- scx_prio_less(9)Task ordering for core-sched✨
- scx_process_sync_ecaps(9)Sync this cpu's ecaps to pshard->caps[]✨
- scx_prog_sched(9)Find scx_sched associated with a BPF prog✨
- scx_propagate_exit_irq_workfn(9)Claim SCX_EXIT_PARENT on the exiting subtree✨
- scx_punt_task(9)Hand a task to a failed sched without initialization✨
- scx_rcu_cpu_stall(9)sched_ext RCU CPU stall handler✨
- scx_rehome_task(9)Move a task to a sched it has been initialized for✨
- scx_rescue_accrue(9)Accrue budget at the configured fraction of elapsed time✨
- scx_rescue_admit(9)Start rescuing @p on @rq✨
- scx_rescue_charge(9)Charge the rescuee's runtime✨
- scx_rescue_check_overload(9)Eject the top rescue consumer on a stuck rescue✨
- scx_rescue_end(9)End the rescue execution on @rq✨
- scx_rescue_keep(9)Keep the rescue going for a preempted-out rescuee✨
- scx_rescue_timerfn(9)Drive and pace rescue execution✨
- scx_rescue_try_admit(9)Try to admit a freshly stranded task✨
- scx_resolve_local_dsq(9)Pick the local, rescue or reject DSQ for an insert✨
- scx_root_protected(9)Root sched for contexts that exclude its updates✨
- scx_root_protected_live(9)Root sched for paths that only run while live✨
- scx_skip_subtree_pre(9)Skip @pos's subtree in a pre-order walk✨
- scx_softlockup(9)sched_ext softlockup handler✨
- scx_task_iter_next(9)Next task✨
- scx_task_iter_next_locked(9)Next non-idle task with its rq locked✨
- scx_task_iter_relock(9)Re-acquire scx_tasks_lock and, optionally, @p's rq✨
- scx_task_iter_start(9)Lock scx_tasks_lock and start a task iteration✨
- scx_task_iter_stop(9)Stop a task iteration and unlock scx_tasks_lock✨
- scx_task_iter_unlock(9)Unlock rq and scx_tasks_lock held by a task iterator✨
- scx_task_on_sched(9)Is a task on the specified sched?✨
- scx_task_sched(9)Find scx_sched scheduling a task✨
- scx_task_sched_rcu(9)Find scx_sched scheduling a task✨
- scx_task_slice_ended(9)@p's slice is consumed or given up✨
- scx_tg_knob_sched(9)Resolve the sched receiving a task_group's knob updates✨
- scx_tg_sched(9)Resolve a task_group's sched✨
- scx_unbypass_replay_ecaps(9)Replay a bypass-suppressed ecaps notification✨
- sd_check_events(9)check media events✨
- sd_done(9)bottom half handler: called when the lower level driver has completed (successfully or otherwise) a scsi command.✨
- sd_eh_action(9)error handling callback✨
- sd_eh_reset(9)reset error handling callback✨
- sd_format_disk_name(9)format disk name✨
- sd_group_number(9)Compute the GROUP NUMBER field✨
- sd_ioctl(9)process an ioctl✨
- sd_open(9)open a scsi disk device✨
- sd_probe(9)called during driver initialization and whenever a new scsi device is attached to the system. It is called once for each scsi device (not just disks) present.✨
- sd_read_block_provisioning(9)Query provisioning VPD page✨
- sd_read_cpr(9)Query concurrent positioning ranges✨
- sd_release(9)invoked when the (last) close(2) is called on this scsi disk.✨
- sd_remove(9)called whenever a scsi disk (previously recognized by sd_probe) is detached from the system. It is called (potentially multiple times) during sd module unload.✨
- sd_revalidate_disk(9)called the first time a new disk is seen, performs disk spin up, read_capacity, etc.✨
- sd_unlock_native_capacity(9)unlock native capacity✨
- sd_zbc_alloc_report_buffer(9)Allocate a buffer for report zones reply.✨
- sd_zbc_check_capacity(9)Check the device capacity✨
- sd_zbc_check_zoned_characteristics(9)Check zoned block device characteristics✨
- sd_zbc_complete(9)ZBC command post processing.✨
- sd_zbc_do_report_zones(9)Issue a REPORT ZONES scsi command.✨
- sd_zbc_parse_report(9)Parse a SCSI zone descriptor✨
- sd_zbc_read_zones(9)Read zone information and update the request queue✨
- sd_zbc_report_zones(9)SCSI .report_zones() callback.✨
- sd_zbc_setup_zone_mgmt_cmnd(9)Prepare a zone ZBC_OUT command. The operations can be RESET WRITE POINTER, OPEN, CLOSE or FINISH.✨
- sd_zbc_zone_sectors(9)Get the device zone size in number of 512B sectors.✨
- sdca_add_hid_device(9)create a new SDCA HID device✨
- sdca_asoc_count_component(9)count the various component parts✨
- sdca_asoc_free_constraints(9)free constraint allocations✨
- sdca_asoc_get_port(9)return SoundWire port for a DAI✨
- sdca_asoc_hw_params(9)set SDCA channels, sample rate and bit depth✨
- sdca_asoc_pde_poll_actual_ps(9)Verify PDE power state reached target state✨
- sdca_asoc_populate_component(9)fill in a component driver for a Function✨
- sdca_asoc_populate_controls(9)fill in an array of ALSA controls for a Function✨
- sdca_asoc_populate_dais(9)fill in an array of DAI drivers for a Function✨
- sdca_asoc_populate_dapm(9)fill in arrays of DAPM widgets and routes✨
- sdca_asoc_set_constraints(9)constrain channels available on a DAI✨
- SDCA_CTL_TYPE(9)create a unique identifier for an SDCA Control✨
- SDCA_CTL_TYPE_S(9)static version of SDCA_CTL_TYPE✨
- sdca_destroy_hid_device(9)destroy the HID device✨
- sdca_fdl_alloc_state(9)allocate state for an FDL interrupt✨
- sdca_fdl_free_state(9)free state for an FDL interrupt✨
- sdca_fdl_process(9)Process the FDL state machine✨
- sdca_fdl_sync(9)wait for a function to finish FDL✨
- sdca_hid_process_report(9)read a HID event from the device and report✨
- sdca_irq_cleanup(9)Free the regular IRQs for an SDCA Function✨
- sdca_irq_cleanup_late(9)Free the early IRQs for an SDCA Function✨
- sdca_irq_data_populate(9)Populate common interrupt data✨
- sdca_irq_disable(9)Disable SDCA IRQs for a given function✨
- sdca_irq_enable(9)Re-enable SDCA IRQs for a given function✨
- sdca_irq_enable_early(9)Re-enable early SDCA IRQs for a given function✨
- sdca_irq_free(9)free an individual SDCA interrupt✨
💅
getting it ready, bestie…