[SPARC]: sys_newfstatat --> sys_fstatat64
authorDavid S. Miller <davem@sunset.davemloft.net>
Mon, 13 Feb 2006 07:30:11 +0000 (23:30 -0800)
committerDavid S. Miller <davem@sunset.davemloft.net>
Mon, 13 Feb 2006 07:30:11 +0000 (23:30 -0800)
Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc/kernel/systbls.S
arch/sparc64/kernel/sys_sparc32.c
arch/sparc64/kernel/systbls.S
include/asm-sparc/unistd.h
include/asm-sparc64/unistd.h

index c0314705d73a15654639abfb6d33c627dbc55e55..768de64b371fd0be3a7065ce26d4fbb550d78ea6 100644 (file)
@@ -76,7 +76,7 @@ sys_call_table:
 /*270*/        .long sys_io_submit, sys_io_cancel, sys_io_getevents, sys_mq_open, sys_mq_unlink
 /*275*/        .long sys_mq_timedsend, sys_mq_timedreceive, sys_mq_notify, sys_mq_getsetattr, sys_waitid
 /*280*/        .long sys_ni_syscall, sys_add_key, sys_request_key, sys_keyctl, sys_openat
-/*285*/        .long sys_mkdirat, sys_mknodat, sys_fchownat, sys_futimesat, sys_newfstatat
+/*285*/        .long sys_mkdirat, sys_mknodat, sys_fchownat, sys_futimesat, sys_fstatat64
 /*290*/        .long sys_unlinkat, sys_renameat, sys_linkat, sys_symlinkat, sys_readlinkat
 /*295*/        .long sys_fchmodat, sys_faccessat, sys_pselect6, sys_ppoll, sys_unshare
 
index 9264ccbaaafad7ec436f3a8b68221731dac0c143..417727bd87bab0ef5604b554189cac6c8e3d3434 100644 (file)
@@ -428,6 +428,27 @@ asmlinkage long compat_sys_fstat64(unsigned int fd,
        return error;
 }
 
+asmlinkage long compat_sys_fstatat64(unsigned int dfd, char __user *filename,
+               struct compat_stat64 __user * statbuf, int flag)
+{
+       struct kstat stat;
+       int error = -EINVAL;
+
+       if ((flag & ~AT_SYMLINK_NOFOLLOW) != 0)
+               goto out;
+
+       if (flag & AT_SYMLINK_NOFOLLOW)
+               error = vfs_lstat_fd(dfd, filename, &stat);
+       else
+               error = vfs_stat_fd(dfd, filename, &stat);
+
+       if (!error)
+               error = cp_compat_stat64(&stat, statbuf);
+
+out:
+       return error;
+}
+
 asmlinkage long compat_sys_sysfs(int option, u32 arg1, u32 arg2)
 {
        return sys_sysfs(option, arg1, arg2);
index a19168510be2bf5f95b70ff3dc8a502993f366e0..c3adb7ac167d1b84c8bfd13cb412a98804d90951 100644 (file)
@@ -77,7 +77,7 @@ sys_call_table32:
 /*270*/        .word sys32_io_submit, sys_io_cancel, compat_sys_io_getevents, sys32_mq_open, sys_mq_unlink
        .word compat_sys_mq_timedsend, compat_sys_mq_timedreceive, compat_sys_mq_notify, compat_sys_mq_getsetattr, compat_sys_waitid
 /*280*/        .word sys_ni_syscall, sys_add_key, sys_request_key, sys_keyctl, compat_sys_openat
-       .word sys_mkdirat, sys_mknodat, sys_fchownat, compat_sys_futimesat, compat_sys_newfstatat
+       .word sys_mkdirat, sys_mknodat, sys_fchownat, compat_sys_futimesat, compat_sys_fstatat64
 /*285*/        .word sys_unlinkat, sys_renameat, sys_linkat, sys_symlinkat, sys_readlinkat
        .word sys_fchmodat, sys_faccessat, compat_sys_pselect6, compat_sys_ppoll, sys_unshare
 
@@ -146,7 +146,7 @@ sys_call_table:
 /*270*/        .word sys_io_submit, sys_io_cancel, sys_io_getevents, sys_mq_open, sys_mq_unlink
        .word sys_mq_timedsend, sys_mq_timedreceive, sys_mq_notify, sys_mq_getsetattr, sys_waitid
 /*280*/        .word sys_nis_syscall, sys_add_key, sys_request_key, sys_keyctl, sys_openat
-       .word sys_mkdirat, sys_mknodat, sys_fchownat, sys_futimesat, sys_newfstatat
+       .word sys_mkdirat, sys_mknodat, sys_fchownat, sys_futimesat, sys_fstatat64
 /*285*/        .word sys_unlinkat, sys_renameat, sys_linkat, sys_symlinkat, sys_readlinkat
        .word sys_fchmodat, sys_faccessat, sys_pselect6, sys_ppoll, sys_unshare
 
index 0615d601a7c67560b23634a8f51ddd6dd4f96aa9..64ec640a40eed6dd3abcdf8f295dddd95e07f036 100644 (file)
 #define __NR_mknodat           286
 #define __NR_fchownat          287
 #define __NR_futimesat         288
-#define __NR_newfstatat                289
+#define __NR_fstatat64         289
 #define __NR_unlinkat          290
 #define __NR_renameat          291
 #define __NR_linkat            292
index c58ba8a096cf4579aa65f136c17ff0396dbdbdc6..a284986b154149578cf9f453fa453b374e730f24 100644 (file)
 #define __NR_mknodat           286
 #define __NR_fchownat          287
 #define __NR_futimesat         288
-#define __NR_newfstatat                289
+#define __NR_fstatat64         289
 #define __NR_unlinkat          290
 #define __NR_renameat          291
 #define __NR_linkat            292