Check for syscall definitions, before declaring __weak helper
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
diff --git a/helpers.c b/helpers.c
index 779f9fb..c695331 100644
--- a/helpers.c
+++ b/helpers.c
@@ -3,14 +3,17 @@
#include <sys/socket.h>
#include <sys/time.h>
#include <netinet/in.h>
+#include <unistd.h>
#include "compiler/compiler.h"
#include "os/os.h"
+#ifndef __NR_fallocate
int __weak posix_fallocate(int fd, off_t offset, off_t len)
{
return 0;
}
+#endif
int __weak inet_aton(const char *cp, struct in_addr *inp)
{
@@ -30,8 +33,11 @@
return ret;
}
+#ifndef __NR_sync_file_range
int __weak sync_file_range(int fd, off64_t offset, off64_t nbytes,
unsigned int flags)
{
- return 0;
+ errno = ENOSYS;
+ return -1;
}
+#endif