linux-arch.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Jonas Bonn <jonas@southpole.se>
Cc: linux-arch@vger.kernel.org
Subject: Re: [PATCH 1/1] Add new syscall sys_sendmmsg to generic unistd
Date: Sun, 29 May 2011 23:57:26 +0200	[thread overview]
Message-ID: <201105292357.26883.arnd@arndb.de> (raw)
In-Reply-To: <1306704624.3001.1206.camel@localhost>

On Sunday 29 May 2011 23:30:24 Jonas Bonn wrote:
> > * remove all __ARCH_WANT_* from asm/unistd.h and use the generic glibc
> >   implementation.
> 
> I tried this earlier but ran into issues with uClibc, which is the only
> libc port that we currently have.  Is uClibc known to be compatible with
> the reduced set of syscalls?
> 
> A good compromise here may be to submit the patch upstream with the
> reduced set of syscalls but to maintain a separate tree locally that
> reenables these for use with our current uClibc port until we can get it
> straightened out.  It would be good to know, however, what's known to be
> working for others in this area...

I don't think that there is a port today, but you can maybe Chris Metcalf,
Guan Xuetao or Linas Vepstas know more about this, as they have all
worked on the glibc support for the generic syscall interface.

Right now, you set these five ones:

#define __ARCH_WANT_SYSCALL_NO_AT
#define __ARCH_WANT_SYSCALL_NO_FLAGS
#define __ARCH_WANT_SYSCALL_OFF_T
#define __ARCH_WANT_SYSCALL_DEPRECATED
#define __ARCH_WANT_IPC_PARSE_VERSION

I suggest that you try to get rid of them in reverse order, the last
two are the really important ones and should not cause a lot of
trouble at all. The interface impacted by this have long ago been
deprecated, so it should basically work without them, except for
possible bugs in uClibc.

__ARCH_WANT_SYSCALL_OFF_T is about the 32 bit off_t syscalls.
I don't know if they are supported in uClibc, but I would expect
that you can lose this if you hardcode uClibc to do 64 bit
off_t, but it could be a lot of work if it's not that easy.

The other three are for system calls that have been replaced by
new ones much more recently, so supporting them definitely requires
writing new libc code. You might be able to reuse the code that
Chris Metcalf wrote for glibc here.

As an intermediate solution, you can keep a private patch that
adds the hacks back in, while submitting the clean unistd.h
version without them for upstream inclusion. Just remember to
actually do the work for removing them eventually.

	Arnd

  reply	other threads:[~2011-05-29 21:57 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-28 20:19 [PATCH 1/1] Add new syscall sys_sendmmsg to generic unistd Jonas Bonn
2011-05-28 21:24 ` Arnd Bergmann
2011-05-28 21:55   ` Jonas Bonn
2011-05-29 18:27     ` Arnd Bergmann
2011-05-29 21:30       ` Jonas Bonn
2011-05-29 21:57         ` Arnd Bergmann [this message]
     [not found]         ` <tOr60tkHMHA.716@exchange1.tad.internal.tilera.com>
2011-06-01 20:15           ` Chris Metcalf

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=201105292357.26883.arnd@arndb.de \
    --to=arnd@arndb.de \
    --cc=jonas@southpole.se \
    --cc=linux-arch@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
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;
as well as URLs for NNTP newsgroup(s).