函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\kernel\signal_compat.c Create Date:2022-07-27 08:30:19
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:The compat_siginfo_t structure and handing code is very easy* to break in several ways. It must always be updated when new* updates are made to the main siginfo_t, and* copy_siginfo_to_user32() must be updated when the

函数原型:static inline void signal_compat_build_tests(void)

返回类型:void

参数:

20  _sifields_offset等于offsetof(compat_siginfo_t, _sifields)
28  BUILD_BUG_ON - break compile if a condition is true(NSIGILL != 11)
29  BUILD_BUG_ON - break compile if a condition is true(NSIGFPE != 15)
30  BUILD_BUG_ON - break compile if a condition is true(NSIGSEGV != 7)
31  BUILD_BUG_ON - break compile if a condition is true(NSIGBUS != 5)
32  BUILD_BUG_ON - break compile if a condition is true(NSIGTRAP != 5)
33  BUILD_BUG_ON - break compile if a condition is true(NSIGCHLD != 6)
34  BUILD_BUG_ON - break compile if a condition is true(NSIGSYS != 1)
37  BUILD_BUG_ON - break compile if a condition is true(sizeof(compat_siginfo_t) != 128)
43  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, _sifields) != 3 * sizeof(int))
46  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_signo) != 0)
47  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_errno) != 4)
48  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_code) != 8)
50  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_signo) != 0)
51  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_errno) != 4)
52  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_code) != 8)
69  The offsets of all the (unioned) si_fields are fixed* in the ABI, of course. Make sure none of them ever* move and are always at the beginning:(_kill)
70  Ensure that the size of each si_field never changes(_kill, 2 * sizeof(int))
71  CHECK_SI_SIZE(_kill, 2 * sizeof(int))
73  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, How these fields are to be accessed.) != 0x10)
74  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_uid) != 0x14)
75  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, How these fields are to be accessed.) != 0xC)
76  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_uid) != 0x10)
78  The offsets of all the (unioned) si_fields are fixed* in the ABI, of course. Make sure none of them ever* move and are always at the beginning:(_timer)
79  Ensure that the size of each si_field never changes(_timer, 3 * sizeof(int))
80  CHECK_SI_SIZE(_timer, 6 * sizeof(int))
82  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_tid) != 0x10)
83  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_overrun) != 0x14)
84  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_value) != 0x18)
85  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_tid) != 0x0C)
86  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_overrun) != 0x10)
87  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_value) != 0x14)
89  The offsets of all the (unioned) si_fields are fixed* in the ABI, of course. Make sure none of them ever* move and are always at the beginning:(_rt)
90  Ensure that the size of each si_field never changes(_rt, 3 * sizeof(int))
91  CHECK_SI_SIZE(_rt, 4 * sizeof(int))
93  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, How these fields are to be accessed.) != 0x10)
94  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_uid) != 0x14)
95  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_value) != 0x18)
96  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, How these fields are to be accessed.) != 0x0C)
97  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_uid) != 0x10)
98  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_value) != 0x14)
100  The offsets of all the (unioned) si_fields are fixed* in the ABI, of course. Make sure none of them ever* move and are always at the beginning:(_sigchld)
101  Ensure that the size of each si_field never changes(_sigchld, 5 * sizeof(int))
102  CHECK_SI_SIZE(_sigchld, 8 * sizeof(int))
104  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, How these fields are to be accessed.) != 0x10)
105  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_uid) != 0x14)
106  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_status) != 0x18)
107  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_utime) != 0x20)
108  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_stime) != 0x28)
109  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, How these fields are to be accessed.) != 0x0C)
110  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_uid) != 0x10)
111  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_status) != 0x14)
112  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_utime) != 0x18)
113  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_stime) != 0x1C)
123  The offsets of all the (unioned) si_fields are fixed* in the ABI, of course. Make sure none of them ever* move and are always at the beginning:(_sigfault)
124  Ensure that the size of each si_field never changes(_sigfault, 4 * sizeof(int))
125  CHECK_SI_SIZE(_sigfault, 8 * sizeof(int))
127  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_addr) != 0x10)
128  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_addr) != 0x0C)
130  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_addr_lsb) != 0x18)
131  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_addr_lsb) != 0x10)
133  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_lower) != 0x20)
134  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_upper) != 0x28)
135  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_lower) != 0x14)
136  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_upper) != 0x18)
138  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_pkey) != 0x20)
139  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_pkey) != 0x14)
141  The offsets of all the (unioned) si_fields are fixed* in the ABI, of course. Make sure none of them ever* move and are always at the beginning:(_sigpoll)
142  Ensure that the size of each si_field never changes(_sigpoll, 2 * sizeof(int))
143  CHECK_SI_SIZE(_sigpoll, 4 * sizeof(int))
145  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_band) != 0x10)
146  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_fd) != 0x18)
147  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_band) != 0x0C)
148  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_fd) != 0x10)
150  The offsets of all the (unioned) si_fields are fixed* in the ABI, of course. Make sure none of them ever* move and are always at the beginning:(_sigsys)
151  Ensure that the size of each si_field never changes(_sigsys, 3 * sizeof(int))
152  CHECK_SI_SIZE(_sigsys, 4 * sizeof(int))
154  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_call_addr) != 0x10)
155  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_syscall) != 0x18)
156  BUILD_BUG_ON - break compile if a condition is true(offsetof(siginfo_t, si_arch) != 0x1C)
157  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_call_addr) != 0x0C)
158  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_syscall) != 0x10)
159  BUILD_BUG_ON - break compile if a condition is true(offsetof(compat_siginfo_t, si_arch) != 0x14)
调用者
名称描述
sigaction_compat_abi