Commit Graph

3831 Commits

Author SHA1 Message Date
Elliott Hughes
d1256ccbb3 am 68126def: am 4d46c940: Merge "Rewrite the POSIX timer functions."
* commit '68126def6e37eae1ddc0b372fcecc3ac8287b97e':
  Rewrite the POSIX timer functions.
2014-03-08 07:28:11 +00:00
Elliott Hughes
4d46c94031 Merge "Rewrite the POSIX timer functions." 2014-03-08 00:50:56 +00:00
Elliott Hughes
4b558f50a4 Rewrite the POSIX timer functions.
This is a much simpler implementation that lets the kernel
do as much as possible.

Co-authored-by: Jörgen Strand <jorgen.strand@sonymobile.com>
Co-authored-by: Snild Dolkow <snild.dolkow@sonymobile.com>
Change-Id: Iad19f155de977667aea09410266d54e63e8a26bf
2014-03-07 16:49:46 -08:00
Calin Juravle
c3957eea26 am d57eb903: am b145b5ef: Merge "Fix broken pointer overflow check ns_name_unpack()"
* commit 'd57eb903c1ca2f798ab6a9ab0f9c84678b0f3025':
  Fix broken pointer overflow check ns_name_unpack()
2014-03-07 19:29:51 +00:00
Calin Juravle
a7c42b1268 am 542e6c87: am d9ba757e: Merge "Sync up nameser with upstream(2014.03.05)"
* commit '542e6c87e52f7886e5ede72e3222c2d6ed83aefb':
  Sync up nameser with upstream(2014.03.05)
2014-03-07 19:29:50 +00:00
Calin Juravle
b145b5ef7c Merge "Fix broken pointer overflow check ns_name_unpack()" 2014-03-07 11:46:48 +00:00
Calin Juravle
d9ba757ef4 Merge "Sync up nameser with upstream(2014.03.05)" 2014-03-07 11:45:58 +00:00
Elliott Hughes
e4014d8882 am 37486940: am d40eb159: Merge "Fix some pthread symbols build as C++ symbol under x64 lunch."
* commit '3748694064366694b2136ac8943332d5ceec7bf4':
  Fix some pthread symbols build as C++ symbol under x64 lunch.
2014-03-07 11:00:32 +00:00
Elliott Hughes
39febf4a95 am e992f79a: am 087dbc6b: Merge "Bring the generate-NOTICE script up to date."
* commit 'e992f79a5627e9d839a001f8563b637d2e97bb93':
  Bring the generate-NOTICE script up to date.
2014-03-07 03:09:45 +00:00
Elliott Hughes
18a32d4ac0 am 372196e9: am dec5bacf: Merge "Update the NOTICE files."
* commit '372196e955047551d6241de7b83ae43bdb5a8b5c':
  Update the NOTICE files.
2014-03-07 03:09:44 +00:00
Elliott Hughes
7157b81966 am 91a5272e: am e7ea9363: Merge "Add ARMv8 optimized string handling functions based on cortex-strings"
* commit '91a5272e6f7712e5313b85c6a615f6891e7ea0a7':
  Add ARMv8 optimized string handling functions based on cortex-strings
2014-03-07 03:09:44 +00:00
Elliott Hughes
d40eb1594d Merge "Fix some pthread symbols build as C++ symbol under x64 lunch." 2014-03-07 01:03:25 +00:00
Elliott Hughes
22a0d6fcdc Bring the generate-NOTICE script up to date.
Change-Id: I63981a2f3cb0a4d7ee7e1a2b4ce00f77898ac25b
2014-03-06 15:10:22 -08:00
Elliott Hughes
4e54b114f9 Update the NOTICE files.
Change-Id: Ie72a01cddd5b813393656f603689e497b0f88ddd
2014-03-06 15:06:11 -08:00
Elliott Hughes
e7ea9363cb Merge "Add ARMv8 optimized string handling functions based on cortex-strings" 2014-03-06 23:02:11 +00:00
Bernhard Rosenkraenzer
7e4fa56099 Add ARMv8 optimized string handling functions based on cortex-strings
This adds ARMv8 optimized string handling functions to Bionic.
The implementations live in a generic/ directory because there will
likely be more CPU specific versions (e.g. Cortex-A53 vs. Cortex-A57)
later.

These implementations are 50%+ faster on current v8 models.

Change-Id: If3adc54a284d9519459b0d4d4390f0cd6ded8786
Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
2014-03-06 14:59:51 -08:00
Calin Juravle
85c5202a64 Fix broken pointer overflow check ns_name_unpack()
Many compilers may optimize away the overflow check `msg + l < msg',
where `msg' is a pointer and `l' is an integer, because pointer
overflow is undefined behavior in C.

