| /freebsd/share/man/man9/ |
| H A D | sleepqueue.9 | 1 .\" Copyright (c) 2000-2004 John H. Baldwin <jhb@FreeBSD.org> 55 …eepq_add "const void *wchan" "struct lock_object *lock" "const char *wmesg" "int flags" "int queue" 59 .Fn sleepq_broadcast "const void *wchan" "int flags" "int pri" "int queue" 71 .Fn sleepq_signal "const void *wchan" "int flags" "int pri" "int queue" 78 .Fn sleepq_sleepcnt "const void *wchan" "int queue" 92 Each queue is associated with a specific wait channel when it is active, 93 and only one queue may be associated with a wait channel at any given point 95 The implementation of each wait channel splits its sleepqueue into 2 sub-queues 97 An active queue holds a list of threads that are blocked on the associated 98 wait channel. [all …]
|
| H A D | taskqueue.9 | 1 .\" -*- nroff -*- 41 .Bd -literal 47 STAILQ_ENTRY(task) ta_link; /* link for queue */ 49 u_short ta_priority; /* priority of task in queue */ 80 .Fn taskqueue_set_callback "struct taskqueue *queue" "enum taskqueue_callback_type cb_type" "taskqu… 82 .Fn taskqueue_free "struct taskqueue *queue" 84 .Fn taskqueue_enqueue "struct taskqueue *queue" "struct task *task" 86 .Fn taskqueue_enqueue_flags "struct taskqueue *queue" "struct task *task" "int flags" 88 .Fn taskqueue_enqueue_timeout "struct taskqueue *queue" "struct timeout_task *timeout_task" "int ti… 90 .Fn taskqueue_enqueue_timeout_sbt "struct taskqueue *queue" "struct timeout_task *timeout_task" "sb… [all …]
|
| H A D | alq.9 | 3 .\" Copyright (c) 2009-2010 The FreeBSD Foundation 96 for an Asynchronous Logging Queue. 105 .Bd -literal -offset indent 128 each of fixed size (set at queue creation time). 133 function creates a new variable length asynchronous logging queue. 154 argument sets the size (in bytes) of the underlying queue. 182 argument should be set to the size (in bytes) of the underlying queue and the 201 to the designated variable length mode queue 215 wait message. 216 A write will automatically schedule the queue [all …]
|
| /freebsd/sys/kern/ |
| H A D | subr_sleepqueue.c | 1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 29 * Implementation of sleep queues used to hold queue of threads blocked on 30 * a wait channel. Sleep queues are different from turnstiles in that wait 34 * and sleep queue implementations. (Note: turnstiles were implemented 37 * a linked list of queues. An individual queue is located by using a hash 39 * for the queue. This means that a wait channel object does not need to 40 * embed its queue head just as locks do not embed their turnstile queue 41 * head. Threads also carry around a sleep queue that they lend to the 42 * wait channel when blocking. Just as in turnstiles, the queue includes [all …]
|
| H A D | kern_alq.c | 1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 5 * Copyright (c) 2008-2009, Lawrence Stewart <lstewart@freebsd.org> 6 * Copyright (c) 2009-2010, The FreeBSD Foundation 57 /* Async. Logging Queue */ 67 int aq_flags; /* Queue flags */ 69 * NB: Used as a wait channel so must 73 struct mtx aq_mtx; /* Queue lock */ 83 #define AQ_SHUTDOWN 0x0008 /* Queue no longer valid */ 84 #define AQ_ORDERED 0x0010 /* Queue enforces ordered writes */ [all …]
|
| /freebsd/sys/contrib/ck/include/spinlock/ |
| H A D | hclh.h | 2 * Copyright 2013-2015 Olivier Houchard 3 * Copyright 2010-2015 Samy Al Bahra. 39 unsigned int wait; member 52 unowned->previous = NULL; in ck_spinlock_hclh_init() 53 unowned->wait = false; in ck_spinlock_hclh_init() 54 unowned->splice = false; in ck_spinlock_hclh_init() 55 unowned->cluster_id = cluster_id; in ck_spinlock_hclh_init() 62 ck_spinlock_hclh_locked(struct ck_spinlock_hclh **queue) in ck_spinlock_hclh_locked() argument 67 head = ck_pr_load_ptr(queue); in ck_spinlock_hclh_locked() 68 r = ck_pr_load_uint(&head->wait); in ck_spinlock_hclh_locked() [all …]
|
| H A D | clh.h | 2 * Copyright 2010-2015 Samy Al Bahra. 40 unsigned int wait; member 49 unowned->previous = NULL; in ck_spinlock_clh_init() 50 unowned->wait = false; in ck_spinlock_clh_init() 57 ck_spinlock_clh_locked(struct ck_spinlock_clh **queue) in ck_spinlock_clh_locked() argument 62 head = ck_pr_load_ptr(queue); in ck_spinlock_clh_locked() 63 r = ck_pr_load_uint(&head->wait); in ck_spinlock_clh_locked() 69 ck_spinlock_clh_lock(struct ck_spinlock_clh **queue, struct ck_spinlock_clh *thread) in ck_spinlock_clh_lock() argument 73 /* Indicate to the next thread on queue that they will have to block. */ in ck_spinlock_clh_lock() 74 thread->wait = true; in ck_spinlock_clh_lock() [all …]
|
| H A D | mcs.h | 2 * Copyright 2010-2015 Samy Al Bahra. 48 ck_spinlock_mcs_init(struct ck_spinlock_mcs **queue) in ck_spinlock_mcs_init() argument 51 *queue = NULL; in ck_spinlock_mcs_init() 57 ck_spinlock_mcs_trylock(struct ck_spinlock_mcs **queue, in ck_spinlock_mcs_trylock() argument 62 node->locked = true; in ck_spinlock_mcs_trylock() 63 node->next = NULL; in ck_spinlock_mcs_trylock() 66 r = ck_pr_cas_ptr(queue, NULL, node); in ck_spinlock_mcs_trylock() 72 ck_spinlock_mcs_locked(struct ck_spinlock_mcs **queue) in ck_spinlock_mcs_locked() argument 76 r = ck_pr_load_ptr(queue) != NULL; in ck_spinlock_mcs_locked() 82 ck_spinlock_mcs_lock(struct ck_spinlock_mcs **queue, in ck_spinlock_mcs_lock() argument [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Support/ |
| H A D | ThreadPool.cpp | 1 //==-- llvm/Support/ThreadPool.cpp - A ThreadPool implementation -*- C++ -*-==// 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7 //===----------------------------------------------------------------------===// 11 //===----------------------------------------------------------------------===// 15 #include "llvm/Config/llvm-config.h" 26 // by nullptr ThreadPoolTaskGroup pointer in the Tasks queue) and functionality 30 // queue, and functions called to work only on tasks from one group take that 46 set_thread_name(formatv("llvm-worker-{0}", ThreadID)); in grow() 67 // Wait for tasks to be pushed in the queue in processTasks() 68 QueueCondition.wait(LockGuard, [&] { in processTasks() [all …]
|
| /freebsd/sys/contrib/dev/ath/ath_hal/ar9300/ |
| H A D | ar9300_xmit.c | 46 if (AH9300(ah)->ah_tx_trig_level >= MAX_TX_FIFO_THRESHOLD && in ar9300_update_tx_trig_level() 55 omask = ar9300_set_interrupts(ah, ahp->ah_mask_reg &~ HAL_INT_GLOBAL, 0); in ar9300_update_tx_trig_level() 66 new_level--; in ar9300_update_tx_trig_level() 75 /* re-enable chip interrupts */ in ar9300_update_tx_trig_level() 78 AH9300(ah)->ah_tx_trig_level = new_level; in ar9300_update_tx_trig_level() 89 return (AH9300(ah)->ah_tx_trig_level); in ar9300_get_tx_trig_level() 93 * Set the properties of the tx queue with the parameters 100 HAL_CAPABILITIES *p_cap = &AH_PRIVATE(ah)->ah_caps; in ar9300_set_tx_queue_props() 102 if (q >= p_cap->halTotalQueues) { in ar9300_set_tx_queue_props() 103 HALDEBUG(ah, HAL_DEBUG_QUEUE, "%s: invalid queue num %u\n", __func__, q); in ar9300_set_tx_queue_props() [all …]
|
| /freebsd/lib/libsys/ |
| H A D | _umtx_op.2 | 49 .St -p1003.1-2001 57 All objects require ABI-mandated alignment, but this is not currently 61 .Bl -tag -width indent 63 Allow selection of the process-shared sleep queue for the thread sleep 66 The process-shared or process-private sleep queue is selected based on 70 Otherwise, if the flag is not specified, the process-private sleep queue 77 .Bl -hang -offset indent 79 .Bd -literal 95 .Bl -tag -width indent 104 The robust mutex is in a non-recoverable state. [all …]
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Support/ |
| H A D | ThreadPool.h | 1 //===-- llvm/Support/ThreadPool.h - A ThreadPool implementation -*- C++ -*-===// 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7 //===----------------------------------------------------------------------===// 11 //===----------------------------------------------------------------------===// 17 #include "llvm/Config/llvm-config.h" 40 /// the same queue, but it is possible to wait only for a specific group of 43 /// It is also possible for worker threads to submit new tasks and wait for 45 /// (directly or indirectly) tries to wait for its own completion, or when all 48 /// generally safe to wait() for a group as long as groups do not form a cycle. 56 /// Destroying the pool will drain the pending tasks and wait. The current [all …]
|
| /freebsd/sys/sys/ |
| H A D | sleepqueue.h | 1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 32 * Sleep queue interface. Sleep/wakeup, condition variables, and sx 33 * locks use a sleep queue for the queue of threads blocked on a sleep 36 * A thread calls sleepq_lock() to lock the sleep queue chain associated 37 * with a given wait channe [all...] |
| H A D | tty.h | 1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 36 #include <sys/queue.h> 54 * Per-TTY structure, containing buffers, etc. 63 struct mtx t_mtxobj; /* Per-TTY lock (when not borrowing). */ 82 #define TF_STOPPED 0x01000 /* Output flow control - stopped. */ 87 #define TF_BUSY_IN 0x20000 /* Process busy in read() -- not supported. */ 93 struct ttyinq t_inq; /* (t) Input queue. */ 95 struct ttyoutq t_outq; /* (t) Output queue. */ 99 struct cv t_inwait; /* (t) Input wait queue. */ [all …]
|
| /freebsd/share/doc/psd/02.implement/ |
| H A D | implement | 4 .\" Copyright (C) Caldera International Inc. 2001-2002. All rights reserved. 40 .EH 'PSD:2-%''UNIX Implementation' 41 .OH 'UNIX Implementation''PSD:2-%' 55 \&\\$3\s-1\\$1\\s0\&\\$2 69 .AU "MH 2C-523" 2394 75 This paper describes in high-level terms the 120 but have that way be the least-common divisor 125 It is a soap-box platform on 159 from a read-only text segment, 165 from shared-text segments. [all …]
|
| /freebsd/sys/contrib/openzfs/module/zstd/lib/common/ |
| H A D | pool.c | 1 // SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0-only 3 * Copyright (c) 2016-2020, Yann Collet, Facebook, Inc. 6 * This source code is licensed under both the BSD-style license (found in the 9 * You may select, at your option, one of the above-listed licenses. 21 # pragma warning(disable : 4204) /* disable: C4204: non-constant aggregate initializer */ 42 /* The queue is a circular buffer */ 43 POOL_job *queue; member 50 /* Indicates if the queue is empty */ 53 /* The mutex protects the queue */ 55 /* Condition variable for pushers to wait on when the queue is full */ [all …]
|
| /freebsd/sys/contrib/zstd/lib/common/ |
| H A D | pool.c | 5 * This source code is licensed under both the BSD-style license (found in the 8 * You may select, at your option, one of the above-listed licenses. 20 # pragma warning(disable : 4204) /* disable: C4204: non-constant aggregate initializer */ 41 /* The queue is a circular buffer */ 42 POOL_job *queue; member 49 /* Indicates if the queue is empty */ 52 /* The mutex protects the queue */ 54 /* Condition variable for pushers to wait on when the queue is full */ 56 /* Condition variables for poppers to wait on when the queue is empty */ 58 /* Indicates if the queue is shutting down */ [all …]
|
| /freebsd/contrib/ofed/opensm/complib/ |
| H A D | cl_timer.c | 2 * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved. 3 * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved. 4 * Copyright (c) 1996-2003 Intel Corporation. All rights reserved. 16 * - Redistributions of source code must retain the above 20 * - Redistributions in binary form must reproduce the above 58 cl_qlist_t queue; member 83 cl_qlist_init(&gp_timer_prov->queue); in __cl_timer_prov_create() 85 pthread_mutex_init(&gp_timer_prov->mutex, NULL); in __cl_timer_prov_create() 86 pthread_cond_init(&gp_timer_prov->cond, NULL); in __cl_timer_prov_create() 88 if (pthread_create(&gp_timer_prov->thread, NULL, in __cl_timer_prov_create() [all …]
|
| /freebsd/sys/dev/mthca/ |
| H A D | mthca_provider.h | 16 * - Redistributions of source code must retain the above 20 * - Redistributions in binary form must reproduce the above 41 #include <linux/wait.h> 140 * We have one global lock that protects dev->cq/qp_table. Each 160 * - lock cq/qp_table and look up struct 161 * - increment ref count in struct 162 * - drop cq/qp_table lock 163 * - lock struct, do your thing, and unlock struct 164 * - decrement ref count; if zero, wake up waiters 167 * - lock cq/qp_table [all …]
|
| /freebsd/contrib/llvm-project/llvm/tools/llvm-mca/Views/ |
| H A D | TimelineView.h | 1 //===--------------------- TimelineView.h -----------------------*- C++ -*-===// 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7 //===----------------------------------------------------------------------===// 10 /// This file implements a timeline view for the llvm-mca tool. 28 /// [1,0] . DeE------R .. vmovshdup %xmm0, %xmm1 29 /// [1,1] . DeE------R .. vpermilpd $1, %xmm0, %xmm2 30 /// [1,2] . DeE-----R .. vpermilps $231, %xmm0, %xmm5 31 /// [1,3] . D=eeeE--R .. vaddss %xmm1, %xmm0, %xmm3 48 /// E: Instruction Executed (write-back stage) 50 /// =: Instruction waiting in the Scheduler's queue [all …]
|
| /freebsd/usr.bin/clang/llvm-mca/ |
| H A D | llvm-mca.1 | 4 .nr rst2man-indent-level 0 7 \\$1 \\n[an-margin] 8 level \\n[rst2man-indent-level] 9 level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] 10 - 11 \\n[rst2man-indent0] 12 \\n[rst2man-indent1] 13 \\n[rst2man-indent2] 18 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] 19 . nr rst2man-indent-level +1 [all …]
|
| /freebsd/contrib/sendmail/src/ |
| H A D | sched.c | 34 if (pid == -1) \ 47 proc_list_add(pid, pname, ptype, 0, -1, NULL); \ 48 /* parent -- pick up intermediate zombie */ \ 56 /* child -- clean up signals */ \ 89 ** QM -- queue "manager" 98 ** fork()s and runs as process to deliver queue entries 108 sm_syslog(LOG_DEBUG, NOQID, "queue manager: start"); in qm() 110 FORK_P1("Queue manager -- fork() failed", "QM", PROC_QM); in qm() 118 ** Initially wait indefinitely, then only wait in qm() 122 tmo = -1; in qm() [all …]
|
| /freebsd/lib/libnvmf/ |
| H A D | libnvmf.h | 1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 4 * Copyright (c) 2022-2024 Chelsio Communications, Inc. 24 * Parameters shared by all queue-pairs of an association. Note that 35 uint8_t pda; /* Tx-side PDA. */ 44 /* Parameters specific to a single queue pair of an association. */ 56 /* Transport-independent APIs. */ 60 * a controller. After the admin queue has been allocated and the 62 * nvmf_update_association to update internal transport-specific 76 /* The most recent association-wide error message. */ [all …]
|
| /freebsd/sys/contrib/openzfs/man/man8/ |
| H A D | zfs-wait.8 | 1 .\" SPDX-License-Identifier: CDDL-1.0 10 .\" or https://opensource.org/licenses/CDDL-1.0. 28 .\" Copyright (c) 2017 Open-E, Inc. All Rights Reserved. 35 .Nm zfs-wait 36 .Nd wait for activity in ZFS filesystem to stop 39 .Cm wait 56 .Bl -tag -compact -offset Ds -width "deleteq" 58 The filesystem's internal delete queue to empty 61 Note that the internal delete queue does not finish draining until
|
| /freebsd/sys/ofed/include/rdma/ |
| H A D | rdmavt_qp.h | 4 /*- 5 * SPDX-License-Identifier: BSD-2-Clause OR GPL-2.0 29 * - Redistributions of source code must retain the above copyright 31 * - Redistributions in binary form must reproduce the above copyright 35 * - Neither the name of Intel Corporation nor the names of its 73 * RVT_S_SIGNAL_REQ_WR - set if QP send WRs contain completion signaled 74 * RVT_S_BUSY - send tasklet is processing the QP 75 * RVT_S_TIMER - the RC retry timer is active 76 * RVT_S_ACK_PENDING - an ACK is waiting to be sent after RDMA read/atomics 77 * RVT_S_WAIT_FENCE - waiting for all prior RDMA read or atomic SWQEs [all …]
|