3463 Commits

Author SHA1 Message Date
Serban Constantinescu
feaa89a1bc AArch64: Add support for AArch64 to the syscall interface
This patch adds support for AArch64 to the syscall interface. The kernel
implementation exports a set of canonical syscalls, therefore some of
the userspace exported syscalls are implemented as stubs based on the
canonical set.

Change-Id: Ia965d71e97769b8be9d7655193fc40303964c4df
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2013-10-28 16:16:34 -07:00
Elliott Hughes
60fd3450bf Fix the *rand48 functions on LP64.
I reported the mrand48 bug upstream, and 'matt' fixed the whole family
of functions!

Change-Id: I07fbc034e86499ce89599c3026a741738fd0cfc0
2013-10-28 15:24:26 -07:00
Elliott Hughes
85d8536f34 am 6ec070a0: am 020bcdae: Merge "Update <sys/exec_elf.h> to get the DF_* flags."
* commit '6ec070a01509c3477be6d36cd46b81c9b3876733':
  Update <sys/exec_elf.h> to get the DF_* flags.
2013-10-28 15:06:58 -07:00
Elliott Hughes
74ce45972d Update <sys/exec_elf.h> to get the DF_* flags.
Change-Id: Ia9e785f6b95122f94ee3b01a312db1d5bb91a72e
2013-10-28 14:59:41 -07:00
Elliott Hughes
92c6e988cd am 224aee2f: am 486d99f0: Merge "Don\'t allow text relocations on 64-bit."
* commit '224aee2f5cebcccf832c8a204163192bc752c5a1':
  Don't allow text relocations on 64-bit.
2013-10-28 14:41:45 -07:00
Elliott Hughes
e4d792adb8 Don't allow text relocations on 64-bit.
I've also updated our <sys/exec_elf.h> to match upstream.

Change-Id: I52f9fce3167541811208d273ff23ceaa112f7135
2013-10-28 14:34:56 -07:00
Elliott Hughes
d1c7766aea am e9f6c480: am 3ec5d895: Merge "Fix utime/utimes when passed a NULL pointer."
* commit 'e9f6c4800816df3acec0d5683667b5aac290f049':
  Fix utime/utimes when passed a NULL pointer.
2013-10-28 13:34:32 -07:00
Elliott Hughes
27586ebe1a Fix utime/utimes when passed a NULL pointer.
Bug: 11383777
Change-Id: If944a42f3adfa8a6ce91c167c249e009ed63300a
2013-10-28 13:21:06 -07:00
Elliott Hughes
7ef84c7d3d am d9916301: am f7f6b268: Merge "Upgrade to tzdata2013h."
* commit 'd9916301a926c925439efa3cd1bba53e49f10dfc':
  Upgrade to tzdata2013h.
2013-10-28 10:03:20 -07:00
Elliott Hughes
3df3879bd6 Upgrade to tzdata2013h.
From the release notes:

  Changes affecting current and future time stamps:

    Libya has switched its time zone back to UTC+2 without DST,
    instead of UTC+1 with DST.  (Thanks to Even Scharning.)

    Western Sahara (Africa/El_Aaiun) uses Morocco's DST rules.
    (Thanks to Gwillim Law.)

  Changes affecting future time stamps:

    Acre and (we guess) western Amazonas will switch from UTC-4 to UTC-5
    on 2013-11-10.  This affects America/Rio_Branco and America/Eirunepe.
    (Thanks to Steffen Thorsen.)

    Add entries for DST transitions in Morocco in the year 2038.
    This avoids some year-2038 glitches introduced in 2013g.
    (Thanks to Yoshito Umaoka for reporting the problem.)

Change-Id: Ic855df19773e3fbf13b941b5bfa91dcee9e181e1
2013-10-28 09:38:00 -07:00
Elliott Hughes
5332746383 am 155f5c5f: am ad8fb26a: Merge "Fix the exit syscall stub\'s name."
* commit '155f5c5ff9a86ed5319570ae13cc9a061930b0cb':
  Fix the exit syscall stub's name.
