lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 12 Dec 2008 19:02:42 +0000
From:	Russell King <rmk+lkml@....linux.org.uk>
To:	Alan Cox <alan@...rguk.ukuu.org.uk>
Cc:	Matthew Wilcox <matthew@....cx>, Gerd Hoffmann <kraxel@...hat.com>,
	linux-kernel@...r.kernel.org, linux-arch@...r.kernel.org,
	Ulrich Drepper <drepper@...hat.com>
Subject: Re: [PATCH v2] Add preadv and pwritev system calls.

On Fri, Dec 12, 2008 at 06:21:42PM +0000, Alan Cox wrote:
> On Fri, 12 Dec 2008 10:03:47 -0700
> Matthew Wilcox <matthew@....cx> wrote:
> 
> > On Fri, Dec 12, 2008 at 05:02:05PM +0100, Gerd Hoffmann wrote:
> > > I'd *really* hate it to have the same system call with different
> > > argument ordering on different systems though.  Especially when swapping
> > > two integer values, so gcc wouldn't error out on wrong usage.
> > 
> > We can always permute it further:
> > 
> > int fd, int vlen, loff_t pos, const struct *
> 
> Or you could add cobol calling syntax or pass the arguments in XML
> format ?
> 
> Any particular reason you want to make things hell for programmers and
> the standard people. Follow the BSD one at least to user space. Anything
> else will just lead to pain and suffering later on the standardisation
> front.

Yes - non-aligned 64-bit arguments in registers really really really
sucks.  On ARM, we will change the syscall argument ordering to avoid
having additional compatibility implementations for EABI vs OABI.

The same goes for similar ABIs with restrictions on 64-bit arguments.

There are causes were a syscall just can not be used on such ABIs.  Eg,

	int a1, unsigned long long a2, int a3, unsigned long long a4

is an impossible syscall argument order for ARM - we run out of registers
for the upper word of 'a4'.

-- 
Russell King
 Linux kernel    2.6 ARM Linux   - http://www.arm.linux.org.uk/
 maintainer of:
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