[PATCH] RTAS syscall - updated

John Rose johnrose at austin.ibm.com
Tue Nov 18 06:40:08 EST 2003


Does anyone have thoughts on whether this could go into 2.4 as well?

Thanks-
John

On Fri, 2003-11-14 at 17:26, Anton Blanchard wrote:
> > Looks good.  You have reminded me that we need to add the fadvise64_64
> > system call for 32-bit processes, but that can go in after you have
> > pushed the patch.
>
> Speaking of which, recent glibc uses the new statfs64 calls, we need the
> following patch from davem.
>
> Anton
>
> --- fs/compat.c.~1~	Wed Nov 12 16:09:49 2003
> +++ fs/compat.c	Wed Nov 12 16:10:35 2003
> @@ -169,7 +169,6 @@
>
>  static int put_compat_statfs64(struct compat_statfs64 *ubuf, struct kstatfs *kbuf)
>  {
> -
>  	if (sizeof ubuf->f_blocks == 4) {
>  		if ((kbuf->f_blocks | kbuf->f_bfree |
>  		     kbuf->f_bavail | kbuf->f_files | kbuf->f_ffree) &
> @@ -192,10 +191,13 @@
>  	return 0;
>  }
>
> -asmlinkage long compat_statfs64(const char *path, struct compat_statfs64 *buf)
> +asmlinkage long compat_statfs64(const char *path, compat_size_t sz, struct compat_statfs64 *buf)
>  {
>  	struct nameidata nd;
>  	int error;
> +
> +	if (sz != sizeof(*buf))
> +		return -EINVAL;
>
>  	error = user_path_walk(path, &nd);
>  	if (!error) {
>
>
> We also need to hook them in:
>
> --- /tmp/misc.S	2003-10-16 14:30:22.000000000 +0000
> +++ for-linus-ppc64/arch/ppc64/kernel/misc.S	2003-11-14 09:24:24.000000000 +0000
> @@ -850,8 +850,8 @@
>  	.llong .sys_ni_syscall
>  	.llong .sys32_tgkill		/* 250 */
>  	.llong .sys32_utimes
> -	.llong .sys_statfs64
> -	.llong .sys_fstatfs64
> +	.llong .compat_statfs64
> +	.llong .compat_fstatfs64
>
>  	.balign 8
>  _GLOBAL(sys_call_table)


** Sent via the linuxppc64-dev mail list. See http://lists.linuxppc.org/




More information about the Linuxppc64-dev mailing list