Home
last modified time | relevance | path

Searched full:writer (Results 1 – 25 of 601) sorted by relevance

12345678910>>...25

/kernel/linux/linux-5.10/Documentation/trace/
Dring-buffer-design.rst28 - the task that writes into the ring buffer (same as writer)
30 writer
81 but a writer may interrupt another writer, but it must finish writing
82 before the previous writer may continue. This is very important to the
94 This is very much like a writer being preempted by an interrupt and
99 cannot preempt/interrupt a writer, but it may read/consume from the
100 buffer at the same time as a writer is writing, but the reader must be
102 and can be preempted by a writer.
104 A writer can preempt a reader, but a reader cannot preempt a writer.
106 as a writer.
[all …]
/kernel/linux/linux-6.6/Documentation/trace/
Dring-buffer-design.rst28 - the task that writes into the ring buffer (same as writer)
30 writer
81 but a writer may interrupt another writer, but it must finish writing
82 before the previous writer may continue. This is very important to the
94 This is very much like a writer being preempted by an interrupt and
99 cannot preempt/interrupt a writer, but it may read/consume from the
100 buffer at the same time as a writer is writing, but the reader must be
102 and can be preempted by a writer.
104 A writer can preempt a reader, but a reader cannot preempt a writer.
106 as a writer.
[all …]
/kernel/linux/linux-5.10/kernel/locking/
Dpercpu-rwsem.c20 rcuwait_init(&sem->writer); in __percpu_init_rwsem()
55 * If the reader misses the writer's assignment of sem->block, then the in __percpu_down_read_trylock()
56 * writer is guaranteed to see the reader's increment. in __percpu_down_read_trylock()
59 * the writer looks are guaranteed to see the sem->block value, which in __percpu_down_read_trylock()
61 * their sem->read_count, so that it doesn't matter that the writer in __percpu_down_read_trylock()
76 /* Prod writer to re-evaluate readers_active_check() */ in __percpu_down_read_trylock()
77 rcuwait_wake_up(&sem->writer); in __percpu_down_read_trylock()
114 * Specifically, we wake readers until we've woken a single writer, or until a
136 return !reader; /* wake (readers until) 1 writer */ in percpu_rwsem_wake_function()
223 * Try set sem->block; this provides writer-writer exclusion. in percpu_down_write()
[all …]
Drwsem.c7 * Writer lock-stealing by Alex Shi <alex.shi@intel.com>
40 * When the rwsem is either owned by an anonymous writer, or it is
41 * reader-owned, but a spinning writer has timed out, both nonspinnable
44 * writer nonspinnable bit and clear it only to give writers preference
48 * When a writer acquires a rwsem, it puts its task_struct pointer
64 * relatively more preferred than writers. When a writer times out spinning
82 * Therefore, any writers that had observed the setting of the writer
90 * a writer is able to acquire the rwsem in the fast path or somehow a
91 * reader or writer in the slowpath doesn't observe the nonspinable bit.
121 * Bit 0 - writer locked bit
[all …]
/kernel/linux/linux-6.6/kernel/locking/
Dpercpu-rwsem.c22 rcuwait_init(&sem->writer); in __percpu_init_rwsem()
57 * If the reader misses the writer's assignment of sem->block, then the in __percpu_down_read_trylock()
58 * writer is guaranteed to see the reader's increment. in __percpu_down_read_trylock()
61 * the writer looks are guaranteed to see the sem->block value, which in __percpu_down_read_trylock()
63 * their sem->read_count, so that it doesn't matter that the writer in __percpu_down_read_trylock()
78 /* Prod writer to re-evaluate readers_active_check() */ in __percpu_down_read_trylock()
79 rcuwait_wake_up(&sem->writer); in __percpu_down_read_trylock()
116 * Specifically, we wake readers until we've woken a single writer, or until a
138 return !reader; /* wake (readers until) 1 writer */ in percpu_rwsem_wake_function()
234 * Try set sem->block; this provides writer-writer exclusion. in percpu_down_write()
[all …]
Drwbase_rt.c4 * RT-specific reader/writer semaphores and reader/writer locks
26 * 2) Wake the writer waiting in down_write()/write_lock() #3
29 * locks on RT are not writer fair, but writers, which should be avoided in
33 * It's possible to make the rw primitives writer fair by keeping a list of
34 * active readers. A blocked writer would force all newly incoming readers
41 * The risk of writer starvation is there, but the pathological use cases
80 * Reader1 Reader2 Writer in __rwbase_read_lock()
88 * wake(Writer) in __rwbase_read_lock()
102 * That would put Reader1 behind the writer waiting on in __rwbase_read_lock()
115 * On success the rtmutex is held, so there can't be a writer in __rwbase_read_lock()
[all …]
Drwsem.c7 * Writer lock-stealing by Alex Shi <alex.shi@intel.com>
41 * When the rwsem is reader-owned and a spinning writer has timed out,
44 * When a writer acquires a rwsem, it puts its task_struct pointer
59 * is previously owned by a writer and the following conditions are met:
60 * - rwsem is not currently writer owned
84 * Bit 0 - writer locked bit
93 * Bit 0 - writer locked bit
106 * atomic_long_cmpxchg() will be used to obtain writer lock.
113 * For all the above cases, wait_lock will be held. A writer must also
294 * by a writer.
[all …]
/kernel/linux/linux-5.10/include/linux/
Dpercpu-rwsem.h15 struct rcuwait writer; member
34 .writer = __RCUWAIT_INITIALIZER(name.writer), \
55 * We are in an RCU-sched read-side critical section, so the writer in percpu_down_read()
58 * the writer won't be checking until we're past the preempt_enable() in percpu_down_read()
59 * and that once the synchronize_rcu() is done, the writer will see in percpu_down_read()
110 * writer. in percpu_up_read()
119 rcuwait_wake_up(&sem->writer); in percpu_up_read()
/kernel/linux/linux-6.6/include/linux/
Dpercpu-rwsem.h15 struct rcuwait writer; member
34 .writer = __RCUWAIT_INITIALIZER(name.writer), \
55 * We are in an RCU-sched read-side critical section, so the writer in percpu_down_read()
58 * the writer won't be checking until we're past the preempt_enable() in percpu_down_read()
59 * and that once the synchronize_rcu() is done, the writer will see in percpu_down_read()
110 * writer. in percpu_up_read()
119 rcuwait_wake_up(&sem->writer); in percpu_up_read()
/kernel/linux/linux-6.6/Documentation/locking/
Dseqlock.rst8 Sequence counters are a reader-writer consistency mechanism with
9 lockless readers (read-only retry loops), and no writer starvation. They
30 interrupted writer. If that reader belongs to a real-time scheduling
34 as the writer can invalidate a pointer that the reader is following.
53 requirements of writer serialization and non-preemptibility, use
97 sequence counters associate the lock used for writer serialization at
165 embedded spinlock for writer serialization and non-preemptibility.
195 1. Normal Sequence readers which never block a writer but they must
196 retry if a writer is in progress by detecting change in the sequence
206 2. Locking readers which will wait if a writer or another locking reader
[all …]
Dlocktypes.rst135 rw_semaphore is a multiple readers and single writer lock mechanism.
138 writer starvation.
150 Because an rw_semaphore writer cannot grant its priority to multiple
153 can grant their priority to a writer, a preempted low-priority writer will
155 writer from starving readers.
299 rwlock_t is a multiple readers and single writer lock mechanism.
303 thus preventing writer starvation.
313 - Because an rwlock_t writer cannot grant its priority to multiple
316 can grant their priority to a writer, a preempted low-priority writer
318 preventing that writer from starving readers.
/kernel/linux/linux-5.10/Documentation/locking/
Dseqlock.rst8 Sequence counters are a reader-writer consistency mechanism with
9 lockless readers (read-only retry loops), and no writer starvation. They
30 interrupted writer. If that reader belongs to a real-time scheduling
34 as the writer can invalidate a pointer that the reader is following.
53 requirements of writer serialization and non-preemptibility, use
97 sequence counters associate the lock used for writer serialization at
165 embedded spinlock for writer serialization and non-preemptibility.
195 1. Normal Sequence readers which never block a writer but they must
196 retry if a writer is in progress by detecting change in the sequence
206 2. Locking readers which will wait if a writer or another locking reader
[all …]
Dlocktypes.rst135 rw_semaphore is a multiple readers and single writer lock mechanism.
138 writer starvation.
150 Because an rw_semaphore writer cannot grant its priority to multiple
153 can grant their priority to a writer, a preempted low-priority writer will
155 writer from starving readers.
302 rwlock_t is a multiple readers and single writer lock mechanism.
306 thus preventing writer starvation.
316 - Because an rwlock_t writer cannot grant its priority to multiple
319 can grant their priority to a writer, a preempted low-priority writer
321 preventing that writer from starving readers.
/kernel/linux/linux-6.6/kernel/trace/
Dtrace_recursion_record.c43 * If there's two writers and this writer comes in second, in ftrace_record_recursion()
45 * writer will try again. It is possible that index will now in ftrace_record_recursion()
46 * be greater than nr_records. This is because the writer in ftrace_record_recursion()
48 * This writer could keep trying again until the other writer in ftrace_record_recursion()
49 * updates nr_records. But if the other writer takes an in ftrace_record_recursion()
54 * writer will simply use the next position to update the in ftrace_record_recursion()
/kernel/linux/linux-6.6/scripts/
Djobserver-exec30 # Starting with GNU Make 4.4, named pipes are used for reader and writer.
36 writer = os.open(path, os.O_WRONLY) variable
38 reader, writer = [int(x) for x in fds.split(",", 1)] variable
55 os.write(writer, jobs)
75 os.write(writer, jobs)
/kernel/linux/linux-6.6/tools/perf/util/
Ddata-convert-bt.c14 #include <babeltrace/ctf-writer/writer.h>
15 #include <babeltrace/ctf-writer/clock.h>
16 #include <babeltrace/ctf-writer/stream.h>
17 #include <babeltrace/ctf-writer/event.h>
18 #include <babeltrace/ctf-writer/event-types.h>
19 #include <babeltrace/ctf-writer/event-fields.h>
63 /* writer primitives */
64 struct bt_ctf_writer *writer; member
92 struct ctf_writer writer; member
704 stream = bt_ctf_writer_create_stream(cw->writer, cw->stream_class); in ctf_stream__create()
[all …]
/kernel/linux/linux-5.10/tools/perf/util/
Ddata-convert-bt.c14 #include <babeltrace/ctf-writer/writer.h>
15 #include <babeltrace/ctf-writer/clock.h>
16 #include <babeltrace/ctf-writer/stream.h>
17 #include <babeltrace/ctf-writer/event.h>
18 #include <babeltrace/ctf-writer/event-types.h>
19 #include <babeltrace/ctf-writer/event-fields.h>
59 /* writer primitives */
60 struct bt_ctf_writer *writer; member
88 struct ctf_writer writer; member
698 stream = bt_ctf_writer_create_stream(cw->writer, cw->stream_class); in ctf_stream__create()
[all …]
/kernel/linux/linux-6.6/drivers/acpi/acpica/
Dutlock.c4 * Module Name: utlock - Reader/Writer lock interfaces
25 * DESCRIPTION: Reader/writer lock creation and deletion interfaces.
62 * DESCRIPTION: Reader interfaces for reader/writer locks. On acquisition,
122 * DESCRIPTION: Writer interfaces for reader/writer locks. Simply acquire or
123 * release the writer mutex associated with the lock. Acquisition
/kernel/linux/linux-5.10/drivers/acpi/acpica/
Dutlock.c4 * Module Name: utlock - Reader/Writer lock interfaces
25 * DESCRIPTION: Reader/writer lock creation and deletion interfaces.
62 * DESCRIPTION: Reader interfaces for reader/writer locks. On acquisition,
122 * DESCRIPTION: Writer interfaces for reader/writer locks. Simply acquire or
123 * release the writer mutex associated with the lock. Acquisition
/kernel/linux/linux-5.10/arch/arc/include/asm/
Dspinlock.h75 * Read-write spinlocks, allowing multiple readers but only one writer.
84 * zero means writer holds the lock exclusively, deny Reader. in arch_read_lock()
140 * deny writer. Otherwise if unlocked grant to writer in arch_write_lock()
290 * Read-write spinlocks, allowing multiple readers but only one writer.
307 * zero means writer holds the lock exclusively, deny Reader. in arch_read_trylock()
332 * deny writer. Otherwise if unlocked grant to writer in arch_write_trylock()
/kernel/linux/linux-6.6/arch/arc/include/asm/
Dspinlock.h75 * Read-write spinlocks, allowing multiple readers but only one writer.
84 * zero means writer holds the lock exclusively, deny Reader. in arch_read_lock()
140 * deny writer. Otherwise if unlocked grant to writer in arch_write_lock()
290 * Read-write spinlocks, allowing multiple readers but only one writer.
307 * zero means writer holds the lock exclusively, deny Reader. in arch_read_trylock()
332 * deny writer. Otherwise if unlocked grant to writer in arch_write_trylock()
/kernel/linux/linux-6.6/kernel/printk/
Dprintk_ringbuffer.h31 * Using prb_rec_init_wr(), a writer sets @text_buf_size before calling
33 * buffers reserved for that writer.
115 desc_reserved = 0x0, /* reserved, in use by writer */
116 desc_committed = 0x1, /* committed by writer, could get reopened */
118 desc_reusable = 0x3, /* free, not yet used by any writer */
154 * The first record reserved by a writer is assigned sequence number 0.
166 * writer (head + 1) to be the first descriptor in the array. (Only the first
200 * writer, which has the assigned sequence number 0.
244 /* this will be the first record reserved by a writer */ \
289 /* Writer Interface */
/kernel/linux/linux-5.10/kernel/printk/
Dprintk_ringbuffer.h31 * Using prb_rec_init_wr(), a writer sets @text_buf_size before calling
33 * buffers reserved for that writer.
114 desc_reserved = 0x0, /* reserved, in use by writer */
115 desc_committed = 0x1, /* committed by writer, could get reopened */
117 desc_reusable = 0x3, /* free, not yet used by any writer */
153 * The first record reserved by a writer is assigned sequence number 0.
165 * writer (head + 1) to be the first descriptor in the array. (Only the first
199 * writer, which has the assigned sequence number 0.
243 /* this will be the first record reserved by a writer */ \
287 /* Writer Interface */
/kernel/linux/linux-5.10/arch/parisc/include/asm/
Dspinlock.h59 * Read-write spinlocks, allowing multiple readers but only one writer.
76 * zero means writer holds the lock exclusively, deny Reader. in arch_read_trylock()
101 * deny writer. Otherwise if unlocked grant to writer in arch_write_trylock()
/kernel/linux/linux-5.10/include/asm-generic/
Dqrwlock.h19 * Writer states & reader shift and bias.
21 #define _QW_WAITING 0x100 /* A writer is waiting */
22 #define _QW_LOCKED 0x0ff /* A writer holds the lock */
23 #define _QW_WMASK 0x1ff /* Writer mask */

12345678910>>...25