Commit Graph

6540 Commits

Author SHA1 Message Date
Thinker K.F Li
5cf640c926 Fill l_ld of linkmaps with value from soinfo::dynamic.
GDB will try to read l_ld of linkmaps and compare the value to vma of
.dynamic sections from shared objects.  Since linker does not assign l_ld,
GDB will complain about and re-compute l_addr from l_ld.  And, GDB will get a
wrong value.
2009-09-15 17:05:55 -07:00
Android Code Review
c7f65a01e5 Merge change 10541
* changes:
  added and modified libdl to support SuperH architecture
2009-09-15 16:53:18 -07:00
Android Code Review
77e9c05988 Merge change 10542
* changes:
  added and modified libm to support SuperH architecture
2009-09-15 16:53:01 -07:00
Android Code Review
252c576d7e Merge change 11671
* changes:
  Define 64 bit types if compiling with -std=c99
2009-09-15 16:43:44 -07:00
Ben Cheng
b8a18d059b am bd192b47: Add stack unwinding directives to assembly leaf functions.
Merge commit 'bd192b470b69e00e9313680b70c5572a609e535d' into eclair-plus-aosp

* commit 'bd192b470b69e00e9313680b70c5572a609e535d':
  Add stack unwinding directives to assembly leaf functions.
2009-09-15 14:51:10 -07:00
Ben Cheng
bd192b470b Add stack unwinding directives to assembly leaf functions.
So that the real culprit of native crashes can surface in the stack trace.
2009-09-15 13:41:14 -07:00
Jean-Baptiste Queru
cdeb4c8afa merge from open-source master 2009-09-15 07:51:39 -07:00
Matthieu CASTET
a4e67f4512 Remove code duplication for pthread_cond_timeout_np : use __pthread_cond_timedwait_relative helper 2009-09-14 09:19:42 -07:00
Martin Storsjo
c88110e284 Define 64 bit types if compiling with -std=c99
Compiling with -std=c99 defines __STRICT_ANSI__, but the 64 bit types
and type macros should still be defined in this case.

This helps compiling third party code that needs -std=c99 with the NDK.
2009-09-14 16:45:50 +02:00
Iliyan Malchev
664dac1e95 am 82420129: bionic: update processed msm_camera.h
Merge commit '824201294b5f3c3ad6ca9d9751d96f78142c5409' into eclair-plus-aosp

* commit '824201294b5f3c3ad6ca9d9751d96f78142c5409':
  bionic: update processed msm_camera.h
2009-09-11 00:39:49 -07:00
Iliyan Malchev
824201294b bionic: update processed msm_camera.h
Signed-off-by: Iliyan Malchev <malchev@google.com>
2009-09-11 00:29:59 -07:00
David 'Digit' Turner
0dfd94cff4 am 4e57cf3f: Merge change 24463 into eclair
Merge commit '4e57cf3f8c0b696f117579c8165b13c8d32b9b5d' into eclair-plus-aosp

* commit '4e57cf3f8c0b696f117579c8165b13c8d32b9b5d':
  Fix an infinite loop in time2sub.
2009-09-09 18:01:11 -07:00
Android (Google) Code Review
4e57cf3f8c Merge change 24463 into eclair
* changes:
  Fix an infinite loop in time2sub.
2009-09-09 20:53:15 -04:00
David 'Digit' Turner
2093d350be Fix an infinite loop in time2sub.
The problem is that time_t is signed, and the original code relied on the
fact that (X + c < X) in case of overflow for c >= 0. Unfortunately, this
condition is only guaranteed by the standard for unsigned arithmetic, and
the gcc 4.4.0 optimizer did completely remove the corresponding test from
the code. This resulted in a missing boundary check, and an infinite loop.

The problem is solved by testing explicitely for TIME_T_MIN and TIME_T_MAX
in the loop that uses this.

Also fix increment_overflow and long_increment_overflow which were buggy
for exactly the same reasons.

Note: a similar fix is needed for system/core/libcutils
2009-09-09 17:45:00 -07:00
Erik Gilling
842cdcd2f6 am 9e74f697: libc: add void to clock() function prototype
Merge commit '9e74f697e0178a0e9b6133a2b270cc7fed9920bf' into eclair-plus-aosp

* commit '9e74f697e0178a0e9b6133a2b270cc7fed9920bf':
  libc: add void to clock() function prototype