Use a safe precondition test `l >= eom - msg' instead.
Bug: 13219633

Change-Id: I3fca2125834073cc36d7e9c4e586e97842265a59
2014-03-06 18:39:29 +00:00
Calin Juravle
fcb502e3ec Sync up nameser with upstream(2014.03.05)
Bug: 13219633

Change-Id: I8ee4ddf270710e9eea415fa3db984af7719a8dd4
2014-03-06 18:36:43 +00:00
Mark Salyzyn
bbcd3c686e am a6bd876e: am 68a651e7: Merge "libc: libc_logging 64bit compile issue"
* commit 'a6bd876e3dffedb2227dde034328987ebb79223b':
  libc: libc_logging 64bit compile issue
2014-03-06 02:50:44 +00:00
Mark Salyzyn
9fc76027f3 libc: libc_logging 64bit compile issue
- user space logger wire format for time

Change-Id: I4840653e3a6ae151a02584311d1227d2fe536d0f
2014-03-05 16:59:39 -08:00
Narayan Kamath
ffce5ede0b am 4e53c59d: am 48d145c1: Merge "Stop defining HAVE_PTHREAD_COND_TIMEDWAIT_MONOTONIC."
* commit '4e53c59db205bcb991000bf540241eb5d3b99bef':
  Stop defining HAVE_PTHREAD_COND_TIMEDWAIT_MONOTONIC.
2014-03-05 13:31:12 +00:00
Narayan Kamath
252ee1e112 Stop defining HAVE_PTHREAD_COND_TIMEDWAIT_MONOTONIC.
No code is using this definition.

Change-Id: I188db63f38d62baf1cb57d0a36fcda540ad98492
2014-03-05 13:19:10 +00:00
Halton Huo
f0870c3bfe Fix some pthread symbols build as C++ symbol under x64 lunch.
Functions protected with !defined(__LP64__) will be get build as C++
symbols for X64 build. This is not the desired work. So protect the
implementation with !defined(__LP64__) as well.

Change-Id: I4ef50ec36e46289ab308063e24f6c5ac61a6ca8d
2014-03-05 16:34:20 +08:00
Elliott Hughes
636bcf0f69 am 614f7626: am bef50164: Merge "Remove dead NULL checks from pthread code."
* commit '614f7626fc5dcf5c0cff2c49799f2659524d3ad3':
  Remove dead NULL checks from pthread code.
2014-03-04 19:16:08 +00:00
Elliott Hughes
39b644a0e2 Remove dead NULL checks from pthread code.
GCC is removing these checks anyway because it knows the arguments
must be non-null, so leaving this code around is just confusing.

We know from experience that people were shipping code with locking
bugs because they weren't checking for error returns. Failing hard
like glibc does seems the better choice. (And it's what the checked
in code was already doing; this patch doesn't change that. It just
makes it more obvious that that's what's going on.)

Change-Id: I167c6d7c0a296822baf0cb9b43b97821eba7ab35
2014-03-04 10:55:39 -08:00
Elliott Hughes
43b9169ffb am 17ef5653: am a0bf9bde: Merge "Implement POSIX pthread_mutex_timedlock."
* commit '17ef5653dd8aa92176e90964c95a02ccf4809695':
  Implement POSIX pthread_mutex_timedlock.
2014-03-04 18:50:35 +00:00
Elliott Hughes
0e714a5b41 Implement POSIX pthread_mutex_timedlock.
This replaces the non-standard pthread_mutex_lock_timeout_np, which we have
to keep around on LP32 for binary compatibility.

Change-Id: I098dc7cd38369f0c1bec1fac35687fbd27392e00
2014-03-04 10:27:58 -08:00
Calin Juravle
631d309268 am 0c8d3b35: am 8e541b12: Merge "Moved nameser.h and namser_compat.h to public include dir"
* commit '0c8d3b35c6eb07384b0176ab3d1d462bad996e06':
  Moved nameser.h and namser_compat.h to public include dir
2014-03-04 18:04:44 +00:00
Calin Juravle
3f6229cf32 am cc0948d8: am 4a46a689: Merge "Moved private dns header to their own dir."
* commit 'cc0948d86a50a1b2441552cd0f357ca040855928':
  Moved private dns header to their own dir.
2014-03-04 17:55:59 +00:00
Calin Juravle
ff4dfd26a8 am 8121d264: am 9f2d1bcd: Merge "Renamed the misleading libc/netbsd directory to libc/dns."
* commit '8121d264bc58c6d97edae23981d2646b05fcdf83':
  Renamed the misleading libc/netbsd directory to libc/dns.
2014-03-04 17:55:58 +00:00
Narayan Kamath
b863c9574e am 3f985d31: am caaae7f2: Merge "Implement pthread_condattr_{get,set}clock."
* commit '3f985d31b6fc3fd61f76b71aa05c3c69d853452a':
  Implement pthread_condattr_{get,set}clock.
2014-03-04 16:05:46 +00:00
Calin Juravle
569fb9887d Moved nameser.h and namser_compat.h to public include dir
This is part of the upstream sync (Net/Open/Free BSDs expose the
nameser.h in their public headers).

Change-Id: Ib063d4e50586748cc70201a8296cd90d2e48bbcf
2014-03-04 15:07:07 +00:00
Calin Juravle
4a46a68942 Merge "Moved private dns header to their own dir." 2014-03-04 14:25:51 +00:00
Calin Juravle
9f2d1bcd17 Merge "Renamed the misleading libc/netbsd directory to libc/dns." 2014-03-04 14:25:30 +00:00
Narayan Kamath
51e6cb33e3 Implement pthread_condattr_{get,set}clock.
We only support CLOCK_REALTIME and CLOCK_MONOTONIC for now,
so we us a single bit from pthread_cond_t->value to denote
the clock type. Note that this reduces the width of the counter
to 30 bits, but this should be large enough for all practical
purposes.

bug: 13232338

Change-Id: I857e7da64b3ecbb23eeac7c9f3fbd460f60231bd
2014-03-04 11:17:13 +00:00
Elliott Hughes
010d090241 am fea778b3: am 2c7c79e6: Merge "Switch to upstream alarm(3)."
* commit 'fea778b308be2dd0d75bd757129c3ef62ace3a61':
  Switch to upstream alarm(3).
2014-03-04 01:11:01 +00:00
Elliott Hughes
2c7c79e6e5 Merge "Switch to upstream alarm(3)." 2014-03-04 00:58:53 +00:00
Elliott Hughes
aedb00d04e Switch to upstream alarm(3).
The only way the setitimer call can fail is if the unsigned number of seconds is
too large to fit in the kernel's signed number of seconds. If you schedule a
68-year alarm, glibc will fail by returning 0 and BSD will fail by returning -1.

Change-Id: Ic3721b01428f5402d99f31fd7f2ba2cc58805607
2014-03-04 00:58:31 +00:00
Mark Salyzyn
4fc7758e6f am 337815ff: am f33df6a6: Merge "libc: Make calls to new user-space logger (revisit)"
* commit '337815ffa2d4c899bf3c2b9798cb90665b497cea':
  libc: Make calls to new user-space logger (revisit)
2014-03-03 21:18:08 +00:00
Mark Salyzyn
f33df6a662 Merge "libc: Make calls to new user-space logger (revisit)" 2014-03-03 21:05:19 +00:00
Elliott Hughes
1eb606df0a am 46215a8b: am dfeb42ed: Merge "If the kernel doesn\'t have MADV_MERGEABLE, stop asking for it."
* commit '46215a8b53e149de3fc28600c2b2eebe66d36716':
  If the kernel doesn't have MADV_MERGEABLE, stop asking for it.
2014-03-03 20:55:35 +00:00
Elliott Hughes
29264f4eda am f6ce4490: am 15e71cd7: Merge "Remove deprecated and unused constants from <sys/klog.h>."
* commit 'f6ce44900e5b94c18a026ac4ce4d5fd2c51663d4':
  Remove deprecated and unused constants from <sys/klog.h>.
2014-03-03 20:55:35 +00:00
Calin Juravle
cecc036970 Moved private dns header to their own dir.
Bug: 13219633
Change-Id: I3435ef7564b9ad3c7b54188a0809440993b36c9e
2014-03-03 20:40:41 +00:00
Mark Salyzyn
f38292862b libc: Make calls to new user-space logger (revisit)
* TARGET_USES_LOGD is true or false, yes is not valid
* was supposed to be in the libc_bionic definition

Change-Id: I7f15d0fe61205641f7310ba9762df885e6c959d0
2014-03-03 12:30:24 -08:00
Elliott Hughes
9bd9b7dd20 If the kernel doesn't have MADV_MERGEABLE, stop asking for it.
Note that a dynamically-linked binary will still probably see two attempts ---
one by the dynamic linker (which will set its copy of the flag so it won't try
again) and then one by the executable itself (which gets a new uninitialized
copy of the flag).

Change-Id: Id6b7e47780f0f24d2ca0384a75373f4824fa8f12
2014-03-03 11:54:21 -08:00
Elliott Hughes
e4ab19c67d Remove deprecated and unused constants from <sys/klog.h>.
Change-Id: I23d54b5eaf918859480f927534a3f9e3af602311
2014-03-03 10:57:28 -08:00
Elliott Hughes
019cff957e am 3c42b739: am ddad384d: Merge "Fix build."
* commit '3c42b73985817da87c32c2d97a58e5e4f21d48a6':
  Fix build.
2014-03-01 02:12:59 +00:00
Elliott Hughes
a8b1eb3fcf Fix build.
Change-Id: I71cde79263d5f5a8382865b8151f65c5c05ea17b
2014-02-28 17:59:29 -08:00
Elliott Hughes
79370b2aee am 5b9d3ddf: am 2ec592c3: Merge "Add recvmmsg and sendmmsg syscalls."
* commit '5b9d3ddf372ca47e3065845487a770794021c760':
  Add recvmmsg and sendmmsg syscalls.
2014-03-01 01:24:39 +00:00
Elliott Hughes
e63d519946 am 796b7c7c: am ddc8cc7a: Merge "Add getprogname/setprogname for BSD compatibility."
* commit '796b7c7cf9404b59b2120177d2f2b40ecc58c3c8':
  Add getprogname/setprogname for BSD compatibility.
2014-03-01 01:24:38 +00:00