Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756063AbaKTL2s (ORCPT ); Thu, 20 Nov 2014 06:28:48 -0500 Received: from mail-qg0-f42.google.com ([209.85.192.42]:61888 "EHLO mail-qg0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751103AbaKTL2n (ORCPT ); Thu, 20 Nov 2014 06:28:43 -0500 MIME-Version: 1.0 In-Reply-To: <20141120104223.2cea8043@canb.auug.org.au> References: <1416418072-18639-1-git-send-email-drysdale@google.com> <1416418072-18639-5-git-send-email-drysdale@google.com> <20141120104223.2cea8043@canb.auug.org.au> From: David Drysdale Date: Thu, 20 Nov 2014 11:28:22 +0000 Message-ID: Subject: Re: [PATCHv9 4/5] sparc: Hook up execveat system call. To: Stephen Rothwell , David Miller Cc: "Eric W. Biederman" , Andy Lutomirski , Alexander Viro , Meredydd Luff , "linux-kernel@vger.kernel.org" , Andrew Morton , Thomas Gleixner , Oleg Nesterov , Michael Kerrisk , Ingo Molnar , "H. Peter Anvin" , Kees Cook , Arnd Bergmann , Rich Felker , Christoph Hellwig , X86 ML , linux-arch , Linux API , sparclinux@vger.kernel.org Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Nov 19, 2014 at 11:42 PM, Stephen Rothwell wrote: > Hi David, > > On Wed, 19 Nov 2014 17:27:51 +0000 David Drysdale wrote: >> >> diff --git a/arch/sparc/kernel/systbls_64.S b/arch/sparc/kernel/systbls_64.S >> index 580cde9370c9..15069cb35dac 100644 >> --- a/arch/sparc/kernel/systbls_64.S >> +++ b/arch/sparc/kernel/systbls_64.S >> @@ -88,6 +88,7 @@ sys_call_table32: >> .word sys_syncfs, compat_sys_sendmmsg, sys_setns, compat_sys_process_vm_readv, compat_sys_process_vm_writev >> /*340*/ .word sys_kern_features, sys_kcmp, sys_finit_module, sys_sched_setattr, sys_sched_getattr >> .word sys32_renameat2, sys_seccomp, sys_getrandom, sys_memfd_create, sys_bpf >> +/*350*/ .word sys_execveat > > Shouldn't this be compat_sys_execveat? Yeah, that would make sense -- thanks for spotting. Looking at this more closely, I also wonder if we need a pair of wrappers analogous to sys(32|64)_execve -- they include a (pipeline-executed) flushw instruction after the jmpl to [compat_]sys_execve, which I guess might be needed. So I could add something like the following to arch/sparc/kernel/syscalls.S: sys64_execveat: set sys_execveat, %g1 jmpl %g1, %g0 flushw #ifdef CONFIG_COMPAT sys32_execveat: set compat_sys_execveat, %g1 jmpl %g1, %g0 flushw #endif However, I don't speak SPARC and can't run the code -- any thoughts out there from someone who does & can? Or maybe I should stop trying to be helpful with speculative patches, and just leave wiring up the sparc stuff to the experts... >> >> #endif /* CONFIG_COMPAT */ > > -- > Cheers, > Stephen Rothwell sfr@canb.auug.org.au -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/