Function report |
Source Code:arch\x86\include\asm\futex.h |
Create Date:2022-07-28 10:53:17 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:arch_futex_atomic_op_inuser
Proto:static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval, unsigned int __user *uaddr)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
int | op | |
int | oparg | |
int * | oval | |
unsigned int __user * | uaddr |
48 | oldval = 0 |
53 | Case op == (int *)UADDR2 = OPARG; |
54 | __futex_atomic_op1("xchgl %0, %2", ret, oldval, uaddr, oparg) |
55 | Break |
56 | Case op == (int *)UADDR2 += OPARG; |
57 | __futex_atomic_op1(LOCK_PREFIX"xaddl %0, %2", ret, oldval, uaddr, oparg) |
59 | Break |
60 | Case op == (int *)UADDR2 |= OPARG; |
61 | __futex_atomic_op2("orl %4, %3", ret, oldval, uaddr, oparg) |
62 | Break |
63 | Case op == (int *)UADDR2 &= ~OPARG; |
64 | __futex_atomic_op2("andl %4, %3", ret, oldval, uaddr, ~oparg) |
65 | Break |
66 | Case op == (int *)UADDR2 ^= OPARG; |
67 | __futex_atomic_op2("xorl %4, %3", ret, oldval, uaddr, oparg) |
68 | Break |
69 | Default |
73 | pagefault_enable() |
78 | Return ret |
Name | Describe |
---|---|
futex_atomic_op_inuser |
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 |