Function report |
Source Code:kernel\locking\osq_lock.c |
Create Date:2022-07-28 09:51:20 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:osq_unlock
Proto:void osq_unlock(struct optimistic_spin_queue *lock)
Type:void
Parameter:
Type | Parameter | Name |
---|---|---|
struct optimistic_spin_queue * | lock |
209 | curr = We use the value 0 to represent "no CPU", thus the encoded value* will be the CPU number incremented by 1. |
221 | node = this_cpu_ptr( & An MCS like lock especially tailored for optimistic spinning for sleeping* lock implementations (mutex, rwsem, etc)) |
223 | If next Then |
224 | WRITE_ONCE(1 if lock acquired , 1) |
225 | Return |
228 | next = Get a stable @node->next pointer, either for unlock() or unqueue() purposes.* Can return NULL in case we were the last queued and we updated @lock instead. |
229 | If next Then WRITE_ONCE(1 if lock acquired , 1) |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |