Jelajahi Sumber

finish moving 32-bit-specific junk out of source files.

Rich Felker 14 tahun lalu
induk
melakukan
cfe373146d

+ 23 - 0
arch/i386/syscall.h

@@ -480,6 +480,29 @@ static inline long syscall6(long n, long a1, long a2, long a3, long a4, long a5,
 #define __NR_setfsgid __NR_setfsgid32
 
 
+/* fixup legacy 32-bit-vs-lfs64 junk */
+#undef __NR_getdents
+#undef __NR_ftruncate
+#undef __NR_truncate
+#undef __NR_stat
+#undef __NR_fstat
+#undef __NR_lstat
+#undef __NR_statfs
+#undef __NR_fstatfs
+#define __NR_getdents __NR_getdents64
+#define __NR_ftruncate __NR_ftruncate64
+#define __NR_truncate __NR_truncate64
+#define __NR_stat __NR_stat64
+#define __NR_fstat __NR_fstat64
+#define __NR_lstat __NR_lstat64
+#define __NR_statfs __NR_statfs64
+#define __NR_fstatfs __NR_fstatfs64
+#define __NR_fstatat __NR_fstatat64
+#define __NR_pread __NR_pread64
+#define __NR_pwrite __NR_pwrite64
+
+
+
 #undef O_LARGEFILE
 #define O_LARGEFILE 0100000
 

+ 1 - 1
src/dirent/__getdents.c

@@ -4,7 +4,7 @@
 
 int __getdents(int fd, struct dirent *buf, size_t len)
 {
-	return syscall3(__NR_getdents64, fd, (long)buf, len);
+	return syscall3(__NR_getdents, fd, (long)buf, len);
 }
 
 weak_alias(__getdents, getdents);

+ 1 - 1
src/stat/fstat.c

@@ -4,7 +4,7 @@
 
 int fstat(int fd, struct stat *buf)
 {
-	return syscall2(__NR_fstat64, fd, (long)buf);
+	return syscall2(__NR_fstat, fd, (long)buf);
 }
 
 LFS64(fstat);

+ 1 - 1
src/stat/fstatat.c

@@ -4,7 +4,7 @@
 
 int fstatat(int fd, const char *path, struct stat *buf, int flag)
 {
-	return syscall4(__NR_fstatat64, fd, (long)path, (long)buf, flag);
+	return syscall4(__NR_fstatat, fd, (long)path, (long)buf, flag);
 }
 
 LFS64(fstatat);

+ 1 - 1
src/stat/fstatvfs.c

@@ -4,7 +4,7 @@
 
 int fstatvfs(int fd, struct statvfs *buf)
 {
-	return syscall2(__NR_fstatfs64, fd, (long)buf);
+	return syscall2(__NR_fstatfs, fd, (long)buf);
 }
 
 weak_alias(fstatvfs, fstatfs);

+ 1 - 1
src/stat/lstat.c

@@ -4,7 +4,7 @@
 
 int lstat(const char *path, struct stat *buf)
 {
-	return syscall2(__NR_lstat64, (long)path, (long)buf);
+	return syscall2(__NR_lstat, (long)path, (long)buf);
 }
 
 LFS64(lstat);

+ 1 - 1
src/stat/stat.c

@@ -4,7 +4,7 @@
 
 int stat(const char *path, struct stat *buf)
 {
-	return syscall2(__NR_stat64, (long)path, (long)buf);
+	return syscall2(__NR_stat, (long)path, (long)buf);
 }
 
 LFS64(stat);

+ 1 - 1
src/stat/statvfs.c

@@ -4,7 +4,7 @@
 
 int statvfs(const char *path, struct statvfs *buf)
 {
-	return syscall2(__NR_statfs64, (long)path, (long)buf);
+	return syscall2(__NR_statfs, (long)path, (long)buf);
 }
 
 weak_alias(statvfs, statfs);

+ 1 - 6
src/unistd/ftruncate.c

@@ -4,12 +4,7 @@
 
 int ftruncate(int fd, off_t length)
 {
-	if (sizeof(long) == 8)
-		return syscall2(__NR_ftruncate, fd, length);
-	else {
-		union { long long ll; long l[2]; } u = { length };
-		return syscall3(__NR_ftruncate64, fd, u.l[0], u.l[1]);
-	}
+	return syscall3(__NR_ftruncate, fd, SYSCALL_LL(length));
 }
 
 LFS64(ftruncate);

+ 1 - 1
src/unistd/pread.c

@@ -6,7 +6,7 @@ ssize_t pread(int fd, void *buf, size_t size, off_t ofs)
 {
 	ssize_t r;
 	CANCELPT_BEGIN;
-	r = syscall5(__NR_pread64, fd, (long)buf, size, SYSCALL_LL(ofs));
+	r = syscall5(__NR_pread, fd, (long)buf, size, SYSCALL_LL(ofs));
 	CANCELPT_END;
 	return r;
 }

+ 1 - 1
src/unistd/pwrite.c

@@ -6,7 +6,7 @@ ssize_t pwrite(int fd, const void *buf, size_t size, off_t ofs)
 {
 	ssize_t r;
 	CANCELPT_BEGIN;
-	r = syscall5(__NR_pwrite64, fd, (long)buf, size, SYSCALL_LL(ofs));
+	r = syscall5(__NR_pwrite, fd, (long)buf, size, SYSCALL_LL(ofs));
 	CANCELPT_END;
 	return r;
 }

+ 1 - 6
src/unistd/truncate.c

@@ -4,12 +4,7 @@
 
 int truncate(const char *path, off_t length)
 {
-	if (sizeof(long) == 8)
-		return syscall2(__NR_truncate, (long)path, length);
-	else {
-		union { long long ll; long l[2]; } u = { length };
-		return syscall3(__NR_truncate64, (long)path, u.l[0], u.l[1]);
-	}
+	return syscall3(__NR_truncate, (long)path, SYSCALL_LL(length));
 }
 
 LFS64(truncate);