(unhandled instruction bytes: 0x2E 0x8D 0xB4 0x26
478837 valgrind fails to read debug info for rust binaries
479041 Executables without RW sections do not trigger debuginfo reading
+480052 WARNING: unhandled amd64-freebsd syscall: 580
n-i-bz Add redirect for memccpy
To see details of a given bug, visit
#if (FREEBSD_VERS >= FREEBSD_13_1)
-// unimpl __NR_fspacectl 580
+#if (FREEBSD_VERS >= FREEBSD_14)
+// there was a hole in the numbering
+DECL_TEMPLATE(freebsd, sys_fspacectl) // 580
+#endif
// unimpl __NR_sched_getcpu 581
DECL_TEMPLATE(freebsd, sys_swapoff) // 582
#endif
#if (FREEBSD_VERS >= FREEBSD_15)
-DECL_TEMPLATE(freebsd, sys_kqueuex); // 583
-DECL_TEMPLATE(freebsd, sys_membarrier); // 584
-DECL_TEMPLATE(freebsd, sys_timerfd_create); // 585
-DECL_TEMPLATE(freebsd, sys_timerfd_gettime); // 586
-DECL_TEMPLATE(freebsd, sys_timerfd_settime); // 587
+DECL_TEMPLATE(freebsd, sys_kqueuex) // 583
+DECL_TEMPLATE(freebsd, sys_membarrier) // 584
+DECL_TEMPLATE(freebsd, sys_timerfd_create) // 585
+DECL_TEMPLATE(freebsd, sys_timerfd_gettime) // 586
+DECL_TEMPLATE(freebsd, sys_timerfd_settime) // 587
#endif
DECL_TEMPLATE(freebsd, sys_fake_sigreturn)
#if (FREEBSD_VERS >= FREEBSD_13_1)
+#if (FREEBSD_VERS >= FREEBSD_14)
+// SYS_fspacectl 580
+// int fspacectl(int fd, int cmd, const struct spacectl_range *rqsr, int flags,
+// struct spacectl_range *rmsr);
+PRE(sys_fspacectl)
+{
+ PRINT("fspacectl ( %" FMT_REGWORD "d, %" FMT_REGWORD "d, %#" FMT_REGWORD "x, %" FMT_REGWORD "d, %#" FMT_REGWORD "x )", SARG1, SARG2, ARG3, SARG4, ARG5);
+ PRE_REG_READ5(int, "fspacectl", int, fd, int, cmd, const struct spacectl_range *, rqsr, int, flags, struct spacectl_range *, rmsr);
+ PRE_MEM_READ("fspacectl(rqsr)", (Addr)ARG3, sizeof(struct vki_spacectl_range));
+ if (ARG5) {
+ PRE_MEM_WRITE("fspacectl(rmsr)", (Addr)ARG5, sizeof(struct vki_spacectl_range));
+ }
+}
+
+POST(sys_fspacectl)
+{
+ if (ARG5) {
+ POST_MEM_WRITE((Addr)ARG5, sizeof(struct vki_spacectl_range));
+ }
+}
+#endif
+
// SYS_swapoff 582
// int swapoff(const char *special, u_int flags);
PRE(sys_swapoff)
#endif
#if (FREEBSD_VERS >= FREEBSD_13_1)
- // unimpl __NR_fspacectl 580
+
+#if (FREEBSD_VERS >= FREEBSD_14)
+ BSDXY(__NR_fspacectl, sys_fspacectl), // 580
+#endif
// unimpl __NR_sched_getcpu 581
BSDX_(__NR_swapoff, sys_swapoff), // 582
#endif
#define VKI_F_SEAL_GROW 0x0004
#define VKI_F_SEAL_WRITE 0x0008
+struct vki_spacectl_range {
+ vki_off_t r_offset;
+ vki_off_t r_len;
+};
+
+
//----------------------------------------------------------------------
// From sys/unistd.h
//----------------------------------------------------------------------
#if (FREEBSD_VERS >= FREEBSD_13_1)
+#if (FREEBSD_VERS >= FREEBSD_14)
#define __NR_fspacectl 580
+#endif
#define __NR_sched_getcpu 581
#define __NR_swapoff 582