2013-10-25 09:29:38 -07:00
Elliott Hughes
6b53c2349a Fix the exit syscall stub's name.
I've left the exit_group syscall as _exit because otherwise we'd have to
convince the compiler that our _exit (which just calls __exit_group) is
actually "noreturn", and it seems like that would be less clean than just
cutting out the middleman.

We'll just have to trust ourselves not to add anything to SYSCALLS.TXT
that ought to be private but that only has a single leading underscore.
Hopefully we can manage that.

Change-Id: Iac47faea9f516186e1774381846c54cafabc4354
2013-10-24 22:41:50 -07:00
Elliott Hughes
de2df5421d am fa262c13: am bbefbf1a: Merge "Use hidden visibility for generated stubs whose names begin with underscores."
* commit 'fa262c13d9115cd84545ad4a0898d18770702e15':
  Use hidden visibility for generated stubs whose names begin with underscores.
2013-10-24 17:26:22 -07:00
Elliott Hughes
0a9d0db6b3 am c2404f6c: am d60a625d: Merge "Start moving 32-bit cruft somewhere it won\'t pollute 64-bit."
* commit 'c2404f6c1d29a47c0bc6cdf510c91e43f8a1e424':
  Start moving 32-bit cruft somewhere it won't pollute 64-bit.
2013-10-24 17:22:35 -07:00
Elliott Hughes
bbefbf1a75 Merge "Use hidden visibility for generated stubs whose names begin with underscores." 2013-10-25 00:20:24 +00:00
Elliott Hughes
567a8de3ca Start moving 32-bit cruft somewhere it won't pollute 64-bit.
Change-Id: I03a6a50a5243f29e50fb58a3cf8b5e7198640baa
2013-10-24 17:14:55 -07:00
Elliott Hughes
fff6e272e9 Use hidden visibility for generated stubs whose names begin with underscores.
Change-Id: Idb39fd04b7a14114801624e744e76e0e7913d951
2013-10-24 17:03:20 -07:00
Elliott Hughes
c55f980d23 am 4b832714: am 97288549: Merge "Let the compiler worry about implementing ffs(3)."
* commit '4b83271437727fcc2b2400b5c81dc4d3cbb7391e':
  Let the compiler worry about implementing ffs(3).
2013-10-24 16:41:34 -07:00
Elliott Hughes
bf425680e4 Let the compiler worry about implementing ffs(3).
It does at least as good a job as our old hand-written assembly anyway.

Change-Id: If7c4a1ac508bace0b71ee7b67808caa6eabf11d2
2013-10-24 16:29:40 -07:00
Elliott Hughes
557a5e08c6 am e4ab1b67: am f8dfb6f2: Merge "Remove dependencies on obsolete __ARCH_WANT_SYSCALL_DEPRECATED system calls."
* commit 'e4ab1b6795e325fe346c792e6254592a8db16d4e':
  Remove dependencies on obsolete __ARCH_WANT_SYSCALL_DEPRECATED system calls.
