Home
last modified time | relevance | path

Searched full:threaded (Results 1 – 25 of 428) sorted by relevance

12345678910>>...18

/linux/tools/testing/selftests/net/
H A Dnl_netdev.py40 Test that verifies various cases of napi threaded
54 # set napi threaded and verify
55 nf.napi_set({'id': napi0_id, 'threaded': "enabled"})
57 ksft_eq(napi0['threaded'], "enabled")
62 ksft_eq(napi1['threaded'], "disabled")
68 # verify if napi threaded is still set
70 ksft_eq(napi0['threaded'], "enabled")
75 ksft_eq(napi1['threaded'], "disabled")
78 # unset napi threaded and verify
79 nf.napi_set({'id': napi0_id, 'threaded': "disabled"})
[all …]
/linux/tools/testing/selftests/drivers/net/
H A Dnapi_threaded.py5 Test napi threaded states.
16 ksft_eq(napi['threaded'], 'enabled')
22 ksft_eq(napi['threaded'], 'disabled')
26 def _set_threaded_state(cfg, threaded) -> None: argument
27 with open(f"/sys/class/net/{cfg.ifname}/threaded", "wb") as fp:
28 fp.write(str(threaded).encode('utf-8'))
36 threaded = cmd(f"cat /sys/class/net/{cfg.ifname}/threaded").stdout
37 defer(_set_threaded_state, cfg, threaded)
44 Test that threaded state (in the persistent NAPI config) gets updated
57 ksft_eq(napi['threaded'], 'disabled')
[all …]
/linux/Documentation/core-api/real-time/
H A Dtheory.rst15 the use of threaded interrupts. As a result, the kernel becomes fully
83 Threaded interrupts
88 under scheduler control, PREEMPT_RT enforces threaded interrupt handlers.
92 Its sole responsibility is to wake the associated threaded handler. The second
93 stage, the threaded handler, is the function passed to request_irq() as the
96 From waking the interrupt thread until threaded handling is completed, the
101 By default, the threaded handler executes with the SCHED_FIFO scheduling policy
105 If the threaded interrupt handler raises any soft interrupts during its
106 execution, those soft interrupt routines are invoked after the threaded handler
113 By using sleeping locks and forced-threaded interrupts, PREEMPT_RT
H A Ddifferences.rst12 With forced-threaded interrupts and sleeping spin locks, code paths that
29 However, on a PREEMPT_RT system, interrupts are forced-threaded and no longer
43 the use of threaded interrupts. Other parts of the kernel also shift their
44 execution into threaded context by different mechanisms. The goal is to keep
49 threaded, preemptible execution.
54 All interrupts are forced-threaded in a PREEMPT_RT system. The exceptions are
58 The IRQF_ONESHOT flag is used together with threaded interrupts, meaning those
59 registered using request_threaded_irq() and providing only a threaded handler.
60 Its purpose is to keep the interrupt line masked until the threaded handler has
64 handler does not acquire any sleeping locks, as it will not be threaded. The
[all …]
/linux/Documentation/networking/
H A Dnapi.rst19 but there is an option to use :ref:`separate kernel threads<threaded>`
148 IRQs are threaded (such as if ``PREEMPT_RT`` is enabled).
266 also exists. Threaded polling of NAPI also has a mode to busy poll for
267 packets (:ref:`threaded busy polling<threaded_busy_poll>`) using the NAPI
433 Threaded NAPI busy polling
436 Threaded NAPI busy polling extends threaded NAPI and adds support to do
440 Threaded NAPI busy polling can be enabled on per NIC queue basis using Netlink.
447 --json='{"id": 66, "threaded": "busy-poll"}'
455 Once threaded busy polling is enabled for a NAPI, PID of the kthread can be
475 'threaded': 'busy-poll'}
[all …]
/linux/tools/perf/bench/
H A Dsynthesize.c33 OPT_BOOLEAN('s', "st", &run_st, "Run single threaded benchmark"),
34 OPT_BOOLEAN('t', "mt", &run_mt, "Run multi-threaded benchmark"),
40 "Number of iterations used to compute single-threaded average"),
42 "Number of iterations used to compute multi-threaded average"),
138 "Computing performance of single threaded perf event synthesis by\n" in run_single_threaded()
228 "Computing performance of multi threaded perf event synthesis by\n" in run_multi_threaded()
261 * If neither single threaded or multi-threaded are specified, default in bench_synthesize()
262 * to running just single threaded. in bench_synthesize()
H A Dsched-pipe.c48 static bool threaded; variable
90 OPT_BOOLEAN('T', "threaded", &threaded, "Specify threads/process based task setup"),
120 if (threaded) in enter_cgroup()
129 if (threaded) in enter_cgroup()
258 if (threaded) { in bench_sched_pipe()
299 loops, threaded ? "threads" : "processes"); in bench_sched_pipe()
/linux/drivers/firmware/tegra/
H A Dbpmp.c224 clear_bit(index, bpmp->threaded.allocated); in tegra_bpmp_channel_read()
228 up(&bpmp->threaded.lock); in tegra_bpmp_channel_read()
257 err = down_timeout(&bpmp->threaded.lock, usecs_to_jiffies(timeout)); in tegra_bpmp_write_threaded()
263 index = find_first_zero_bit(bpmp->threaded.allocated, count); in tegra_bpmp_write_threaded()
276 set_bit(index, bpmp->threaded.allocated); in tegra_bpmp_write_threaded()
283 set_bit(index, bpmp->threaded.busy); in tegra_bpmp_write_threaded()
289 clear_bit(index, bpmp->threaded.allocated); in tegra_bpmp_write_threaded()
292 up(&bpmp->threaded.lock); in tegra_bpmp_write_threaded()
678 busy = bpmp->threaded.busy; in tegra_bpmp_handle_rx()
719 bpmp->threaded.count = bpmp->soc->channels.thread.count; in tegra_bpmp_probe()
[all …]
/linux/kernel/irq/
H A Dspurious.c174 pr_cont(" threaded [<%p>] %ps", action->thread_fn, action->thread_fn); in __report_bad_irq()
235 * We cannot call note_interrupt from the threaded handler in note_interrupt()
237 * (primary and threaded). Aside of that in the threaded in note_interrupt()
239 * hardware interrupt while we are dealing with a threaded in note_interrupt()
245 * The threaded handlers store whether they successfully in note_interrupt()
250 * mechanism, but for the non forced threaded case we'd just in note_interrupt()
276 * Check whether one of the threaded handlers in note_interrupt()
302 * None of the threaded handlers felt in note_interrupt()
316 * threaded handlers on the same line. Clear in note_interrupt()
H A Dmanage.c91 * associated threaded handlers into account.
94 * parts (hardirq and threaded handler) have completed.
96 * Returns: false if a threaded handler is active.
125 * threaded handlers are active. in __synchronize_irq()
742 * Returns: false if a threaded handler is active.
993 * Default primary interrupt handler for threaded interrupts. Is
1003 * Primary handler for nested threaded interrupts. Should never be
1082 * Oneshot interrupts keep the irq line masked until the threaded
1137 * Interrupts explicitly requested as threaded interrupts want to be
1153 * Interrupts which are not explicitly requested as threaded
[all …]
/linux/tools/memory-model/Documentation/
H A Dsimple.txt22 Single-threaded code
25 In single-threaded code, there is no reordering, at least assuming
28 threaded context as the kernel can enter the same code path on multiple
38 this lock at a given time, your code will be executed single-threaded.
61 Despite the scalability limitations of single-threaded code, RCU
64 single-threaded grace-period processing is use of batching, where all
75 being completely single-threaded, it is often possible to use library
89 With code locking, we use single-threaded code execution to guarantee
93 in the code execution that will execute as though it is single threaded.
114 a single-threaded approach while providing excellent performance and
/linux/tools/testing/selftests/cgroup/
H A Dtest_core.c277 * A (domain threaded) - B (threaded) - C (domain)
280 * threaded cgroup. "cgroup.type" file will report "domain (invalid)" in
307 if (cg_write(parent, "cgroup.type", "threaded")) in test_cgcore_invalid_domain()
346 * Test that when a child becomes threaded
347 * the parent type becomes domain threaded.
368 if (cg_write(child, "cgroup.type", "threaded")) in test_cgcore_parent_becomes_threaded()
371 if (cg_read_strcmp(parent, "cgroup.type", "domain threaded\n")) in test_cgcore_parent_becomes_threaded()
388 * Test that there's no internal process constrain on threaded cgroups.
414 if (cg_write(parent, "cgroup.type", "threaded")) in test_cgcore_no_internal_process_constraint_on_threads()
417 if (cg_write(child, "cgroup.type", "threaded")) in test_cgcore_no_internal_process_constraint_on_threads()
[all …]
/linux/scripts/coccinelle/misc/
H A Dirqf_oneshot.cocci2 /// Since commit 1c6c69525b40 ("genirq: Reject bogus threaded irq requests")
3 /// threaded IRQs without a primary handler need to be requested with
106 msg = "WARNING: Threaded IRQ with no primary handler requested without IRQF_ONESHOT (unless it is n…
112 msg = "WARNING: Threaded IRQ with no primary handler requested without IRQF_ONESHOT (unless it is n…
/linux/Documentation/admin-guide/
H A Dcgroup-v2.rst323 Controllers which support thread mode are called threaded controllers.
326 Marking a cgroup threaded makes it join the resource domain of its
327 parent as a threaded cgroup. The parent may be another threaded
329 of a threaded subtree, that is, the nearest ancestor which is not
330 threaded, is called threaded domain or thread root interchangeably and
333 Inside a threaded subtree, threads of a process can be put in
335 constraint - threaded controllers can be enabled on non-leaf cgroups
338 As the threaded domain cgroup hosts all the domain resource
341 can't have populated child cgroups which aren't threaded. Because the
343 serve both as a threaded domain and a parent to domain cgroups.
[all …]
/linux/Documentation/netlink/specs/
H A Dnetdev.yaml89 name: napi-threaded
267 threaded mode. If NAPI is not in threaded mode (i.e. uses normal
291 name: threaded
292 doc: Whether the NAPI is configured to operate in threaded polling
294 in threaded polling mode. If this is set to busy-poll, then the
295 threaded polling mode also busy polls.
297 enum: napi-threaded
711 - threaded
787 - threaded
/linux/Documentation/PCI/
H A Dboot-interrupts.rst56 irq_default_primary_handler threaded usb_hcd_irq
63 The use of threaded interrupts is the most likely condition to trigger
64 this problem today. Threaded interrupts may not be re-enabled after the IRQ
65 handler wakes. These "one shot" conditions mean that the threaded interrupt
66 needs to keep the interrupt line masked until the threaded handler has run.
/linux/include/linux/
H A Dcgroup-defs.h284 * For a domain cgroup, the following points to self. If threaded,
320 /* all threaded csets whose ->dom_cset points to this cset */
519 int nr_threaded_children; /* # of live threaded child cgroups */
570 * If !threaded, self. If threaded, it points to the nearest
571 * domain ancestor. Inside a threaded subtree, cgroups are exempt
577 struct cgroup *old_dom_cgrp; /* used while enabling threaded */
813 * If %true, the controller, supports threaded mode on the default
814 * hierarchy. In a threaded subtree, both process granularity and
815 * no-internal-process constraint are ignored and a threaded
820 * threaded. implicit && !threaded is not supported.
[all …]
H A Dinterrupt.h53 * Used by threaded interrupts which need to keep the
54 * irq line disabled until the threaded handler has been run.
59 * IRQF_NO_THREAD - Interrupt cannot be threaded
97 * IRQC_IS_NESTED - interrupt runs in a nested threaded context
116 * @thread_fn: interrupt handler function for threaded interrupts
117 * @thread: thread pointer for threaded interrupts
163 * Primary handler for threaded interrupts
545 frequency threaded job scheduling. For almost all the purposes
615 * With forced-threaded interrupts enabled a raised softirq is deferred to
616 * ksoftirqd unless it can be handled within the threaded interrup
[all...]
/linux/rust/kernel/irq/
H A Drequest.rs37 /// interrupt context, should be deferred to a threaded handler.
56 /// - `self.irq` is the same as the one passed to `request_{threaded}_irq`.
57 /// - `cookie` was passed to `request_{threaded}_irq` as the cookie. It is guaranteed to be unique
289 /// Callbacks for a threaded IRQ handler.
295 /// executed from interrupt context, should be deferred to the threaded
304 /// The threaded IRQ handler.
331 /// A registration of a threaded IRQ handler for a given IRQ line.
376 /// // Registers a threaded IRQ handler for the given [`IrqRequest`].
H A Dflags.rs65 /// threaded interrupts which need to keep the irq line disabled until the
66 /// threaded handler has been run.
76 /// Interrupt cannot be threaded.
/linux/include/acpi/platform/
H A Dacenv.h35 /* Common application configuration. All single threaded except for acpi_exec. */
304 * Use single threaded if the entire subsystem is contained in an application
305 * Use multiple threaded when the subsystem is running in the kernel.
307 * By default the model is single threaded if ACPI_APPLICATION is set,
308 * multi-threaded if ACPI_APPLICATION is not set.
/linux/drivers/pinctrl/qcom/
H A Dtlmm-test.c63 * @thread_op: operations to be performed by the threaded IRQ handler
65 * be performed by the threaded IRQ handler
362 * 10 threaded interrupts
414 * Drive line high 10 times, threaded handler drives it low to "clear the
439 * Drive line low 10 times, threaded handler drives it high to "clear the
465 * threaded handler to simulate a new interrupt, repeated 10 times, assert we
490 * threaded handler to simulate a new interrupt, repeated 10 times, assert we
/linux/Documentation/usb/
H A Ddwc3.rst34 - threaded handler of the device
45 - threaded handler of the EP-interrupt
/linux/Documentation/ABI/testing/
H A Dsysfs-class-net341 What: /sys/class/net/<iface>/threaded
346 Boolean value to control the threaded mode per device. User could
347 set this value to enable/disable threaded mode for all napi
352 0 threaded mode disabled for this dev
353 1 threaded mode enabled for this dev
/linux/drivers/pci/hotplug/
H A DTODO10 hardirq handler cpqhp_ctrl_intr(). Convert this to threaded IRQ handling.
51 simplified by converting it to threaded IRQ handling. Use pciehp as a

12345678910>>...18