Lines Matching defs:Queue

242 pub struct Queue(Opaque<bindings::workqueue_struct>);
244 // SAFETY: Accesses to workqueues used by [`Queue`] are thread-safe.
245 unsafe impl Send for Queue {}
246 // SAFETY: Accesses to workqueues used by [`Queue`] are thread-safe.
247 unsafe impl Sync for Queue {}
249 impl Queue {
256 pub unsafe fn from_raw<'a>(ptr: *const bindings::workqueue_struct) -> &'a Queue {
257 // SAFETY: The `Queue` type is `#[repr(transparent)]`, so the pointer cast is valid. The
259 unsafe { &*ptr.cast::<Queue>() }
340 work <- new_work!("Queue::try_spawn"),
351 /// [`try_spawn`]: Queue::try_spawn
390 /// The return type of [`Queue::enqueue`].
943 pub fn system() -> &'static Queue {
945 unsafe { Queue::from_raw(bindings::system_wq) }
952 pub fn system_highpri() -> &'static Queue {
954 unsafe { Queue::from_raw(bindings::system_highpri_wq) }
959 /// It is similar to the one returned by [`system`] but may host long running work items. Queue
961 pub fn system_long() -> &'static Queue {
963 unsafe { Queue::from_raw(bindings::system_long_wq) }
971 pub fn system_unbound() -> &'static Queue {
973 unsafe { Queue::from_raw(bindings::system_unbound_wq) }
982 pub fn system_freezable() -> &'static Queue {
984 unsafe { Queue::from_raw(bindings::system_freezable_wq) }
992 pub fn system_power_efficient() -> &'static Queue {
994 unsafe { Queue::from_raw(bindings::system_power_efficient_wq) }
1003 pub fn system_freezable_power_efficient() -> &'static Queue {
1005 unsafe { Queue::from_raw(bindings::system_freezable_power_efficient_wq) }
1012 pub fn system_bh() -> &'static Queue {
1014 unsafe { Queue::from_raw(bindings::system_bh_wq) }
1021 pub fn system_bh_highpri() -> &'static Queue {
1023 unsafe { Queue::from_raw(bindings::system_bh_highpri_wq) }