2009-09-09 15:13:56 -07:00
Erik Gilling
9e74f697e0 libc: add void to clock() function prototype
Signed-off-by: Erik Gilling <konkers@android.com>
2009-09-09 14:58:19 -07:00
vinay harugop
76ec6891e2 ARM architecture reference manuals for ARMv6 & ARMv7 state that the use of 'swp' instruction is deprecated
ARMv6 onwards. These architectures provide the load-linked, store-conditional pair of ldrex/strex whose use
is recommended in place of 'swp'. Also, the description of the 'swp' instruction in the ARMv6 reference
manual states that the swap operation does not include any memory barrier guarantees.This fix attempts to
address these issues by providing an atomic swap implementation using ldrex/strex under _ARM_HAVE_LDREX_STREX
macro.  This Fix is verified on ST Ericsson's U8500 platform and Submitted on behalf of a third-party:
Surinder-pal SINGH from STMicroelectronics.
2009-09-09 21:01:46 +05:30
David 'Digit' Turner
c0ed422958 am b4423ff7: Merge change 22848 into eclair
Merge commit 'b4423ff7dfd8c97688cbf87ba8ce22f5b54fa89c' into eclair-plus-aosp

* commit 'b4423ff7dfd8c97688cbf87ba8ce22f5b54fa89c':
  Neon-optimized versions of memcpy.
2009-09-02 15:09:19 -07:00
Android (Google) Code Review
b4423ff7df Merge change 22848 into eclair
* changes:
  Neon-optimized versions of memcpy.
2009-09-02 15:06:32 -07:00
David 'Digit' Turner
1bbc56cd22 Neon-optimized versions of memcpy.
This optimization come from the external 0xdroid repository.
Original patch can be found here:

ebafe41c2c
2009-09-02 23:21:52 +02:00
Jean-Baptiste Queru
00fb8b45d9 merge from open-source master 2009-09-01 08:27:42 -07:00
Shin-ichiro KAWASAKI
ce0595d01d modified SYSCALLS.TXT to support SuperH architecture 2009-09-01 19:03:06 +09:00
Chih-Wei Huang
a90528ad34 Include <endian.h> instead of <sys/endian.h>,
since the later doesn't define byte order.
2009-08-31 15:42:09 +08:00
Shin-ichiro KAWASAKI
efecfde19a added and modified libdl to support SuperH architecture 2009-08-31 16:39:32 +09:00
Shin-ichiro KAWASAKI
d87945b4e7 added and modified libm to support SuperH architecture 2009-08-31 16:25:42 +09:00
Dima Zavin
2e5bd8f8aa libc: kernel-headers: Add qdsp6 vdec header
Change-Id: Ib6cd13e86cea84c1cc0901dee3e9ef05eb8279cd
Signed-off-by: Dima Zavin <dima@android.com>
2009-08-30 19:17:26 -07:00
Alexey Tarasov
cc05d12716 Changed logging functions in bionic/logd_write.c.
Main differences from original code:
1. now log channel for LOG_ID_MAIN may exist even if LOG_ID_RADIO
   facility failed.
2. __write_to_log_null() now acts as always successful function.
3. it's more simplier to add new logging channels now

ammended commit fixes my typo on line 130
2009-08-25 10:27:26 -07:00
Android Code Review
8f53951b05 Merge change 10749
* changes:
  Make sure size_t is defined before used in strings.h
2009-08-21 11:25:21 -07:00
Android Code Review
f76b577fed Merge change 10757
* changes:
  Add an 's and a . to the bionic/libc README.
2009-08-21 11:24:58 -07:00
Iliyan Malchev
898cc98f3d bionic: add sanitized lightsensor kernel header
Signed-off-by: Iliyan Malchev <malchev@google.com>
2009-08-20 16:31:28 -07:00
Dima Zavin
fcb10796ec Update pmem/hw3d/mdp headers
Signed-off-by: Dima Zavin <dima@android.com>
2009-08-19 18:48:57 -07:00
Erik Gilling
30eb40241c bionic: linker: add error message if link failed due to previous error
Signed-off-by: Erik Gilling <konkers@android.com>
2009-08-13 16:18:07 -07:00
Android (Google) Code Review
ac68b70ed9 Merge change 9642
* changes:
  Don't request IPv6 addresses if AI_ADDRCONFIG is specified and the system has no IPv6 connectivity.
