Re: sys_recvmmsg: wire up or not?

2010-01-19 Thread Benjamin Herrenschmidt
On Tue, 2010-01-19 at 16:21 +0900, Paul Mundt wrote:
 
  IE. I'd rather have them all duplicated into real syscalls than some of
  them only in socketcall and some on both since that will make any kind
  of userspace transition even more hellish.
  
 Presumably you're going to have to support both given that binaries with
 both ABIs are going to be left around for the forseeable future. We
 started out with socketcall on sh64 with the initial ABI and then
 transitioned over to broken out direct system calls. While having both is
 a bit inconsistent, it's not really something that can be avoided until
 all of the old binaries go away. There are certainly enough architectures
 today that provide both that you shouldn't really run in to any nasty
 surprises at least.

I agree, my point was more like I'd rather not add the syscall for
recvmmsg only right now, and others later, and instead of an
all-or-nothing approach, ie, add all the syscalls at once (while keeping
the socketcall around of course). That would make glibc work easier not
having to track syscall availability on a per-syscall basis etc...

Cheers,
Ben.

 32-bit SH only uses socketcall at the moment, but I'm also inclined to
 add in the broken out versions and start migrating glibc over.
 
 Unfortunately there are not a lot of good options for the syscall checker
 with things like this however, given that some platforms will want one or
 the other or both ;-)
 
 

--
To unsubscribe from this list: send the line unsubscribe linux-m68k in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: sys_recvmmsg: wire up or not?

2010-01-14 Thread Russell King
On Thu, Jan 14, 2010 at 05:59:39PM +1100, Benjamin Herrenschmidt wrote:
 Oh I definitely agree that a direct syscall is better, and I wonder in
 fact if I should add new syscalls in addition to socketcall for powerpc,
 for glibc to do a slow migration :-) I was just wondering about the
 inconsistency for archs like us who have socketcall today, to also have
 to define the syscall ...

On ARM, we used to use socketcall exclusively.  We've since added all
the direct socket and IPC calls to our syscall table as part of the
big EABI shakeup.  They certainly get used on EABI, whereas OABI has
a choice.

They were made available in two stages - first the numbers were reserved
and the calls were added to the call table.  A few years later, we
exposed the syscall numbers in unistd.h.

It's now been almost 4 years since this was done, and there have been
no bug reports.

-- 
Russell King
 Linux kernel2.6 ARM Linux   - http://www.arm.linux.org.uk/
 maintainer of:
--
To unsubscribe from this list: send the line unsubscribe linux-m68k in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: sys_recvmmsg: wire up or not?

2010-01-14 Thread Benjamin Herrenschmidt
On Thu, 2010-01-14 at 09:33 +, Russell King wrote:
 On ARM, we used to use socketcall exclusively.  We've since added all
 the direct socket and IPC calls to our syscall table as part of the
 big EABI shakeup.  They certainly get used on EABI, whereas OABI has
 a choice.
 
 They were made available in two stages - first the numbers were
 reserved
 and the calls were added to the call table.  A few years later, we
 exposed the syscall numbers in unistd.h.
 
 It's now been almost 4 years since this was done, and there have been
 no bug reports. 

Agreed. It's definitely a switch we should do on powerpc. I'll look into
it after LCA.

Cheers,
Ben.


--
To unsubscribe from this list: send the line unsubscribe linux-m68k in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: sys_recvmmsg: wire up or not?

2010-01-13 Thread David Miller
From: Benjamin Herrenschmidt b...@kernel.crashing.org
Date: Thu, 14 Jan 2010 15:20:33 +1100

 Anything happening here ? We're getting that warning on ppc too despite
 the fact that we use socketcall like x86... Should checksyscall be made
 smarter or the syscall just removed from x86 ? :-)

I think it's better to trap directly to the system call rather
than going through yet another demultiplexer.

I severely regretted using sys_socketcall initially on sparc32
because it added a few microseconds to socket syscall latency
(cpus back then were slow :-)
--
To unsubscribe from this list: send the line unsubscribe linux-m68k in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: sys_recvmmsg: wire up or not?

2010-01-13 Thread Benjamin Herrenschmidt
On Wed, 2010-01-13 at 20:28 -0800, David Miller wrote:
  Anything happening here ? We're getting that warning on ppc too
 despite
  the fact that we use socketcall like x86... Should checksyscall be
 made
  smarter or the syscall just removed from x86 ? :-)
 
 I think it's better to trap directly to the system call rather
 than going through yet another demultiplexer.
 
 I severely regretted using sys_socketcall initially on sparc32
 because it added a few microseconds to socket syscall latency
 (cpus back then were slow :-) 

Oh I definitely agree that a direct syscall is better, and I wonder in
fact if I should add new syscalls in addition to socketcall for powerpc,
for glibc to do a slow migration :-) I was just wondering about the
inconsistency for archs like us who have socketcall today, to also have
to define the syscall ...

IE. I'd rather have them all duplicated into real syscalls than some of
them only in socketcall and some on both since that will make any kind
of userspace transition even more hellish.

Cheers,
Ben.

--
To unsubscribe from this list: send the line unsubscribe linux-m68k in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: sys_recvmmsg: wire up or not?

2009-12-26 Thread Arnd Bergmann
On Saturday 26 December 2009, Geert Uytterhoeven wrote:
 stdin:1523:2: warning: #warning syscall recvmmsg not implemented
 
 so I started to wire up sys_recvmmsg.
 Then I noticed it's already accessible, through sys_socketcall, as m68k 
 defines
 __ARCH_WANT_SYS_SOCKETCALL. So I guess this is a false positive?

Yes.

 Surprisingly, several architectures have both defined 
 __ARCH_WANT_SYS_SOCKETCALL
 and wired up sys_recvmmsg. Is this intentional?

It's also rather inconsistent with the last socket call that was added, 
sys_accept4.
Some architectures that normally define socket calls (parisc, sh) are missing 
both
accept4 and recvmmsg, while others that don't have recvmsg now get recvmmsg.

In particular, i386 has recvmmsg now, which caused the warning that you saw.
I guess that one should be removed, and maybe we need a better logic for
determining which syscalls you actually want. Deriving it from 
asm-generic/unistd.h
instead of arch/x86/include/asm/unistd_32.h is probably better, but would still
give the wrong answer for multiplexed system calls like socketcall or ipc on 
existing architectures.

Arnd
--
To unsubscribe from this list: send the line unsubscribe linux-m68k in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html