2013-10-24 15:56:17 -07:00
Elliott Hughes
f8dfb6f249 Merge "Remove dependencies on obsolete __ARCH_WANT_SYSCALL_DEPRECATED system calls." 2013-10-24 22:49:49 +00:00
Elliott Hughes
11952073af Remove dependencies on obsolete __ARCH_WANT_SYSCALL_DEPRECATED system calls.
(aarch64 kernels don't have these system calls.)

Change-Id: I6f64075aa412f71520f2df71c3d69b647f91c1ca
2013-10-24 15:48:32 -07:00
Ben Cheng
112b7088e7 am 8b113f75: am fcb37b87: Merge "Add __EXPORTED_HEADERS__ as predefined macro."
* commit '8b113f75b3e3835da00d0af61f033410fc29a8ca':
  Add __EXPORTED_HEADERS__ as predefined macro.
2013-10-23 15:54:04 -07:00
Ben Cheng
fcb37b876e Merge "Add __EXPORTED_HEADERS__ as predefined macro." 2013-10-23 22:47:21 +00:00
Ben Cheng
460fa7033b Add __EXPORTED_HEADERS__ as predefined macro.
To weed out stuff like this in uapi/linux/types.h

ifndef __EXPORTED_HEADERS__
warning "Attempt to use kernel headers from user space, see
http://kernelnewbies.org/KernelHeaders"
endif /* __EXPORTED_HEADERS__ */

Change-Id: I6506cea6248f7a3b44a839b98e91bdd0d3a6c4cd
2013-10-23 14:44:38 -07:00
Elliott Hughes
977f91f5bf am ae61f49b: am cdac5f73: Merge "MIPS\' pipe(2) is weird, but MIPS\' pipe2(2) is the same as everyone else\'s."
* commit 'ae61f49b130e65997750f4ffb84f22512e055c5f':
  MIPS' pipe(2) is weird, but MIPS' pipe2(2) is the same as everyone else's.
2013-10-23 11:33:24 -07:00
Elliott Hughes
c410e75c68 am 0e1faa2e: am 1370854c: Merge "Fix header file dependencies."
* commit '0e1faa2e00a4f1d4508b26a6411ac1daa1ce8b6d':
  Fix header file dependencies.
2013-10-23 11:33:23 -07:00
Elliott Hughes
cdac5f73ac Merge "MIPS' pipe(2) is weird, but MIPS' pipe2(2) is the same as everyone else's." 2013-10-23 18:27:35 +00:00
Elliott Hughes
93de3d881d Fix header file dependencies.
MIPS' asm/fcntl.h assumes a bunch of __kernel_* types are already declared.

Change-Id: Iff701bbb5ede9667a78230c2de3a8f4fe41371c5
2013-10-23 11:25:54 -07:00
Elliott Hughes
b8cf18b4dd MIPS' pipe(2) is weird, but MIPS' pipe2(2) is the same as everyone else's.
arch/mips/kernel/syscall.c has a special sysm_pipe wrapper, but there's
no special treatment of pipe2 because it carries no historical baggage.

Change-Id: I892c0f690b21992c8a48276a9b732126f18fc0ee
2013-10-23 11:21:36 -07:00
Elliott Hughes
623fcf1e98 am db7f8eb0: am 97dc3309: Merge "Remove dependencies on obsolete __ARCH_WANT_SYSCALL_NO_FLAGS syscalls."
* commit 'db7f8eb011db18c69ec872823906e5f9660deaf7':
  Remove dependencies on obsolete __ARCH_WANT_SYSCALL_NO_FLAGS syscalls.
2013-10-23 10:34:03 -07:00
Elliott Hughes
cac7b9d6ec Remove dependencies on obsolete __ARCH_WANT_SYSCALL_NO_FLAGS syscalls.
(aarch64 kernels only have the newer system calls.)

Also expose the new functionality that's exposed by glibc in our header files.

Change-Id: I45d2d168a03f88723d1f7fbf634701006a4843c5
2013-10-23 09:48:29 -07:00
Elliott Hughes
e514d2fe66 resolved conflicts for merge of 1dbf56aa to klp-dev-plus-aosp
Change-Id: Ia1d1467065320941d6dc3a50f7ea85eb4dbf3841
2013-10-22 16:41:42 -07:00
Elliott Hughes
f8fcfbc85a Move away from the __ARCH_WANT_SYSCALL_NO_AT system calls.
Modern architectures only get the *at(2) system calls. For example,
aarch64 doesn't have open(2), and expects userspace to use openat(2)
instead.

Change-Id: I87b4ed79790cb8a80844f5544ac1a13fda26c7b5
2013-10-22 16:31:01 -07:00
Elliott Hughes
0775b1dae8 am 3f0505cc: am f0ed9bf2: Merge "AArch64: Fix definitions for STDINT_LIMITS"
* commit '3f0505cc87ff452f79842ab14aef44d0e4e1a2f2':
  AArch64: Fix definitions for STDINT_LIMITS
2013-10-22 12:46:55 -07:00
Serban Constantinescu
debc021491 AArch64: Fix definitions for STDINT_LIMITS
This patches fixes the definitions for STDINT_LIMITS on __LP64__
systems.

Change-Id: I5eb1664e9ef7c303432a2b041c99cec663816b75
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2013-10-22 12:40:16 -07:00
Elliott Hughes
081b40f378 am 550ccc2e: am 8c39e58b: Merge "Make sure we have a mkfifo symbol."
* commit '550ccc2e20cb1998a959a7abb24f5ec382a93192':
  Make sure we have a mkfifo symbol.
2013-10-22 12:08:51 -07:00
Elliott Hughes
65104ba533 am 9805f3ec: am 23148470: Merge "AArch64: Fix uses of stack size for 32/64bit libc builds"
* commit '9805f3ec5b4ebfbe892e79a086c7d23a0bd393cf':
  AArch64: Fix uses of stack size for 32/64bit libc builds
2013-10-22 12:08:50 -07:00
Elliott Hughes
8c39e58b6a Merge "Make sure we have a mkfifo symbol." 2013-10-22 19:03:57 +00:00
Elliott Hughes
594b1a4af2 Make sure we have a mkfifo symbol.
Bug: https://code.google.com/p/android/issues/detail?id=58888
Change-Id: Ic0a883a5f30beb82cb7be3c4e81b6d693d5fbb4d
2013-10-22 12:03:19 -07:00
Serban Constantinescu
7f70c9b64e AArch64: Fix uses of stack size for 32/64bit libc builds
This patch fixes stack size uses to size_t.

Change-Id: I0671c85ddb1c1aceaf9440a7c73c21fe528653fa
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2013-10-22 12:01:29 -07:00
Elliott Hughes
41c2874138 am dcc3a211: am 9d4b67ea: Merge "Fix 16-byte stack alignment requirement for x86_64 ABI"
* commit 'dcc3a211bade2f2413a689c8d273084cac516a72':
  Fix 16-byte stack alignment requirement for x86_64 ABI
2013-10-21 17:45:20 -07:00
Pavel Chupin
33a209e575 Fix 16-byte stack alignment requirement for x86_64 ABI
Change-Id: I43304803ac54c8688c61688bd96c7160614172d4
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
2013-10-21 17:36:28 -07:00
Elliott Hughes
16ac7c4d97 am 1d8c8b6a: am f4ac8ba5: Merge "Fix the x86_64 vfork implementation."
* commit '1d8c8b6a9ef0100f2f17ef1b6f4d145163b22ed0':
  Fix the x86_64 vfork implementation.
2013-10-21 14:27:21 -07:00
Elliott Hughes
f1a93bf7da am 8173b001: am ac5d29fe: Merge "Fix the x86_64 clone implementation."
* commit '8173b00125bc0bdeda09d9b9d4f34a2f82b66016':
  Fix the x86_64 clone implementation.
2013-10-21 14:27:20 -07:00
Elliott Hughes
f4ac8ba566 Merge "Fix the x86_64 vfork implementation." 2013-10-21 21:20:51 +00:00
Elliott Hughes
53bfdae4ff Fix the x86_64 clone implementation.
Change-Id: Ia75f46dcb4d3222049e9a6a6fabc2b17223b47f7
2013-10-18 19:39:09 -07:00
Elliott Hughes
9ea4d5f3a8 Fix the x86_64 vfork implementation.
Change-Id: I599507f5058e6196dc2d5b5653d06d5135dd8ac1
2013-10-18 18:21:11 -07:00
Elliott Hughes
68248e2fec am 013afce9: am a5bab412: Merge "Fix struct statfs for LP64."
* commit '013afce94f1195218531f3da6f3e25f4526dddf4':
  Fix struct statfs for LP64.
2013-10-18 17:39:18 -07:00
Elliott Hughes
c7fdee72dd Fix struct statfs for LP64.
Change-Id: I9649d881588931a1d672b65ddcf94009daadb0ef
2013-10-18 17:00:11 -07:00