2009-08-08 09:46:30 -07:00
Jean-Baptiste Queru
44ac5d5d93 merge from open-source master 2009-08-07 17:04:35 -07:00
Android Code Review
bb08537104 Merge change 10057
* changes:
  Add mspace_merge_objects
2009-08-07 16:43:33 -07:00
Dima Zavin
81fa6d5f94 libc: add linux/msm_kgsl.h kernel include
Signed-off-by: Dima Zavin <dima@android.com>
2009-08-05 17:56:56 -07:00
Dima Zavin
4c4a9632bd libc: kernel: let clean_header tool take path to kernel originals as argument
Signed-off-by: Dima Zavin <dima@android.com>
2009-08-05 17:56:55 -07:00
Lorenzo Colitti
3d8f4ada56 Don't request IPv6 addresses if AI_ADDRCONFIG is specified and the system has no IPv6 connectivity. 2009-08-04 13:17:03 -07:00
Android (Google) Code Review
6e36f86333 Merge change 9546
* changes:
  Fix strftime to use localized month names.
2009-08-04 10:06:58 -07:00
Jean-Baptiste Queru
2b45974837 merge from open-source master 2009-08-04 09:00:15 -07:00
Eric Fischer
d5f72afd49 Fix strftime to use localized month names.
It was using the default locale (capital L) instead of the
current locale (lowercase l).

Bug 2030864
2009-08-03 15:43:18 -07:00
Jean-Baptiste Queru
c1e553a9cf merge from donut 2009-08-03 07:45:26 -07:00
Erik Gilling
8b09aa39c3 am fde8642f: bionic/linker: keep track of opened libraries by basename
Merge commit 'fde8642fc43bdd224e43e5ee9583a49a758fb03c'

* commit 'fde8642fc43bdd224e43e5ee9583a49a758fb03c':
  bionic/linker: keep track of opened libraries by basename
2009-07-30 06:57:18 -07:00
Jean-Baptiste Queru
61e844f48e merge from donut 2009-07-29 14:56:48 -07:00
Android (Google) Code Review
e5bcc9dc5c am 22b5eb85: Merge change 8281 into donut
Merge commit '22b5eb858dcbb537f2522ad920ca793348d574a2'

* commit '22b5eb858dcbb537f2522ad920ca793348d574a2':
  linker: remove newlines from DL_ERR so that dlerror works correctly
2009-07-29 14:47:55 -07:00
Erik Gilling
fde8642fc4 bionic/linker: keep track of opened libraries by basename
Prior to this change, the dynamic loader kept track of opened libraries
either by their base name (i.e., libfoo.so instead of /system/lib/libfoo.so)
when the shared library was loaded through the DT_NEEDED tag in an ELF header,
or by whatever name was passed to dlopen(). This created a number of problems,
among which:

1. dlopen("libfoo.so") and dlopen("/path/to/libfoo.so") would open the same
library twice;
2. dlopen("/path/to/libfoo.so") and then dlopen("libbar.so"), where libbar.so
depends on libfoo.so, would open libfoo.so twice.

This patch makes the dynamic loader keep track of each loaded library by
basename, which resolves the above ambiguity. The patch also enforces
library lookup by base name, which means that it will refuse to load another
library that has the same name.

Thanks for the inspiration Iliyan.

Signed-off-by: Erik Gilling <konkers@android.com>
Cc: Iliyan Malchev <malchev@google.com>
2009-07-28 20:36:47 -07:00
Android (Google) Code Review
22b5eb858d Merge change 8281 into donut
* changes:
  linker: remove newlines from DL_ERR so that dlerror works correctly
2009-07-28 17:35:12 -07:00
David 'Digit' Turner
9cfb12e6bc am 3773d35e: Make the DNS resolver accept domain names with an underscore.
Merge commit '3773d35eb98e22b5edab4d82fb72bdf86ff80494'

* commit '3773d35eb98e22b5edab4d82fb72bdf86ff80494':
  Make the DNS resolver accept domain names with an underscore.
2009-07-28 15:27:33 -07:00
David 'Digit' Turner
3773d35eb9 Make the DNS resolver accept domain names with an underscore.
More precisely, this accepts domain labels with an underscore in
the middle (i.e. not at the start or the end of the label). This
is needed to perform complex CNAME chain resolution in certain
VPN networks.
2009-07-27 19:19:29 +02:00
Jean-Baptiste Queru
eda65ce1a5 reconcile korg/master into goog/master 2009-07-26 11:43:53 -07:00