rwlock.c

来自「xen虚拟机源代码安装包」· C语言 代码 · 共 29 行

C
29
字号
#include <asm/atomic.h>#include <asm/rwlock.h>#if defined(CONFIG_SMP)asm(".align  4\n"".globl  __write_lock_failed\n""__write_lock_failed:\n""        " LOCK "addl    $" RW_LOCK_BIAS_STR ",(%"__OP"ax)\n""1:      rep; nop\n""        cmpl    $" RW_LOCK_BIAS_STR ",(%"__OP"ax)\n""        jne     1b\n""        " LOCK "subl    $" RW_LOCK_BIAS_STR ",(%"__OP"ax)\n""        jnz     __write_lock_failed\n""        ret\n"".align  4\n"".globl  __read_lock_failed\n""__read_lock_failed:\n""        lock ; incl     (%"__OP"ax)\n""1:      rep; nop\n""        cmpl    $1,(%"__OP"ax)\n""        js      1b\n""        lock ; decl     (%"__OP"ax)\n""        js      __read_lock_failed\n""        ret\n");#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?