public inbox for linuxppc-dev@ozlabs.org 
 help / color / mirror / Atom feed
From: Andreas Schwab <schwab@suse•de>
To: linuxppc-dev@ozlabs•org
Subject: Re: [PATCH] Wire up *at syscalls
Date: Thu, 27 Apr 2006 15:46:42 +0200	[thread overview]
Message-ID: <je4q0fjflp.fsf@sykes.suse.de> (raw)
In-Reply-To: <jeu08ippb9.fsf@sykes.suse.de> (Andreas Schwab's message of "Tue, 25 Apr 2006 00:43:38 +0200")

Updated for 2.6.17-rc2.

Andreas.

Wire up *at syscalls.

Signed-off-by: Andreas Schwab <schwab@suse•de>

---
 arch/powerpc/kernel/systbl.S                |   13 +++++++++++++
 arch/powerpc/platforms/cell/spu_callbacks.c |   13 +++++++++++++
 fs/stat.c                                   |    2 +-
 include/asm-powerpc/unistd.h                |   20 +++++++++++++++++++-
 4 files changed, 46 insertions(+), 2 deletions(-)

Index: linux-2.6.17-rc3/arch/powerpc/kernel/systbl.S
===================================================================
--- linux-2.6.17-rc3.orig/arch/powerpc/kernel/systbl.S	2006-04-27 11:11:28.000000000 +0200
+++ linux-2.6.17-rc3/arch/powerpc/kernel/systbl.S	2006-04-27 11:17:36.000000000 +0200
@@ -325,6 +325,19 @@ SYSCALL(unshare)
 SYSCALL(splice)
 SYSCALL(tee)
 SYSCALL(vmsplice)
+COMPAT_SYS(openat)
+SYSCALL(mkdirat)
+SYSCALL(mknodat)
+SYSCALL(fchownat)
+COMPAT_SYS(futimesat)
+SYSX(sys_newfstatat, sys_fstatat64, sys_fstatat64)
+SYSCALL(unlinkat)
+SYSCALL(renameat)
+SYSCALL(linkat)
+SYSCALL(symlinkat)
+SYSCALL(readlinkat)
+SYSCALL(fchmodat)
+SYSCALL(faccessat)
 
 /*
  * please add new calls to arch/powerpc/platforms/cell/spu_callbacks.c
Index: linux-2.6.17-rc3/include/asm-powerpc/unistd.h
===================================================================
--- linux-2.6.17-rc3.orig/include/asm-powerpc/unistd.h	2006-04-27 11:12:05.000000000 +0200
+++ linux-2.6.17-rc3/include/asm-powerpc/unistd.h	2006-04-27 11:18:21.000000000 +0200
@@ -304,8 +304,25 @@
 #define __NR_splice		283
 #define __NR_tee		284
 #define __NR_vmsplice		285
+#define __NR_openat		286
+#define __NR_mkdirat		287
+#define __NR_mknodat		288
+#define __NR_fchownat		289
+#define __NR_futimesat		290
+#ifdef __powerpc64__
+#define __NR_newfstatat		291
+#else
+#define __NR_fstatat64		291
+#endif
+#define __NR_unlinkat		292
+#define __NR_renameat		293
+#define __NR_linkat		294
+#define __NR_symlinkat		295
+#define __NR_readlinkat		296
+#define __NR_fchmodat		297
+#define __NR_faccessat		298
 
-#define __NR_syscalls		286
+#define __NR_syscalls		299
 
 #ifdef __KERNEL__
 #define __NR__exit __NR_exit
@@ -458,6 +475,7 @@ type name(type1 arg1, type2 arg2, type3 
 #ifdef CONFIG_PPC64
 #define __ARCH_WANT_COMPAT_SYS_TIME
 #define __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND
+#define __ARCH_WANT_SYS_NEWFSTATAT
 #endif
 
 /*
Index: linux-2.6.17-rc3/arch/powerpc/platforms/cell/spu_callbacks.c
===================================================================
--- linux-2.6.17-rc3.orig/arch/powerpc/platforms/cell/spu_callbacks.c	2006-04-27 11:11:28.000000000 +0200
+++ linux-2.6.17-rc3/arch/powerpc/platforms/cell/spu_callbacks.c	2006-04-27 11:18:52.000000000 +0200
@@ -319,6 +319,19 @@ void *spu_syscall_table[] = {
 	[__NR_splice]			sys_splice,
 	[__NR_tee]			sys_tee,
 	[__NR_vmsplice]			sys_vmsplice,
+	[__NR_openat]			sys_openat,
+	[__NR_mkdirat]			sys_mkdirat,
+	[__NR_mknodat]			sys_mknodat,
+	[__NR_fchownat]			sys_fchownat,
+	[__NR_futimesat]		sys_futimesat,
+	[__NR_newfstatat]		sys_newfstatat,
+	[__NR_unlinkat]			sys_unlinkat,
+	[__NR_renameat]			sys_renameat,
+	[__NR_linkat]			sys_linkat,
+	[__NR_symlinkat]		sys_symlinkat,
+	[__NR_readlinkat]		sys_readlinkat,
+	[__NR_fchmodat]			sys_fchmodat,
+	[__NR_faccessat]		sys_faccessat,
 };
 
 long spu_sys_callback(struct spu_syscall_block *s)
Index: linux-2.6.17-rc3/fs/stat.c
===================================================================
--- linux-2.6.17-rc3.orig/fs/stat.c	2006-04-25 01:52:39.000000000 +0200
+++ linux-2.6.17-rc3/fs/stat.c	2006-04-27 11:17:13.000000000 +0200
@@ -261,7 +261,7 @@ asmlinkage long sys_newlstat(char __user
 	return error;
 }
 
-#ifndef __ARCH_WANT_STAT64
+#if !defined(__ARCH_WANT_STAT64) || defined(__ARCH_WANT_SYS_NEWFSTATAT)
 asmlinkage long sys_newfstatat(int dfd, char __user *filename,
 				struct stat __user *statbuf, int flag)
 {

-- 
Andreas Schwab, SuSE Labs, schwab@suse•de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

      parent reply	other threads:[~2006-04-27 13:46 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-04-24 22:43 [PATCH] Wire up *at syscalls Andreas Schwab
2006-04-24 23:31 ` Arnd Bergmann
2006-04-25  0:03   ` Andreas Schwab
2006-04-25  0:13 ` David Woodhouse
2006-04-28  7:31   ` Paul Mackerras
2006-04-28 10:24     ` David Woodhouse
2006-04-28 14:42       ` Andreas Schwab
2006-04-30 13:28     ` Andreas Schwab
2006-04-27 13:46 ` Andreas Schwab [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=je4q0fjflp.fsf@sykes.suse.de \
    --to=schwab@suse$(echo .)de \
    --cc=linuxppc-dev@ozlabs$(echo .)org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox