/openbmc/linux/include/linux/ |
H A D | rwbase_rt.h | 12 atomic_t readers; member 18 .readers = ATOMIC_INIT(READER_BIAS), \ 25 atomic_set(&(rwbase)->readers, READER_BIAS); \ 31 return atomic_read(&rwb->readers) != READER_BIAS; in rw_base_is_locked() 36 return atomic_read(&rwb->readers) > 0; in rw_base_is_contended()
|
H A D | rwlock_types.h | 59 atomic_t readers; member
|
/openbmc/linux/kernel/locking/ |
H A D | rwbase_rt.c | 61 for (r = atomic_read(&rwb->readers); r < 0;) { in rwbase_read_trylock() 62 if (likely(atomic_try_cmpxchg_acquire(&rwb->readers, &r, r + 1))) in rwbase_read_trylock() 122 atomic_inc(&rwb->readers); in __rwbase_read_lock() 173 if (unlikely(atomic_dec_and_test(&rwb->readers))) in rwbase_read_unlock() 186 (void)atomic_add_return_release(READER_BIAS - bias, &rwb->readers); in __rwbase_write_unlock() 219 if (!atomic_read_acquire(&rwb->readers)) { in __rwbase_write_trylock() 220 atomic_set(&rwb->readers, WRITER_BIAS); in __rwbase_write_trylock() 238 atomic_sub(READER_BIAS, &rwb->readers); in rwbase_write_lock() 280 atomic_sub(READER_BIAS, &rwb->readers); in rwbase_write_trylock()
|
/openbmc/openbmc/meta-openembedded/meta-oe/recipes-graphics/fbida/files/ |
H A D | fbida-gcc10.patch | 21 #include "readers.h" 29 --- fbida-2.14/readers.c.org 2020-03-15 17:01:18.692683597 +0100 30 +++ fbida-2.14/readers.c 2020-03-15 16:57:19.141632384 +0100 33 #include "readers.h"
|
/openbmc/linux/fs/btrfs/ |
H A D | locking.c | 331 atomic_set(&lock->readers, 0); in btrfs_drew_lock_init() 340 if (atomic_read(&lock->readers)) in btrfs_drew_try_write_lock() 347 if (atomic_read(&lock->readers)) { in btrfs_drew_try_write_lock() 360 wait_event(lock->pending_writers, !atomic_read(&lock->readers)); in btrfs_drew_write_lock() 372 atomic_inc(&lock->readers); in btrfs_drew_read_lock() 391 if (atomic_dec_and_test(&lock->readers)) in btrfs_drew_read_unlock()
|
H A D | subpage.c | 174 atomic_set(&ret->readers, 0); in btrfs_alloc_subpage() 249 atomic_add(nbits, &subpage->readers); in btrfs_subpage_start_reader() 262 ASSERT(atomic_read(&subpage->readers) >= nbits); in btrfs_subpage_end_reader() 263 last = atomic_sub_and_test(nbits, &subpage->readers); in btrfs_subpage_end_reader() 303 ASSERT(atomic_read(&subpage->readers) == 0); in btrfs_subpage_start_writer()
|
/openbmc/linux/drivers/misc/cardreader/ |
H A D | Kconfig | 9 Alcor Micro card readers support access to many types of memory cards, 20 Realtek card readers support access to many types of memory cards, 29 Select this option to get support for Realtek USB 2.0 card readers
|
/openbmc/linux/Documentation/RCU/ |
H A D | rcu.rst | 10 must be long enough that any readers accessing the item being deleted have 21 The advantage of RCU's two-part approach is that RCU readers need 26 in read-mostly situations. The fact that RCU readers need not 30 if the RCU readers give no indication when they are done? 32 Just as with spinlocks, RCU readers are not permitted to 42 same effect, but require that the readers manipulate CPU-local
|
H A D | checklist.rst | 30 One final exception is where RCU readers are used to prevent 99 locks (that are acquired by both readers and writers) 100 that guard per-element state. Fields that the readers 106 c. Make updates appear atomic to readers. For example, 110 appear to be atomic to RCU readers, nor will sequences 161 is common to readers and updaters. However, lockdep 239 or call_srcu(), then the corresponding readers must use 245 then the readers must refrain from executing voluntary 433 when you need lightweight readers. 453 that readers can follow that could be affected by the [all …]
|
H A D | whatisRCU.rst | 81 readers is the semantics of modern CPUs guarantee that readers will see 101 readers cannot gain a reference to it. 103 b. Wait for all previous readers to complete their RCU read-side 111 The ability to wait until all readers are done allows RCU readers to 121 readers. Concurrent RCU readers can then continue accessing the old 217 readers are done, its implementation is key to RCU. For RCU 490 This primitive protects concurrent readers from the updater, 1136 a. Will readers need to block? If so, you need SRCU. 1159 If so, you should disable softirq across your readers, for 1216 allows latency to "bleed" from readers to other [all …]
|
H A D | lockdep.rst | 43 invoked by both RCU readers and updaters. 47 is invoked by both RCU-bh readers and updaters. 51 is invoked by both RCU-sched readers and updaters. 55 is invoked by both SRCU readers and updaters.
|
H A D | listRCU.rst | 54 ``tasklist_lock``. To prevent readers from noticing changes in the list 58 any readers traversing the list will see valid ``p->tasks.next`` pointers 62 all existing readers finish, which guarantees that the ``task_struct`` 64 of all RCU readers that might possibly have a reference to that object. 210 need for writers to exclude readers. 217 readers to fail spectacularly. 219 So, when readers can tolerate stale data and when entries are either added or
|
/openbmc/linux/drivers/misc/ibmasm/ |
H A D | event.c | 30 list_for_each_entry(reader, &sp->event_buffer->readers, node) in wake_up_event_readers() 123 list_add(&reader->node, &sp->event_buffer->readers); in ibmasm_event_reader_register() 153 INIT_LIST_HEAD(&buffer->readers); in ibmasm_event_buffer_init()
|
/openbmc/phosphor-webui/app/common/styles/elements/ |
H A D | paginate.scss | 48 /* screen readers only */ 88 /* screen readers only */ 100 /* screen readers only */ 126 /* screen readers only */
|
/openbmc/linux/Documentation/locking/ |
H A D | lockdep-design.rst | 410 r: stands for non-recursive readers. 411 R: stands for recursive readers. 424 The difference between recursive readers and non-recursive readers is because: 426 readers could get blocked by a write lock *waiter*. Considering the follow 442 Block conditions on readers/writers of the same lock instance: 448 3. Writers block both recursive readers and non-recursive readers. 449 4. And readers (recursive or not) don't block other recursive readers but 450 may block non-recursive readers (because of the potential co-existing 465 (W: writers, r: non-recursive readers, R: recursive readers) 527 recursive readers and non-recursive readers for L1 (as they block the same types) and [all …]
|
H A D | seqlock.rst | 9 lockless readers (read-only retry loops), and no writer starvation. They 23 is odd and indicates to the readers that an update is in progress. At 25 even again which lets readers make progress. 153 from interruption by readers. This is typically the case when the read 195 1. Normal Sequence readers which never block a writer but they must 206 2. Locking readers which will wait if a writer or another locking reader 218 according to a passed marker. This is used to avoid lockless readers
|
H A D | locktypes.rst | 95 readers. 135 rw_semaphore is a multiple readers and single writer lock mechanism. 141 exist special-purpose interfaces that allow non-owner release for readers. 151 readers, a preempted low-priority reader will continue holding its lock, 152 thus starving even high-priority writers. In contrast, because readers 155 writer from starving readers. 299 rwlock_t is a multiple readers and single writer lock mechanism. 314 readers, a preempted low-priority reader will continue holding its lock, 315 thus starving even high-priority writers. In contrast, because readers 318 preventing that writer from starving readers.
|
/openbmc/linux/fs/ |
H A D | pipe.c | 413 !READ_ONCE(pipe->readers); in pipe_writable() 446 if (!pipe->readers) { in pipe_write() 487 if (!pipe->readers) { in pipe_write() 698 if (!pipe->readers) in pipe_poll() 727 pipe->readers--; in pipe_release() 732 if (!pipe->readers != !pipe->writers) { in pipe_release() 893 pipe->readers = pipe->writers = 1; in get_pipe_inode() 1148 if (pipe->readers++ == 0) in fifo_open() 1177 if (!is_pipe && !pipe->readers) { in fifo_open() 1191 pipe->readers++; in fifo_open() [all …]
|
/openbmc/qemu/tests/unit/ |
H A D | test-rcu-list.c | 351 int duration = 0, readers = 0; in main() local 371 readers = strtoul(argv[2], NULL, 0); in main() 373 if (duration && readers) { in main() 374 rcu_qtest(argv[0], duration, readers); in main()
|
/openbmc/linux/drivers/soc/aspeed/ |
H A D | aspeed-p2a-ctrl.c | 65 u32 readers; member 192 ctrl->readers += 1; in aspeed_p2a_ioctl() 275 priv->parent->readers -= priv->read; in aspeed_p2a_release() 299 if (!open_regions && priv->parent->readers == 0) in aspeed_p2a_release()
|
/openbmc/linux/drivers/hid/ |
H A D | hid-roccat.c | 47 struct list_head readers; member 191 list_add_tail(&reader->node, &device->readers); in roccat_open() 270 list_for_each_entry(reader, &device->readers, node) { in roccat_report_event() 339 INIT_LIST_HEAD(&device->readers); in roccat_connect()
|
/openbmc/openbmc/meta-openembedded/meta-oe/recipes-support/openct/ |
H A D | openct_0.6.20.bb | 4 OpenCT implements drivers for several smart card readers. \ 9 readers to remote machines via TCP/IP."
|
/openbmc/linux/drivers/iio/ |
H A D | TODO | 14 to state struct and using property handlers and readers.
|
/openbmc/openbmc/meta-openembedded/meta-python/recipes-devtools/python/ |
H A D | python3-pyatspi_2.46.1.bb | 2 …PI2 is a protocol over DBus, toolkit widgets use to provide content to screen readers such as Orca"
|
/openbmc/qemu/docs/devel/ |
H A D | rcu.txt | 9 RCU supports concurrency between a single writer and multiple readers, 33 readers will not be able to get a reference to the old data. After 37 there cannot be any readers who hold references to the data structure, 162 with readers, if the updater never mutates a field within a 163 data item that is already accessible to readers. This is the 166 before qatomic_rcu_set() makes the data item visible to readers.
|