[PATCH] Fix compile for CONFIG_SYSVIPC=n or CONFIG_SYSCTL=n

Arthur Othieno apgo at patchbomb.org
Tue Feb 21 00:53:15 EST 2006


On Mon, Feb 20, 2006 at 03:32:26PM +1100, Stephen Rothwell wrote:
> The compat syscalls are added to sys_ni.c since they are not defined
> if the above CONFIG options are off. Also, nfs would not build with
> CONFIG_SYSCTL off.
> 
> Noticed by Arthur Othieno.
> 
> Signed-off-by: Stephen Rothwell <sfr at canb.auug.org.au>

Looks good, thanks ;-)

Acked-by: Arthur Othieno <apgo at patchbomb.org>

> ---
> 
>  include/linux/nfs_fs.h |    2 +-
>  kernel/sys_ni.c        |    2 ++
>  2 files changed, 3 insertions(+), 1 deletions(-)
> 
> On Sun, 19 Feb 2006 22:52:31 +1100 Paul Mackerras <paulus at samba.org> wrote:
> >
> > Arthur Othieno writes:
> > 
> > > --- a/arch/powerpc/kernel/sys_ppc32.c
> > > +++ b/arch/powerpc/kernel/sys_ppc32.c
> > > @@ -440,7 +440,13 @@ long compat_sys_ipc(u32 call, u32 first,
> > >  
> > >  	return -ENOSYS;
> > >  }
> > > -#endif
> > > +#else
> > > +long compat_sys_ipc(u32 call, u32 first, u32 second, u32 third, compat_uptr_t ptr,
> > > +	       u32 fifth)
> > > +{
> > > +	return -ENOSYS;
> > > +}
> > > +#endif /* CONFIG_SYSVIPC */
> > 
> > Can't we just add a couple of cond_syscall lines to kernel/sys_ni.c
> > instead?
> 
> Linus, can we have this applied for 2.6.16.  It presumably affects sparc64
> (at least for CONFIG_SYSVIPC) as well as powerpc.  The NFS fix would
> affect all architectures, I think?
> 
> This has been compile tested with the CONFIG options on and off for powerpc.
> 
> -- 
> Cheers,
> Stephen Rothwell                    sfr at canb.auug.org.au
> http://www.canb.auug.org.au/~sfr/
> 
> c1a27bc400a1412c7c758775bb695e8b98d1c0c3
> diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h
> index 547d649..b4dc6e2 100644
> --- a/include/linux/nfs_fs.h
> +++ b/include/linux/nfs_fs.h
> @@ -398,7 +398,7 @@ extern struct inode_operations nfs_symli
>  extern int nfs_register_sysctl(void);
>  extern void nfs_unregister_sysctl(void);
>  #else
> -#define nfs_register_sysctl() do { } while(0)
> +#define nfs_register_sysctl() 0
>  #define nfs_unregister_sysctl() do { } while(0)
>  #endif
>  
> diff --git a/kernel/sys_ni.c b/kernel/sys_ni.c
> index 17313b9..1067090 100644
> --- a/kernel/sys_ni.c
> +++ b/kernel/sys_ni.c
> @@ -104,6 +104,8 @@ cond_syscall(sys_setreuid16);
>  cond_syscall(sys_setuid16);
>  cond_syscall(sys_vm86old);
>  cond_syscall(sys_vm86);
> +cond_syscall(compat_sys_ipc);
> +cond_syscall(compat_sys_sysctl);
>  
>  /* arch-specific weak syscall entries */
>  cond_syscall(sys_pciconfig_read);
> -- 
> 1.2.1



More information about the Linuxppc64-dev mailing list