Lines Matching refs:thread

58 #include <kern/thread.h>
199 struct dlil_threading_info dl_if_inpstorage; /* input thread storage */
422 static void *ifnet_delayed_run; /* wait channel for detaching thread */
542 static kern_return_t dlil_affinity_set(struct thread *, u_int32_t);
906 /* NULL ifp indicates the main input thread, called at dlil_init time */
929 inp->ifp = ifp; /* NULL for main input thread */
963 * thread or the starter thread (for loopback) can be
964 * scheduled on the same processor set as the input thread.
967 struct thread *tp = inp->input_thr;
981 panic_plain("%s: couldn't create main input thread", __func__);
984 panic_plain("%s: couldn't create %s%d input thread", __func__,
1037 printf("%s%d: input thread terminated\n",
1050 dlil_affinity_set(struct thread *tp, u_int32_t tag)
1063 thread_t thread = THREAD_NULL;
1241 * Create and start up the main DLIL input thread and the interface
1247 NULL, &thread) != KERN_SUCCESS) {
1248 panic_plain("%s: couldn't create detacher thread", __func__);
1251 thread_deallocate(thread);
1392 * that the thread gets blocked in the monitor,
1465 * Main input thread:
1469 * input thread (e.g. anything but Ethernet/PDP or those that support
1502 /* Main input thread cannot be terminated */
1522 * We should think about putting some thread starvation
1542 * Input thread for interfaces with legacy input model.
1574 * the main input thread; in theory the latter can utilize
1575 * the corresponding input thread where the packet arrived
1606 * We should think about putting some thread starvation
1619 * Input thread for interfaces with opportunistic polling input model.
1662 * the main input thread; in theory the latter can utilize
1663 * the corresponding input thread where the packet arrived
1850 * We should think about putting some thread starvation
1925 struct thread *tp = current_thread();
2006 * If there is a matching DLIL input thread associated with an
2007 * affinity set, associate this thread with the same set. We
2025 /* Associate the current thread with the new affinity tag */
2029 * Take a reference on the current thread; during detach,
2074 * If we're using the main input thread, synchronize the
2102 * If the starter thread is inactive, signal it to do work.
2122 * Treat the dedicated starter thread for lo0 as equivalent to
2123 * the driver workloop thread; if net_affinity is enabled for
2124 * the main input thread, associate this starter thread to it
2130 struct thread *tp = current_thread();
2141 /* Associate this thread with the affinity tag */
2164 printf("%s%d: starter thread terminated\n",
2226 * If the poller thread is inactive, signal it to do work.
2267 printf("%s%d: poller thread terminated\n",
2800 * only from within the DLIL input thread context.
3128 * This is mostly called from the context of the DLIL input thread;
3872 * ifnet_detach thread if detaching flag is set.
4423 /* Sanity checks on the input thread storage */
4446 * A specific DLIL input thread is created per Ethernet/cellular
4449 * use the main input thread instead.
4456 panic_plain("%s: ifp=%p couldn't get an input thread; "
4464 * starter thread to invoke the if_start callback where the packets
4476 panic_plain("%s: ifp=%p couldn't get a start thread; "
4486 * thread to invoke if_input_poll callback where the packets may
4500 panic_plain("%s: ifp=%p couldn't get a poll thread; "
4844 /* Let worker thread take care of the rest, to avoid reentrancy */
5024 * Signal the starter thread to terminate itself.
5034 * Signal the poller thread to terminate itself.
5044 * If thread affinity was set for the workloop thread, we will need
5053 struct thread *tp, *wtp, *ptp;
5065 /* Tear down poll thread affinity */
5073 /* Tear down workloop thread affinity */
5080 /* Tear down DLIL input thread affinity */
5085 /* disassociate ifp DLIL input thread */
5770 thread_t thread = THREAD_NULL;
5787 NULL, &thread) != KERN_SUCCESS) {
5788 panic("%s: couldn't create flow event advisory thread",
5792 thread_deallocate(thread);