chiark / gitweb /
readahead: implement minimal readahead logic based on fanotify(), mincore() and reada...
[elogind.git] / src / missing.h
index 418dbb8c0dae8f8b872176623c78d1228ac7f24a..defe885eccb05a35d9bcacadd4a3419a03f4f3d9 100644 (file)
@@ -76,4 +76,29 @@ static inline int pivot_root(const char *new_root, const char *put_old) {
         return syscall(SYS_pivot_root, new_root, put_old);
 }
 
+#ifdef __x86_64__
+#ifndef __NR_fanotify_init
+#define __NR_fanotify_init 300
+#endif
+#ifndef __NR_fanotify_mark
+#define __NR_fanotify_mark 301
+#endif
+#else
+#ifndef __NR_fanotify_init
+#define __NR_fanotify_init 338
+#endif
+#ifndef __NR_fanotify_mark
+#define __NR_fanotify_mark 339
+#endif
+#endif
+
+static inline int fanotify_init(unsigned int flags, unsigned int event_f_flags) {
+       return syscall(__NR_fanotify_init, flags, event_f_flags);
+}
+
+static inline int fanotify_mark(int fanotify_fd, unsigned int flags, __u64 mask,
+                                int dfd, const char *pathname) {
+       return syscall(__NR_fanotify_mark, fanotify_fd, flags, mask, dfd, pathname);
+}
+
 #endif