Lines Matching refs:msb

115 static long long probe_syscall(int msb, int lsb)
123 long long nr = ((long long)msb << 32) | (unsigned int)lsb;
145 static const char *syscall_str(int msb, int start, int end)
162 type, msb, lsb);
165 type, msb, lsb, lsb + (end-start));
170 static unsigned int _check_for(int msb, int start, int end, long long expect,
180 long long ret = probe_syscall(msb, nr);
184 syscall_str(msb, nr, nr),
196 syscall_str(msb, start, end),
200 syscall_str(msb, start, end), expect_str);
208 #define check_for(msb,start,end,expect) \
209 _check_for(msb,start,end,expect,#expect)
211 static bool check_zero(int msb, int nr)
213 return check_for(msb, nr, nr, 0);
216 static bool check_enosys(int msb, int nr)
218 return check_for(msb, nr, nr, -ENOSYS);
249 static void test_syscalls_common(int msb)
254 check_zero(msb, SYS_READ);
255 check_zero(msb, SYS_WRITE);
258 check_zero(msb, X64_READV);
259 check_zero(msb, X64_WRITEV);
262 check_for(msb, -64, -2, -ENOSYS);
264 check_for(msb, -1, -1, MODIFIED_BY_PTRACE);
266 check_for(msb, -1, -1, -ENOSYS);
267 check_for(msb, X32_BIT-64, X32_BIT-1, -ENOSYS);
268 check_for(msb, -64-X32_BIT, -1-X32_BIT, -ENOSYS);
269 check_for(msb, INT_MAX-64, INT_MAX-1, -ENOSYS);
272 static void test_syscalls_with_x32(int msb)
281 check_for(msb, 512, 547, -ENOSYS);
284 check_zero(msb, SYS_READ | X32_BIT);
285 check_zero(msb, SYS_WRITE | X32_BIT);
288 check_zero(msb, X32_READV | X32_BIT);
289 check_zero(msb, X32_WRITEV | X32_BIT);
292 check_enosys(msb, X64_IOCTL | X32_BIT);
293 check_enosys(msb, X64_READV | X32_BIT);
294 check_enosys(msb, X64_WRITEV | X32_BIT);
297 static void test_syscalls_without_x32(int msb)
300 check_for(msb, 0 | X32_BIT, 999 | X32_BIT, -ENOSYS);
317 int msb = msbs[i];
318 run("Checking system calls with msb = %d (0x%x)\n",
319 msb, msb);
323 test_syscalls_common(msb);
325 test_syscalls_with_x32(msb);
327 test_syscalls_without_x32(msb);