Home
last modified time | relevance | path

Searched +full:blocking +full:- +full:io (Results 1 – 25 of 245) sorted by relevance

12345678910

/linux/Documentation/block/
H A Dnull_blk.rst1 .. SPDX-License-Identifier: GPL-2.0
11 block-layer implementations. It emulates a block device of X gigabytes in size.
15 Multi-queue block-layer
17 - Request-based.
18 - Configurable submission queues per device.
20 No block-layer (Known as bio-based)
22 - Bio-based. IO requests are submitted directly to the device driver.
23 - Directly accepts bio data structure and returns them.
30 queue_mode=[0-2]: Default: 2-Multi-queue
31 Selects which block-layer the module should instantiate with.
[all …]
/linux/Documentation/devicetree/bindings/hwmon/
H A Dsensirion,shtc1.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Christopher Ruehl chris.ruehl@gtsys.com.hk
14 designed especially for battery-driven high-volume consumer electronics
24 - sensirion,shtc1
25 - sensirion,shtw1
26 - sensirion,shtc3
31 sensirion,blocking-io:
36 sensirion,low-precision:
[all …]
/linux/arch/m68k/sun3/prom/
H A Dconsole.c1 // SPDX-License-Identifier: GPL-2.0
3 * console.c: Routines that deal with sending and receiving IO
16 /* Non blocking get character from console input device, returns -1
22 int i = -1; in prom_nbgetchar()
26 i = (*(romvec->pv_nbgetchar))(); in prom_nbgetchar()
31 /* Non blocking put character to console device, returns -1 if
38 int i = -1; in prom_nbputchar()
41 i = (*(romvec->pv_nbputchar))(c); in prom_nbputchar()
46 /* Blocking version of get character routine above. */
51 while((character = prom_nbgetchar()) == -1) ; in prom_getchar()
[all …]
/linux/kernel/sched/
H A Dcompletion.c1 // SPDX-License-Identifier: GPL-2.0
4 * Generic wait-for-completion handler;
7 * wait_for_completion default blocks whereas semaphore default non-block. The
20 raw_spin_lock_irqsave(&x->wait.lock, flags); in complete_with_flags()
22 if (x->done != UINT_MAX) in complete_with_flags()
23 x->done++; in complete_with_flags()
24 swake_up_locked(&x->wait, wake_flags); in complete_with_flags()
25 raw_spin_unlock_irqrestore(&x->wait.lock, flags); in complete_with_flags()
34 * complete: - signals a single thread waiting on this completion
52 * complete_all: - signals all threads waiting on this completion
[all …]
/linux/Documentation/gpu/
H A Dvgaarbiter.rst7 implemented on PCI will typically have the same "hard-decoded" addresses as
8 they did on ISA. For more details see "PCI Bus Binding to IEEE Std 1275-1994
14 than one legacy device co-exists on the same machine. But the problem happens
23 ---------------------------
46 An IO state string is of the form {io,mem,io+mem,none}, mc and
47 ic are respectively mem and io lock counts (for debugging/
51 unplugged, we get "invalid" then for card_ID and an -ENODEV
63 non-blocking acquire locks on target (returns EBUSY if
90 In the case of devices hot-{un,}plugged, there is a hook - pci_notify() - to
94 There is also an in-kernel API of the arbiter in case DRM, vgacon, or other
[all …]
/linux/Documentation/core-api/
H A Dgfp_mask-from-fs-io.rst4 GFP masks used from FS/IO context
13 Code paths in the filesystem and IO stacks must be careful when
15 memory reclaim calling back into the FS or IO paths and blocking on
16 already held resources (e.g. locks - most commonly those used for the
25 of GFP_NOFS/GFP_NOIO can lead to memory over-reclaim or other memory
36 mask so no memory allocation can recurse back in the FS/IO.
38 .. kernel-doc:: include/linux/sched/mm.h
40 .. kernel-doc:: include/linux/sched/mm.h
43 FS/IO code then simply calls the appropriate save function before
44 any critical section with respect to the reclaim is started - e.g.
[all …]
H A Dmemory-allocation.rst35 :ref:`Documentation/core-api/mm-api.rst <mm-api-gfp-flags>` provides
47 IO or filesystem operations. Consequently, under memory pressure
76 back into the FS or IO paths and blocking on already held
79 :ref:`Documentation/core-api/gfp_mask-from-fs-io.rst <gfp_mask_from_fs_io>`.
89 ------------------------------
94 * ``GFP_KERNEL & ~__GFP_RECLAIM`` - optimistic allocation without _any_
100 * ``GFP_KERNEL & ~__GFP_DIRECT_RECLAIM`` (or ``GFP_NOWAIT``)- optimistic
107 * ``(GFP_KERNEL|__GFP_HIGH) & ~__GFP_DIRECT_RECLAIM`` (aka ``GFP_ATOMIC``) -
109 some portion of memory reserves. Usually used from interrupt/bottom-half
112 * ``GFP_KERNEL`` - both background and direct reclaim are allowed and the
[all …]
/linux/drivers/hwmon/
H A Dshtc1.c1 // SPDX-License-Identifier: GPL-2.0-or-later
13 #include <linux/hwmon-sysfs.h>
41 /* delays for non-blocking i2c commands, both in us */
75 int ret = i2c_master_send(client, data->command, SHTC1_CMD_LENGTH); in shtc1_update_values()
77 dev_err(&client->dev, "failed to send command: %d\n", ret); in shtc1_update_values()
78 return ret < 0 ? ret : -EIO; in shtc1_update_values()
82 * In blocking mode (clock stretching mode) the I2C bus in shtc1_update_values()
84 * will wait until the data is ready. For non blocking mode, we in shtc1_update_values()
87 if (!data->setup.blocking_io) in shtc1_update_values()
88 usleep_range(data->nonblocking_wait_time, in shtc1_update_values()
[all …]
/linux/arch/sparc/prom/
H A Dconsole_32.c1 // SPDX-License-Identifier: GPL-2.0
3 * console.c: Routines that deal with sending and receiving IO
19 /* Non blocking put character to console device, returns -1 if
25 int i = -1; in prom_nbputchar()
30 if ((*(romvec->pv_nbputchar))(*buf)) in prom_nbputchar()
35 if ((*(romvec->pv_v2devops).v2_dev_write)(*romvec->pv_v2bootargs.fd_stdout, in prom_nbputchar()
53 len--; in prom_console_write_buf()
/linux/io_uring/
H A Drw.c1 // SPDX-License-Identifier: GPL-2.0
6 #include <linux/blk-mq.h>
37 if (req->flags & REQ_F_SUPPORT_NOWAIT) in io_file_supports_nowait()
43 return vfs_poll(req->file, &pt) & mask; in io_file_supports_nowait()
55 uiov = u64_to_user_ptr(rw->addr); in io_iov_compat_buffer_select_prep()
57 return -EFAULT; in io_iov_compat_buffer_select_prep()
58 if (__get_user(clen, &uiov->iov_len)) in io_iov_compat_buffer_select_prep()
59 return -EFAULT; in io_iov_compat_buffer_select_prep()
61 return -EINVAL; in io_iov_compat_buffer_select_prep()
63 rw->len = clen; in io_iov_compat_buffer_select_prep()
[all …]
/linux/drivers/block/null_blk/
H A Dnull_blk.h1 /* SPDX-License-Identifier: GPL-2.0 */
10 #include <linux/blk-mq.h>
14 #include <linux/fault-inject.h>
98 bool blocking; /* blocking blk-mq device */ member
99 bool use_per_node_hctx; /* use per-node allocation for hardware context */
106 bool no_sched; /* no IO scheduler for the device */
107 bool shared_tags; /* share tag set between devices for blk-mq */
151 return -EINVAL; in null_init_zoned_dev()
155 return -ENODEV; in null_register_zoned_dev()
173 return -EOPNOTSUPP; in zone_cond_store()
H A Dmain.c1 // SPDX-License-Identifier: GPL-2.0-only
39 * CACHE: Device is using a write-back cache.
65 #define NULLB_PAGE_LOCK (MAP_SZ - 1)
66 #define NULLB_PAGE_FREE (MAP_SZ - 2)
86 MODULE_PARM_DESC(no_sched, "No io scheduler");
103 * Documentation/fault-injection/fault-injection.rst.
138 return -EINVAL; in null_param_store_val()
141 return -EINVAL; in null_param_store_val()
177 module_param_named(blocking, g_blocking, bool, 0444);
178 MODULE_PARM_DESC(blocking, "Register as a blocking blk-mq driver device");
[all …]
/linux/arch/m68k/include/asm/
H A Doplib.h1 /* SPDX-License-Identifier: GPL-2.0 */
37 * and usage utility functions. Only prom-lib should use these,
54 /* Map and unmap devices in IO space at virtual addresses. Note that the
67 * of the string is different on V0 vs. V2->higher proms. The caller must
92 * These lists are returned pre-sorted, this should make your life easier
110 /* Enter the prom, with no chance of continuation for the stand-alone
119 * XXX The arguments are different on V0 vs. V2->higher proms, grrr! XXX
141 /* Non-blocking get character from console. */
144 /* Non-blocking put character to console. */
147 /* Blocking get character from console. */
[all …]
/linux/Documentation/devicetree/bindings/power/supply/
H A Dsbs,sbs-battery.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/power/supply/sbs,sbs-battery.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Sebastian Reichel <sre@kernel.org>
16 - $ref: power-supply.yaml#
21 - items:
22 - enum:
23 - ti,bq20z45
24 - ti,bq20z65
[all …]
/linux/fs/fuse/
H A Dfile.c3 Copyright (C) 2001-2008 Miklos Szeredi <miklos@szeredi.hu>
34 if (!fm->fc->atomic_o_trunc) in fuse_send_open()
37 if (fm->fc->handle_killpriv_v2 && in fuse_send_open()
62 ff->fm = fm; in fuse_file_alloc()
64 ff->args = kzalloc(sizeof(*ff->args), GFP_KERNEL_ACCOUNT); in fuse_file_alloc()
65 if (!ff->args) { in fuse_file_alloc()
71 INIT_LIST_HEAD(&ff->write_entry); in fuse_file_alloc()
72 refcount_set(&ff->count, 1); in fuse_file_alloc()
73 RB_CLEAR_NODE(&ff->polled_node); in fuse_file_alloc()
74 init_waitqueue_head(&ff->poll_wait); in fuse_file_alloc()
[all …]
/linux/drivers/gpu/drm/xe/
H A Dxe_map.h1 /* SPDX-License-Identifier: MIT */
9 #include <linux/iosys-map.h>
18 * of :ref:`driver-api/device-io:Generalizing Access to System and I/O Memory`
20 * accesses (e.g. for blocking runtime_pm D3Cold on Discrete Graphics).
52 if (map->is_iomem) in xe_map_read32()
53 return readl(map->vaddr_iomem); in xe_map_read32()
55 return READ_ONCE(*(u32 *)map->vaddr); in xe_map_read32()
63 if (map->is_iomem) in xe_map_write32()
64 writel(val, map->vaddr_iomem); in xe_map_write32()
66 *(u32 *)map->vaddr = val; in xe_map_write32()
/linux/drivers/media/usb/dvb-usb/
H A Ddibusb.h1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /* Header file for all dibusb-based-receivers.
4 * Copyright (C) 2004-5 Patrick Boettcher (patrick.boettcher@posteo.de)
6 * see Documentation/driver-api/media/drivers/dvb-usb.rst for more information
14 #include "dvb-usb.h"
65 /* interrupt the internal read loop, when blocking */
68 /* io control
/linux/Documentation/filesystems/iomap/
H A Ddesign.rst1 .. SPDX-License-Identifier: GPL-2.0
78 1. Obtain a space mapping via ``->iomap_begin``
80 2. For each sub-unit of work...
89 4. Release the mapping via ``->iomap_end``, if necessary
105 -----------
127 device pre-shutdown hook from returning before other threads have
147 constraints on IO alignment or size.
152 ----------------
158 .. code-block:: c
193 ``->iomap_end`` function must delete the reservation.
[all …]
/linux/drivers/misc/mei/
H A Dmei_dev.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (c) 2003-2022, Intel Corporation. All rights reserved.
44 #define MEI_MAX_OPEN_HANDLE_COUNT (MEI_CLIENTS_MAX - 1)
71 * enum mei_dev_pxp_mode - MEI PXP mode state
86 * enum mei_dev_reset_to_pxp - reset to PXP mode performed
107 * enum mei_cb_file_ops - file operation associated with the callback
131 * enum mei_cl_io_mode - io mode between driver and fw
133 * @MEI_CL_IO_TX_BLOCKING: send is blocking
136 * @MEI_CL_IO_RX_NONBLOCK: recv is non-blocking
165 * struct mei_dma_dscr - dma address descriptor
[all …]
/linux/fs/btrfs/
H A Ddirect-io.c1 // SPDX-License-Identifier: GPL-2.0
6 #include "delalloc-space.h"
7 #include "direct-io.h"
8 #include "extent-tree.h"
39 struct extent_io_tree *io_tree = &BTRFS_I(inode)->io_tree; in lock_extent_direct()
46 return -EAGAIN; in lock_extent_direct()
55 ret = -EAGAIN; in lock_extent_direct()
67 lockend - lockstart + 1); in lock_extent_direct()
77 (!writing || !filemap_range_has_page(inode->i_mapping, in lock_extent_direct()
86 ret = -EAGAIN; in lock_extent_direct()
[all …]
/linux/drivers/pci/
H A Dvgaarb.c1 // SPDX-License-Identifier: MIT
48 unsigned int io_lock_cnt; /* legacy IO lock count */
50 unsigned int io_norm_cnt; /* normal IO count */
69 return "io+mem"; in vga_iostate_to_str()
71 return "io"; in vga_iostate_to_str()
81 * In theory, we could hand out locks on IO and MEM separately to in vga_str_to_iostate()
90 if (strncmp(buf, "io+mem", 6) == 0) in vga_str_to_iostate()
92 else if (strncmp(buf, "io", 2) == 0) in vga_str_to_iostate()
111 if (pdev == vgadev->pdev) in vgadev_find()
117 * vga_default_device - return the default VGA device, for vgacon
[all …]
/linux/fs/bcachefs/
H A Dsix.h1 /* SPDX-License-Identifier: GPL-2.0 */
23 * six_lock_read(&foo->lock);
24 * six_unlock_read(&foo->lock);
27 * six_lock_intent(&foo->lock);
28 * six_lock_write(&foo->lock);
29 * six_unlock_write(&foo->lock);
30 * six_unlock_intent(&foo->lock);
42 * six_lock_type(&foo->lock, SIX_LOCK_read);
43 * six_trylock_convert(&foo->lock, SIX_LOCK_read, SIX_LOCK_intent)
44 * six_lock_type(&foo->lock, SIX_LOCK_write);
[all …]
/linux/Documentation/scheduler/
H A Dschedutil.rst15 individual tasks to task-group slices to CPU runqueues. As the basis for this
31 Note that blocked tasks still contribute to the aggregates (task-group slices
57 r_dvfs := -----
61 hardware counters (Intel APERF/MPERF, ARMv8.4-AMU) to provide us this ratio.
65 f_cur := ----- * P0
68 4C-turbo; if available and turbo enabled
69 f_max := { 1C-turbo; if turbo enabled
73 r_dvfs := min( 1, ----- )
88 - kernel/sched/pelt.h:update_rq_clock_pelt()
89 - arch/x86/kernel/smpboot.c:"APERF/MPERF frequency ratio computation."
[all …]
/linux/drivers/clk/hisilicon/
H A Dclk-hi3660-stub.c1 // SPDX-License-Identifier: GPL-2.0-or-later
5 * Copyright (c) 2013-2017 Hisilicon Limited.
13 #include <linux/clk-provider.h>
17 #include <linux/io.h>
22 #include <dt-bindings/clock/hi3660-clock.h>
66 stub_clk->rate = readl(freq_reg + (stub_clk->id << 2)) * MHZ; in hi3660_stub_clk_recalc_rate()
67 return stub_clk->rate; in hi3660_stub_clk_recalc_rate()
85 stub_clk->msg[0] = stub_clk->cmd; in hi3660_stub_clk_set_rate()
86 stub_clk->msg[1] = rate / MHZ; in hi3660_stub_clk_set_rate()
89 stub_clk->msg[0], stub_clk->msg[1]); in hi3660_stub_clk_set_rate()
[all …]
/linux/sound/pci/mixart/
H A Dmixart.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
61 /* memory-maps */
64 /* one and only blocking message or notification may be pending */
126 …last absolute stream position where period_elapsed was called (multiple of runtime->period_size) */
127 u32 buf_periods; /* periods counter in the buffer (< runtime->periods) */
128 …ag; /* defines with buf_period_pos the exact position in the buffer (< runtime->period_size) */
172 /* UID's for the physical io's */

12345678910