/DragonOS-0.1.5/kernel/src/common/ |
D | spinlock.h | 23 } spinlock_t; typedef 25 extern void __arch_spin_lock(spinlock_t *lock); 26 extern void __arch_spin_unlock(spinlock_t *lock); 28 extern void __arch_spin_lock_no_preempt(spinlock_t *lock); 29 extern void __arch_spin_unlock_no_preempt(spinlock_t *lock); 31 extern long __arch_spin_trylock(spinlock_t *lock); 38 void spin_lock(spinlock_t *lock) in spin_lock() 48 void spin_unlock(spinlock_t *lock) in spin_unlock() 58 void spin_init(spinlock_t *lock) in spin_init() 70 void spin_lock_no_preempt(spinlock_t *lock) in spin_lock_no_preempt() [all …]
|
D | mutex.h | 20 spinlock_t wait_lock; // mutex操作锁,用于对mutex的list的操作进行加锁
|
D | kfifo.h | 130 …ays_inline kfifo_in_locked(struct kfifo_t *fifo, const void *from, uint32_t size, spinlock_t *lock) in kfifo_in_locked() 147 uint32_t __always_inline kfifo_out_locked(struct kfifo_t *fifo, void *to, uint32_t size, spinlock_t… in kfifo_out_locked()
|
D | lockref.h | 19 spinlock_t lock;
|
D | wait_queue.h | 57 spinlock_t lock; // 队列需要有一个自旋锁,虽然目前内部并没有使用,但是以后可能会用.[在completion内部使用]
|
D | idr.h | 71 spinlock_t lock;
|
/DragonOS-0.1.5/kernel/src/arch/x86_64/asm/ |
D | spinlock.c | 4 void __arch_spin_lock(spinlock_t *lock) in __arch_spin_lock() 19 void __arch_spin_unlock(spinlock_t *lock) in __arch_spin_unlock() 25 void __arch_spin_lock_no_preempt(spinlock_t *lock) in __arch_spin_lock_no_preempt() 39 void __arch_spin_unlock_no_preempt(spinlock_t *lock) in __arch_spin_unlock_no_preempt() 44 long __arch_spin_trylock(spinlock_t *lock) in __arch_spin_trylock()
|
/DragonOS-0.1.5/docs/kernel/locking/ |
D | locks.md | 23 - spinlock_t 24 - {ref}`RawSpinLock <_spinlock_doc_rawspinlock>`(Rust版本的spinlock_t,但与spinlock_t不兼容)
|
D | spinlock.md | 24 `RawSpinLock`与C版本的`spinlock_t`不具有二进制兼容性。如果由于暂时的兼容性的需求,要操作C版本的`spinlock_t`,请使用`spinlock.rs`中提供的C版本的s… 26 但是,对于新开发的功能,请不要使用C版本的`spinlock_t`,因为随着代码重构的进行,我们将会移除它。
|
D | lockref.md | 41 spinlock_t lock;
|
/DragonOS-0.1.5/kernel/src/libs/ |
D | spinlock.rs | 10 use crate::include::bindings::bindings::{spin_lock, spin_unlock, spinlock_t}; 15 pub fn spin_lock_irqsave(lock: *mut spinlock_t, flags: &mut u64) { in spin_lock_irqsave() argument 24 pub fn spin_unlock_irqrestore(lock: *mut spinlock_t, flags: &u64) { in spin_unlock_irqrestore() argument 34 pub fn spin_is_locked(lock: &spinlock_t) -> bool { in spin_is_locked() 40 impl Default for spinlock_t { implementation 47 pub fn spin_lock_irq(lock: *mut spinlock_t) { in spin_lock_irq() argument 55 pub fn spin_unlock_irq(lock: *mut spinlock_t) { in spin_unlock_irq() argument
|
D | wait_queue.c | 46 spin_unlock((spinlock_t *)lock); in wait_queue_sleep_on_unlock()
|
D | wait_queue_head.c | 43 spin_unlock((spinlock_t *)lock); in wait_queue_sleep_with_node_unlock()
|
/DragonOS-0.1.5/kernel/src/process/ |
D | initial_proc.rs | 6 include::bindings::bindings::{atomic_t, process_control_block, spinlock_t}, 22 siglock: spinlock_t { lock: 1 },
|
/DragonOS-0.1.5/kernel/src/driver/usb/ |
D | usb.c | 9 extern spinlock_t xhci_controller_init_lock; // xhci控制器初始化锁
|
/DragonOS-0.1.5/kernel/src/driver/interrupt/apic/ |
D | apic_timer.c | 10 static spinlock_t apic_timer_init_lock = {1};
|
/DragonOS-0.1.5/kernel/src/include/DragonOS/ |
D | signal.h | 132 spinlock_t siglock;
|
/DragonOS-0.1.5/kernel/src/libs/libUI/ |
D | textui.h | 111 spinlock_t lock; // 窗口操作锁
|
D | screen_manager.c | 13 static spinlock_t scm_register_lock; // 框架注册锁 14 static spinlock_t scm_screen_own_lock = {1}; // 改变屏幕归属者时,需要对该锁加锁
|
D | textui.c | 11 static spinlock_t __window_id_lock = {1}; 22 static spinlock_t change_lock;
|
/DragonOS-0.1.5/kernel/src/mm/ |
D | slab.h | 46 spinlock_t lock; // 当前内存池的操作锁
|
D | mm-types.h | 110 spinlock_t op_lock; // 页面操作锁
|
/DragonOS-0.1.5/kernel/src/time/ |
D | timer.c | 10 static spinlock_t sched_lock;
|
/DragonOS-0.1.5/kernel/src/driver/keyboard/ |
D | ps2_keyboard.c | 19 static spinlock_t ps2_kb_buf_rw_lock;
|
/DragonOS-0.1.5/kernel/src/driver/video/ |
D | video.c | 23 static spinlock_t daemon_refresh_lock;
|