[PATCH] e4defrag: fix ppc build

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Kyle McMartin <kyle@xxxxxxxxxxx>

ppc glibc seems to be missing sync_file_range, so we fell back
to the local define, and there ppc differs as well, so the
build was failing.

Thanks to Kyle for the patch w/ the tidy solution.

Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
---

diff --git a/misc/e4defrag.c b/misc/e4defrag.c
index 4c83fa3..23f01b8 100644
--- a/misc/e4defrag.c
+++ b/misc/e4defrag.c
@@ -305,8 +305,10 @@ static int posix_fadvise(int fd, loff_t offset, size_t len, int advise)
#warning Using locally defined sync_file_range interface.

#ifndef __NR_sync_file_range
+#ifndef __NR_sync_file_range2 /* ppc */
#error Your kernel headers dont define __NR_sync_file_range
#endif
+#endif

/*
 * sync_file_range() -	Sync file region.
@@ -318,7 +320,11 @@ static int posix_fadvise(int fd, loff_t offset, size_t len, int advise)
 */
int sync_file_range(int fd, loff_t offset, loff_t length, unsigned int flag)
{
+#ifdef __NR_sync_file_range
	return syscall(__NR_sync_file_range, fd, offset, length, flag);
+#else
+	return syscall(__NR_sync_file_range2, fd, flag, offset, length);
+#endif
}
#endif /* ! HAVE_SYNC_FILE_RANGE */


--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux