OSDN Git Service

android-x86/dalvik.git
14 years agoam 1dd067d9: am 54709cb2: am bf11852a: merge from open-source master
The Android Open Source Project [Fri, 4 Jun 2010 21:11:21 +0000 (14:11 -0700)]
am 1dd067d9: am 54709cb2: am bf11852a: merge from open-source master

14 years agoam 54709cb2: am bf11852a: merge from open-source master
The Android Open Source Project [Fri, 4 Jun 2010 21:03:54 +0000 (14:03 -0700)]
am 54709cb2: am bf11852a: merge from open-source master

14 years agoam bf11852a: merge from open-source master
The Android Open Source Project [Fri, 4 Jun 2010 21:02:48 +0000 (14:02 -0700)]
am bf11852a: merge from open-source master

Merge commit 'bf11852aa3b56f1f77841dd0dbb3cc984711d674' into kraken

* commit 'bf11852aa3b56f1f77841dd0dbb3cc984711d674':
  Fix for use of UNPREDICTABLE register combination

14 years agomerge from open-source master
The Android Open Source Project [Fri, 4 Jun 2010 21:01:00 +0000 (14:01 -0700)]
merge from open-source master

Change-Id: Ic827f3b9a61ba4bfe72606950b6b34a5caf9d9bd

14 years agoFix for use of UNPREDICTABLE register combination
Dave Butcher [Wed, 2 Jun 2010 13:52:21 +0000 (14:52 +0100)]
Fix for use of UNPREDICTABLE register combination

Use of the LDRD instruction form LDRD Rt, Rt2, [Rn, Rm] has restrictions
on the register combinations - specifically if Rt or Rt2 is equal to Rn or
Rm the behaviour is defined as 'UNPREDICTABLE'.

Change-Id: I19834783865e07897cc7012367e698447f023ce6

14 years agoam 09eae10c: am 23971e39: Merge "Added a new JNI helper for logging exceptions. Plugg...
Jeff Brown [Thu, 3 Jun 2010 21:26:46 +0000 (14:26 -0700)]
am 09eae10c: am 23971e39: Merge "Added a new JNI helper for logging exceptions. Plugged some JNI reference leaks in existing JNI helpers." into kraken

14 years agoam 23971e39: Merge "Added a new JNI helper for logging exceptions. Plugged some JNI...
Jeff Brown [Thu, 3 Jun 2010 21:24:59 +0000 (14:24 -0700)]
am 23971e39: Merge "Added a new JNI helper for logging exceptions. Plugged some JNI reference leaks in existing JNI helpers." into kraken

14 years agoMerge "Added a new JNI helper for logging exceptions. Plugged some JNI reference...
Jeff Brown [Thu, 3 Jun 2010 21:23:25 +0000 (14:23 -0700)]
Merge "Added a new JNI helper for logging exceptions. Plugged some JNI reference leaks in existing JNI helpers." into kraken

14 years agoam db5e758f: am 97e34d0d: am c023ae6a: am 962f896e: Add /proc/pid/task/tid/schedstat...
Christopher Tate [Thu, 3 Jun 2010 18:10:39 +0000 (11:10 -0700)]
am db5e758f: am 97e34d0d: am c023ae6a: am 962f896e: Add /proc/pid/task/tid/schedstat info to thread stack dumps

14 years agoam 97e34d0d: am c023ae6a: am 962f896e: Add /proc/pid/task/tid/schedstat info to threa...
Christopher Tate [Thu, 3 Jun 2010 18:09:32 +0000 (11:09 -0700)]
am 97e34d0d: am c023ae6a: am 962f896e: Add /proc/pid/task/tid/schedstat info to thread stack dumps

14 years agoam c023ae6a: am 962f896e: Add /proc/pid/task/tid/schedstat info to thread stack dumps
Christopher Tate [Thu, 3 Jun 2010 18:07:49 +0000 (11:07 -0700)]
am c023ae6a: am 962f896e: Add /proc/pid/task/tid/schedstat info to thread stack dumps

Merge commit 'c023ae6afcdd37b26dd16be43b023a93acc90905' into kraken

* commit 'c023ae6afcdd37b26dd16be43b023a93acc90905':
  Add /proc/pid/task/tid/schedstat info to thread stack dumps

14 years agoam 962f896e: Add /proc/pid/task/tid/schedstat info to thread stack dumps
Christopher Tate [Thu, 3 Jun 2010 18:06:14 +0000 (11:06 -0700)]
am 962f896e: Add /proc/pid/task/tid/schedstat info to thread stack dumps

Merge commit '962f896e1eeb159a6a2ac7a560708939cbb15575' into froyo-plus-aosp

* commit '962f896e1eeb159a6a2ac7a560708939cbb15575':
  Add /proc/pid/task/tid/schedstat info to thread stack dumps

14 years agoAdd /proc/pid/task/tid/schedstat info to thread stack dumps
Christopher Tate [Wed, 2 Jun 2010 23:17:46 +0000 (16:17 -0700)]
Add /proc/pid/task/tid/schedstat info to thread stack dumps

This lets us see whether a usually-blocked thread is actually making
progress in between stack snapshots.

Change-Id: If191627e4572457579d5f330d31bde86b8ce4ec5

14 years agoAdded a new JNI helper for logging exceptions.
Jeff Brown [Wed, 2 Jun 2010 04:07:08 +0000 (21:07 -0700)]
Added a new JNI helper for logging exceptions.
Plugged some JNI reference leaks in existing JNI helpers.

Change-Id: I62213cdae375235f6ee9304ecd8dc3d2b7f58c85

14 years agoMerge "Merge branch 'dalvik-dev'"
Brian Carlstrom [Tue, 1 Jun 2010 17:09:25 +0000 (10:09 -0700)]
Merge "Merge branch 'dalvik-dev'"

14 years agoMerge branch 'dalvik-dev'
Brian Carlstrom [Tue, 1 Jun 2010 16:16:11 +0000 (09:16 -0700)]
Merge branch 'dalvik-dev'

14 years agoam ead3d06b: am 67e82fb1: Merge "Atomic/SMP update, part 2." into kraken
Andy McFadden [Mon, 31 May 2010 04:20:47 +0000 (21:20 -0700)]
am ead3d06b: am 67e82fb1: Merge "Atomic/SMP update, part 2." into kraken

14 years agoMerge remote branch 'goog/dalvik-dev' into dalvik-dev-to-master
Brian Carlstrom [Fri, 28 May 2010 22:42:12 +0000 (15:42 -0700)]
Merge remote branch 'goog/dalvik-dev' into dalvik-dev-to-master

Change-Id: I0c0edb3ebf0d5e040d6bbbf60269fab0deb70ef9

14 years agoam 67e82fb1: Merge "Atomic/SMP update, part 2." into kraken
Andy McFadden [Fri, 28 May 2010 20:02:16 +0000 (13:02 -0700)]
am 67e82fb1: Merge "Atomic/SMP update, part 2." into kraken

14 years agoMerge "Atomic/SMP update, part 2." into kraken
Andy McFadden [Fri, 28 May 2010 20:00:21 +0000 (13:00 -0700)]
Merge "Atomic/SMP update, part 2." into kraken

14 years agoam b1293374: am a02fe785: am 4d24105a: am 2b469f82: Jit: Fix for 2717275 First JIT...
buzbee [Fri, 28 May 2010 06:05:37 +0000 (23:05 -0700)]
am b1293374: am a02fe785: am 4d24105a: am 2b469f82: Jit: Fix for  2717275 First JIT bug reported by external developers

14 years agoam 9e38f2e4: am a85f449b: am c0ebbcd5: Merge commit \'720d1e962e248a30f81c1493081ff4c...
android-build SharedAccount [Fri, 28 May 2010 06:05:33 +0000 (23:05 -0700)]
am 9e38f2e4: am a85f449b: am c0ebbcd5: Merge commit \'720d1e962e248a30f81c1493081ff4c01e35c839\' into froyo-plus-aosp

14 years agoMerge "Remove the write permission for the JIT code cache when not needed" into dalvi...
Ben Cheng [Thu, 27 May 2010 23:19:46 +0000 (16:19 -0700)]
Merge "Remove the write permission for the JIT code cache when not needed" into dalvik-dev

14 years agoRemove the write permission for the JIT code cache when not needed
Ben Cheng [Mon, 17 May 2010 19:50:33 +0000 (12:50 -0700)]
Remove the write permission for the JIT code cache when not needed

To support the feature, redesigned the predicted chaining mechanism so that the
profile count is shared globally in InterpState.

Bug: 2690371
Change-Id: Ifed427e8b1fa4f6c670f19e0761e45e2d4afdbb6

14 years agoMerge "Fix two dex file structural verification issues." into dalvik-dev
Dan Bornstein [Thu, 27 May 2010 22:50:44 +0000 (15:50 -0700)]
Merge "Fix two dex file structural verification issues." into dalvik-dev

14 years agoFix two dex file structural verification issues.
Dan Bornstein [Thu, 27 May 2010 00:24:05 +0000 (17:24 -0700)]
Fix two dex file structural verification issues.

First, structural verification failed to check for inconsistencies with
the number of arguments to methods compared to the number of registers
declared by those methods.

Second, neither the dexdump nor dexlist tools would run structural
verification.

As an added bonus, I renamed the function that performs byte swapping
and structural verification to be more descriptive about what it
does.

Bug: 2716693
Change-Id: I58794713967f5bea95010084c85efe1f929ce7d1

14 years agoam a02fe785: am 4d24105a: am 2b469f82: Jit: Fix for 2717275 First JIT bug reported...
buzbee [Thu, 27 May 2010 19:39:12 +0000 (12:39 -0700)]
am a02fe785: am 4d24105a: am 2b469f82: Jit: Fix for  2717275 First JIT bug reported by external developers

14 years agoam 4d24105a: am 2b469f82: Jit: Fix for 2717275 First JIT bug reported by external...
buzbee [Thu, 27 May 2010 19:37:16 +0000 (12:37 -0700)]
am 4d24105a: am 2b469f82: Jit: Fix for  2717275 First JIT bug reported by external developers

Merge commit '4d24105a25ae285c324103843b9859c75e3f1a4c' into kraken

* commit '4d24105a25ae285c324103843b9859c75e3f1a4c':
  Jit: Fix for  2717275 First JIT bug reported by external developers

14 years agoam a85f449b: am c0ebbcd5: Merge commit \'720d1e962e248a30f81c1493081ff4c01e35c839...
android-build SharedAccount [Thu, 27 May 2010 19:35:31 +0000 (12:35 -0700)]
am a85f449b: am c0ebbcd5: Merge commit \'720d1e962e248a30f81c1493081ff4c01e35c839\' into froyo-plus-aosp

14 years agoam 2b469f82: Jit: Fix for 2717275 First JIT bug reported by external developers
buzbee [Thu, 27 May 2010 19:35:14 +0000 (12:35 -0700)]
am 2b469f82: Jit: Fix for  2717275 First JIT bug reported by external developers

Merge commit '2b469f82df14749c67da43f073fd7a9b6b1ccd74' into froyo-plus-aosp

* commit '2b469f82df14749c67da43f073fd7a9b6b1ccd74':
  Jit: Fix for  2717275 First JIT bug reported by external developers

14 years agoam c0ebbcd5: Merge commit \'720d1e962e248a30f81c1493081ff4c01e35c839\' into froyo...
android-build SharedAccount [Thu, 27 May 2010 19:33:39 +0000 (12:33 -0700)]
am c0ebbcd5: Merge commit \'720d1e962e248a30f81c1493081ff4c01e35c839\' into froyo-plus-aosp

Merge commit 'c0ebbcd5341625fbbba594d45ecffdfb83637f41' into kraken

* commit 'c0ebbcd5341625fbbba594d45ecffdfb83637f41':
  Disable SSL Session Ticket extension for OpenSSLSocket

14 years agoMerge commit '720d1e962e248a30f81c1493081ff4c01e35c839' into froyo-plus-aosp
android-build SharedAccount [Thu, 27 May 2010 19:30:13 +0000 (12:30 -0700)]
Merge commit '720d1e962e248a30f81c1493081ff4c01e35c839' into froyo-plus-aosp

14 years agoMerge "Remove unused code from the thread scanner." into dalvik-dev
Carl Shapiro [Thu, 27 May 2010 17:56:08 +0000 (10:56 -0700)]
Merge "Remove unused code from the thread scanner." into dalvik-dev

14 years agoAtomic/SMP update, part 2.
Andy McFadden [Thu, 27 May 2010 17:23:41 +0000 (10:23 -0700)]
Atomic/SMP update, part 2.

Updated "generic" quasiatomic implementation to use atomic release store
instead of atomic swap when releasing the lock.

Track change to name of memory barrier.

Change-Id: Ie6ec37bca6984553f665bd25385210ea6c8e0943

14 years agoMerge "Fix three minor issues that prevent the phone from booting." into dalvik-dev
Carl Shapiro [Thu, 27 May 2010 03:25:22 +0000 (20:25 -0700)]
Merge "Fix three minor issues that prevent the phone from booting." into dalvik-dev

14 years agoFix three minor issues that prevent the phone from booting.
Carl Shapiro [Fri, 21 May 2010 03:22:31 +0000 (20:22 -0700)]
Fix three minor issues that prevent the phone from booting.

* Implement dvmHeapSourceGetLiveBits so we can pre- and post-verify
  the heap.

* Add do-nothing methods for manipulating the heap threshold.

* Use the CLZ abstraction for open code on the ARM.

Change-Id: I988a207fba4a61572a3b4896b0e254078f95c333

14 years agoRemove unused code from the thread scanner.
Carl Shapiro [Thu, 27 May 2010 02:58:17 +0000 (19:58 -0700)]
Remove unused code from the thread scanner.

The affected cases have been migrated to the copying collector where
they are required.  The non-moving collector does not need to visit
these roots.

Change-Id: I8b35d63cd8154b7c9f85320959559a718749976b

14 years agoJit: Fix for 2717275 First JIT bug reported by external developers
buzbee [Wed, 26 May 2010 22:57:27 +0000 (15:57 -0700)]
Jit: Fix for  2717275 First JIT bug reported by external developers

The JIT was incorrectly keeping a short value in a floating point
register rather than copying it to a core register before storing.
There was an assert to catch this case, but asserts don't fire in
production builds.

The fix is safe and simple - just exclude this case from the "optimization".

Change-Id: I33767c8a202b6fa36a19d918ac5b914a5e4e4de3

14 years agoJit: Fix for 2717275 First JIT bug reported by external developers
buzbee [Wed, 26 May 2010 21:48:04 +0000 (14:48 -0700)]
Jit: Fix for  2717275 First JIT bug reported by external developers

The JIT was incorrectly keeping a short value in a floating point
register rather than copying it to a core register before storing.
There was an assert to catch this case, but asserts don't fire in
production builds.

The fix is safe and simple - just exclude this case from the "optimization".

Change-Id: I38f1865da11ef3f78213f84967d4737e066b9c68

14 years agoRemove an unused variable introduced in the last commit.
Carl Shapiro [Wed, 26 May 2010 21:32:00 +0000 (14:32 -0700)]
Remove an unused variable introduced in the last commit.

Change-Id: I699dc158b7c3a84e9ee3a3cc636f8bb122d69a79

14 years agoEliminate more unused variables and compiler warnings.
Carl Shapiro [Wed, 26 May 2010 01:35:37 +0000 (18:35 -0700)]
Eliminate more unused variables and compiler warnings.

This change also introduces wrappers for condition variable operations
similar to what we have already for mutex operations.

Almost all the remaining warnings are now in the compiler or non-debug
uses of the CHECK_JIT macro.

Change-Id: I9f492f1582a06065e3a52287c7834adddfbefff9

14 years agoReplace the scanObject routines with one derived from Verify.
Barry Hayes [Tue, 18 May 2010 16:48:37 +0000 (09:48 -0700)]
Replace the scanObject routines with one derived from Verify.
It seems to be slightly faster this way, as well as more readable.

Change-Id: I92b9c54289c484cb4606f054f258da4a4bef8658

14 years agoMerge "Check the number of slots in the Class.java definition against the number...
Barry Hayes [Tue, 25 May 2010 20:28:35 +0000 (13:28 -0700)]
Merge "Check the number of slots in the Class.java definition against the number assumed by the VM, and abort if the Class has too many." into dalvik-dev

14 years agoMerge "Fix dalvik/tests/062-character-encodings." into dalvik-dev
Elliott Hughes [Tue, 25 May 2010 00:30:41 +0000 (17:30 -0700)]
Merge "Fix dalvik/tests/062-character-encodings." into dalvik-dev

14 years agoCheck the number of slots in the Class.java definition against the number assumed...
Barry Hayes [Mon, 24 May 2010 19:13:30 +0000 (12:13 -0700)]
Check the number of slots in the Class.java definition against the number assumed by the VM, and abort if the Class has too many.

Change-Id: Ibcf4539ab98639c1c92e5d910c38ee1feb9c8c43

14 years agoTimeout the finalizer throw test if no finalization occurs.
Carl Shapiro [Mon, 24 May 2010 18:21:12 +0000 (11:21 -0700)]
Timeout the finalizer throw test if no finalization occurs.

This test will never complete if the objects intended for finalization
are not ready to be collected.  This condition occurs with the copying
collector.  Adding the timeout forces the test to fail and allows the
test suite to make forward progress.

Change-Id: I2abb0a2530755dd32a14ecf94b24a546fd1327a9

14 years agoFix dalvik/tests/062-character-encodings.
Elliott Hughes [Mon, 24 May 2010 17:59:11 +0000 (10:59 -0700)]
Fix dalvik/tests/062-character-encodings.

The dalvik charset test should just check that the standard charsets are
available, as guaranteed by the java.nio.charset.Charset documentation.

Bug: 2709552
Change-Id: I7d2b6210936f01736034222ce26cdf81c47ef984

14 years agoRemove unused labels, variables, and functions. Enable warnings.
Carl Shapiro [Fri, 21 May 2010 05:54:18 +0000 (22:54 -0700)]
Remove unused labels, variables, and functions.  Enable warnings.

Change-Id: Icbe24eaf1ad499f28b68b6a5f05368271a0a7e86

14 years agoMerge commit '720d1e962e248a30f81c1493081ff4c01e35c839' into mm
Brian Carlstrom [Fri, 21 May 2010 22:10:31 +0000 (15:10 -0700)]
Merge commit '720d1e962e248a30f81c1493081ff4c01e35c839' into mm

Conflicts:
libcore/x-net/src/main/native/org_apache_harmony_xnet_provider_jsse_NativeCrypto.cpp

Change-Id: I765343d83fe9bd6610f630790fbbf034467834d1

14 years agoresolved conflicts for merge of fc0dcfa2 to dalvik-dev
Andy McFadden [Fri, 21 May 2010 19:22:30 +0000 (12:22 -0700)]
resolved conflicts for merge of fc0dcfa2 to dalvik-dev

Change-Id: I54a5b9996252a22e8dd0214f4a4ccc8914f876ea

14 years agoam f00de1ba: am 6a877083: Atomic/SMP update.
Andy McFadden [Fri, 21 May 2010 19:08:06 +0000 (12:08 -0700)]
am f00de1ba: am 6a877083: Atomic/SMP update.

14 years agoam 6a877083: Atomic/SMP update.
Andy McFadden [Fri, 21 May 2010 19:06:30 +0000 (12:06 -0700)]
am 6a877083: Atomic/SMP update.

14 years agoMerge "Improvements to setThreadSelf use." into dalvik-dev
Barry Hayes [Fri, 21 May 2010 15:44:42 +0000 (08:44 -0700)]
Merge "Improvements to setThreadSelf use." into dalvik-dev

14 years agoAtomic/SMP update.
Andy McFadden [Thu, 20 May 2010 05:36:33 +0000 (22:36 -0700)]
Atomic/SMP update.

Moved quasiatomic 64-bit operations in here.  They still need work.

Use the new libcutils atomic-inline header for our memory barriers.
Adjust makefiles to set SMP definition appropriately.

Change-Id: Id2ab2123724bb0baeb32f862b5568392aba35a59

14 years agoVerifiy threads, stacks, and heap worker structures.
Carl Shapiro [Thu, 20 May 2010 22:43:30 +0000 (15:43 -0700)]
Verifiy threads, stacks, and heap worker structures.

Change-Id: I33caecfc53c8399b023675b5559be8a4b0696b97

14 years agoRemove unused local variables and local functions.
Carl Shapiro [Thu, 20 May 2010 21:59:44 +0000 (14:59 -0700)]
Remove unused local variables and local functions.

Change-Id: Iacb14a83f59ac20ef5e0616acbf0c6f683b947d5

14 years agoProperly implement conservative scanning.
Carl Shapiro [Thu, 20 May 2010 00:38:33 +0000 (17:38 -0700)]
Properly implement conservative scanning.

Even when precise GC is enabled the register map may be unavailable
and registers must be treated as ambiguous roots.  We now pin these
roots, along with native arguments, just prior to scavenging.

Change-Id: Ifbd799a34385a87960af28174128e2220e599c73

14 years agoImprovements to setThreadSelf use.
Barry Hayes [Tue, 20 Apr 2010 16:03:15 +0000 (09:03 -0700)]
Improvements to setThreadSelf use.

Made all calls to assignThreadId and prepareThread aquire
threadListLock, even in initialization, where it previously relied on
being single-threaded.

Change-Id: Ibffc454c4c6fd78efa6f22b955b955cd33998a4c

14 years agoInstead of aborting, just ignore tracked allocation calls.
Carl Shapiro [Tue, 18 May 2010 21:16:26 +0000 (14:16 -0700)]
Instead of aborting, just ignore tracked allocation calls.

This fixes a crash in the 070-nio-buffer dalvik test.

Change-Id: If58895498d573408ed69b6b580c16b9e75e9c291

14 years agoJIT: Fix for [Issue 2675245] FRF40 monkey crash in jit-cache
Bill Buzbee [Thu, 13 May 2010 20:02:53 +0000 (13:02 -0700)]
JIT: Fix for [Issue 2675245] FRF40 monkey crash in jit-cache

The JIT's chaining mechanism suffered from a narrow window that
could result in i-cache inconsistency.  One of the forms of chaining
cell consisted of a two 16-bit thumb instruction sequence.  If a thread were
interrupted between the execution of those two instructions *and*
another thread picked that moment to convert that cell's
chained/unchained state, then bad things happen.

This CL alters the chain/unchain model somewhat to avoid this case.
Chainable chaining cells grow by 4 bytes each, and instead of rewriting
a 32-bit cell to chain/unchain, we switch between chained and unchained
state by [re]writing the first 16-bits of the cell as either a 16-bit
Thumb unconditional branch (unchained mode) or the first half of a
32-bit Thumb branch. The 2nd 16-bits of the cell will never change once
the cell moves from its inital state - thus avoiding the possibility of it
becoming inconsistent.

This adds a trivial execution penalty on the slow path, but will add
about a kByte of memory usage to a typical process.

Change-Id: Id8b99802e11386cfbab23da6abae10e2d9fc4065

14 years agoDisable SSL Session Ticket extension for OpenSSLSocket
Brian Carlstrom [Thu, 13 May 2010 23:30:53 +0000 (16:30 -0700)]
Disable SSL Session Ticket extension for OpenSSLSocket

Due to compatability issues with some sites, disable this SSL extension which wasn't present in Eclair. See also:

    b/2682876 Some ssl sites cause "A secure connection could not be established" error

Change-Id: Ib42fb249eb0f8d645ae3f983c77cb278ca54f946

14 years agoMerge "Added a quick test." into dalvik-dev
Andy McFadden [Thu, 13 May 2010 21:26:03 +0000 (14:26 -0700)]
Merge "Added a quick test." into dalvik-dev

14 years agoAdded a quick test.
Andy McFadden [Thu, 13 May 2010 21:24:11 +0000 (14:24 -0700)]
Added a quick test.

Somebody on android-developers was having trouble with
Method.isAnnotationPresent().  This adds a pair of calls as a quick
sanity check.

Change-Id: I4907d7b1dbf9593be53c25149e1e6ec29cd4b222

14 years agoMerge "Add counters to track JIT inline cache hit rate and code cache patch counts...
Ben Cheng [Thu, 13 May 2010 21:17:07 +0000 (14:17 -0700)]
Merge "Add counters to track JIT inline cache hit rate and code cache patch counts." into dalvik-dev

14 years agoAdd counters to track JIT inline cache hit rate and code cache patch counts.
Ben Cheng [Thu, 13 May 2010 20:45:57 +0000 (13:45 -0700)]
Add counters to track JIT inline cache hit rate and code cache patch counts.

Also did some WITH_JIT_TUNING cleanup.

Change-Id: I8bb2d681a06b0f2af1f976a007326825a88cea38

14 years agoResolve a few errors with the new collector and the dalvik tests.
Carl Shapiro [Thu, 13 May 2010 06:11:37 +0000 (23:11 -0700)]
Resolve a few errors with the new collector and the dalvik tests.

* First, Scavenge class object instance fields.  This fixes a crash in
  the 067-preemptive-unpark test.

* Assert that allocations to back the transport of gray objects
  succeeds.  Fragmentation caused by pinning can cause a blow-up in
  the size of to-space.  Until we can perform emergency promotions
  this leads to more diagnosable test failures.

* Zero dvmHeapSweepUnmarkObjects's out parameters.  This silences some
  valgrind errors.

Change-Id: Iafbd915f2020418d584477b58c512b9ff4637213

14 years agoAdd a few global root verifiers to the common verification code.
Carl Shapiro [Wed, 12 May 2010 03:55:13 +0000 (20:55 -0700)]
Add a few global root verifiers to the common verification code.

Change-Id: I32427bc10b08b35e9be8851bfa9ef52408a07708

14 years agoPlug leak in class initialization.
Andy McFadden [Thu, 6 May 2010 20:39:07 +0000 (13:39 -0700)]
Plug leak in class initialization.

Don't add static fields and methods to the resolved-items table if the
defining class is still being initialized.  If we do, other threads can
then access those fields and methods without first performing an "is the
class initialized" test.

We will end up performing static field and method resolution more often
now than before.  On a Nexus One, zygote class preload time went from
2227ms to 2239ms (i.e. the performance difference is in the noise).

Bug 2655384.

(Re-applying this after the JIT fix.)

Change-Id: I14846865313730f705b819c5893456e342316e2e

14 years agoTwo fixes to referencing processing.
Carl Shapiro [Tue, 11 May 2010 20:46:29 +0000 (13:46 -0700)]
Two fixes to referencing processing.

First, ensure the transporter allocates from blocks on the scavenger
work queue.  Previously, the transporter could have objects allocated
in the free space of dequeued to-space blocks.  When this condition
occurs we unconditionally enqueue the block for re-scavenging.

Second, finish the implementation of large heap table scavenging and
add a verification routine for this root.

Change-Id: I5a9caf4b2824673a1f532c4e215c53f64a6a4627

14 years agoam 2725c3a4: am 7b30673d: am e54a4c58: am ff11012d: am f3377c64: Merge "Remove test...
Jesse Wilson [Tue, 11 May 2010 17:31:07 +0000 (10:31 -0700)]
am 2725c3a4: am 7b30673d: am e54a4c58: am ff11012d: am f3377c64: Merge "Remove test runner tool vogar from Froyo." into froyo

Merge commit '2725c3a4d7a33d2c8d9723079a7ec7522ceaf628' into dalvik-dev

* commit '2725c3a4d7a33d2c8d9723079a7ec7522ceaf628':
  Remove test runner tool vogar from Froyo.

14 years agoam 447fe997: am 9b0df189: am 46a56d05: am 677fead0: Merge commit \'264952afbf3986a2af...
android-build SharedAccount [Tue, 11 May 2010 17:29:34 +0000 (10:29 -0700)]
am 447fe997: am 9b0df189: am 46a56d05: am 677fead0: Merge commit \'264952afbf3986a2af4c2fa6b8daaed04f34fee8\' into froyo-plus-aosp

Merge commit '447fe9973744f685fdd83d14ba2103d2a3e13553' into dalvik-dev

* commit '447fe9973744f685fdd83d14ba2103d2a3e13553':
  b/2663512: "java.io.IOException: SSL shutdown failed.: Ok" shouldn't dump a stacktrace

14 years agoam 7b30673d: am e54a4c58: am ff11012d: am f3377c64: Merge "Remove test runner tool...
Jesse Wilson [Tue, 11 May 2010 17:28:00 +0000 (10:28 -0700)]
am 7b30673d: am e54a4c58: am ff11012d: am f3377c64: Merge "Remove test runner tool vogar from Froyo." into froyo

14 years agoam e54a4c58: am ff11012d: am f3377c64: Merge "Remove test runner tool vogar from...
Jesse Wilson [Tue, 11 May 2010 17:25:51 +0000 (10:25 -0700)]
am e54a4c58: am ff11012d: am f3377c64: Merge "Remove test runner tool vogar from Froyo." into froyo

14 years agoam 9b0df189: am 46a56d05: am 677fead0: Merge commit \'264952afbf3986a2af4c2fa6b8daaed...
android-build SharedAccount [Tue, 11 May 2010 17:24:17 +0000 (10:24 -0700)]
am 9b0df189: am 46a56d05: am 677fead0: Merge commit \'264952afbf3986a2af4c2fa6b8daaed04f34fee8\' into froyo-plus-aosp

14 years agoam ff11012d: am f3377c64: Merge "Remove test runner tool vogar from Froyo." into...
Jesse Wilson [Tue, 11 May 2010 17:23:30 +0000 (10:23 -0700)]
am ff11012d: am f3377c64: Merge "Remove test runner tool vogar from Froyo." into froyo

Merge commit 'ff11012d99f01ba9c0b9c66f7ae089df8d93f813' into kraken

* commit 'ff11012d99f01ba9c0b9c66f7ae089df8d93f813':
  Remove test runner tool vogar from Froyo.

14 years agoam 46a56d05: am 677fead0: Merge commit \'264952afbf3986a2af4c2fa6b8daaed04f34fee8...
android-build SharedAccount [Tue, 11 May 2010 17:23:09 +0000 (10:23 -0700)]
am 46a56d05: am 677fead0: Merge commit \'264952afbf3986a2af4c2fa6b8daaed04f34fee8\' into froyo-plus-aosp

14 years agoam 677fead0: Merge commit \'264952afbf3986a2af4c2fa6b8daaed04f34fee8\' into froyo...
android-build SharedAccount [Tue, 11 May 2010 17:22:04 +0000 (10:22 -0700)]
am 677fead0: Merge commit \'264952afbf3986a2af4c2fa6b8daaed04f34fee8\' into froyo-plus-aosp

Merge commit '677fead05d1df2457c1f9a92d193b809b91319c0' into kraken

* commit '677fead05d1df2457c1f9a92d193b809b91319c0':
  b/2663512: "java.io.IOException: SSL shutdown failed.: Ok" shouldn't dump a stacktrace

14 years agoam f3377c64: Merge "Remove test runner tool vogar from Froyo." into froyo
Jesse Wilson [Tue, 11 May 2010 17:18:31 +0000 (10:18 -0700)]
am f3377c64: Merge "Remove test runner tool vogar from Froyo." into froyo

Merge commit 'f3377c64212d5ebda0799d42659bde3e8f488b29' into froyo-plus-aosp

* commit 'f3377c64212d5ebda0799d42659bde3e8f488b29':
  Remove test runner tool vogar from Froyo.

14 years agoMerge commit '264952afbf3986a2af4c2fa6b8daaed04f34fee8' into froyo-plus-aosp
android-build SharedAccount [Tue, 11 May 2010 17:14:32 +0000 (10:14 -0700)]
Merge commit '264952afbf3986a2af4c2fa6b8daaed04f34fee8' into froyo-plus-aosp

14 years agoAdd the dummy CHECK_JIT and ABORT_JIT_TSELECT macros even when JIT is off.
Ben Cheng [Tue, 11 May 2010 06:24:02 +0000 (23:24 -0700)]
Add the dummy CHECK_JIT and ABORT_JIT_TSELECT macros even when JIT is off.

Change-Id: I5d9886dcb8359dd4336d83b2a2bddad383f5cc36

14 years agoMerge "Abandon a JIT trace if it contains static fields that are not fully initialize...
Ben Cheng [Tue, 11 May 2010 05:28:21 +0000 (22:28 -0700)]
Merge "Abandon a JIT trace if it contains static fields that are not fully initialized" into dalvik-dev

14 years agoCorrect and add additional LOGV statements.
Carl Shapiro [Tue, 11 May 2010 02:55:50 +0000 (19:55 -0700)]
Correct and add additional LOGV statements.

Change-Id: I28db8a3b4c0bb9eb25a075f46b89280c7f8f466c

14 years agoAbandon a JIT trace if it contains static fields that are not fully initialized
Ben Cheng [Fri, 7 May 2010 20:05:47 +0000 (13:05 -0700)]
Abandon a JIT trace if it contains static fields that are not fully initialized

Also turn some asserts into aborts to capture future contract changes between
the VM and the JIT.

Bug: 2655384
Change-Id: I8bb0226c7ae26fedf6b4ad25a1cd1aa7013b60d4

14 years agoMerge "Remove test runner tool vogar from Froyo." into froyo
Jesse Wilson [Mon, 10 May 2010 22:44:52 +0000 (15:44 -0700)]
Merge "Remove test runner tool vogar from Froyo." into froyo

14 years agoRemove test runner tool vogar from Froyo.
Jesse Wilson [Mon, 10 May 2010 21:39:20 +0000 (14:39 -0700)]
Remove test runner tool vogar from Froyo.

This tool has been open sourced independently and it will be quite
awkward for external contributors who attempt to use or contribute
to this dead copy. This code is test only and not used by the
production runtime.
http://code.google.com/p/vogar/

Change-Id: Ib53bdfdb600330e1a2f200b5747305fc527a78a6

14 years agoRationalize logging.
Carl Shapiro [Thu, 6 May 2010 22:35:27 +0000 (15:35 -0700)]
Rationalize logging.

Replacing stray uses of LOGI them with macros specific to functional
aspects of the collector.  Replace (void *) cast for with (void) cast
in the expansion of unused macros.  While these are both no-ops, the
latter cast does not emit a warning message.  Lastly, eliminate some
logging statements I never found useful.  More logging statements need
to be culled.

Change-Id: Id5603c3a816c016a91e00e296ff5c16dddfe7e1a

14 years agoMerge "Implement reference processing for the copying collector." into dalvik-dev
Carl Shapiro [Fri, 7 May 2010 21:13:02 +0000 (14:13 -0700)]
Merge "Implement reference processing for the copying collector." into dalvik-dev

14 years agoImplement reference processing for the copying collector.
Carl Shapiro [Thu, 6 May 2010 21:35:29 +0000 (14:35 -0700)]
Implement reference processing for the copying collector.

When scavenging a reference object the scavenging of the referent
field is now deferred until after hard-reachable objects have been
scavenged.  The reference processing routines were lifted from the
mark and sweep collector.  The interface routines are still stubbed
out and reference processing occurs in the top-level scavenging
routine.

The use of subclasses of Object has been rationalized as part of this
change.  In various places what are logically down-casts have been
eliminated.  This caused lots of uneccesary casting.  One day this
code should just be written in a more expressive language.

Change-Id: I937f494e8be42bd66357e301f7158eeaa4f69c10

14 years agoRemove the HeapBitmap List routines.
Barry Hayes [Fri, 7 May 2010 16:19:46 +0000 (09:19 -0700)]
Remove the HeapBitmap List routines.

Change-Id: Ic518798ba8574534746ada9e8757948ae2e1bab9

14 years agob/2663512: "java.io.IOException: SSL shutdown failed.: Ok" shouldn't dump a stacktrace
Brian Carlstrom [Fri, 7 May 2010 16:58:15 +0000 (09:58 -0700)]
b/2663512: "java.io.IOException: SSL shutdown failed.: Ok" shouldn't dump a stacktrace

Gutted OpenSSLSocketImpl finalizer. The comment from the code
(excepted below) explains in detail the trouble of having the
finalizer do anything more than touch its the instances own state due
to unpredictable order of finalization and the future possability of
parallel finalization.

        /*
         * Just worry about our own state. Notably we do not try and
         * close anything. The SocketImpl, either our own
         * PlainSocketImpl, or the Socket we are wrapping, will do
         * that. This might mean we do not properly SSL_shutdown, but
         * if you want to do that, properly close the socket yourself.
         *
         * The reason why we don't try to SSL_shutdown is that there
         * can be a race between finalizers where the PlainSocketImpl
         * finalizer runs first and closes the socket. However, in the
         * meanwhile, the underlying file descriptor could be reused
         * for another purpose. If we call SSL_shutdown after that, the
         * underlying socket BIOs still have the older file descriptor
         * and will write the close notify to some unsuspecting
         * reader.
         */

Tested extensively in mainline with existing tests.xnet.AllTests as
well as new javax.net.ssl tests. Sanity tested in froyo with
tests.xnet.AllTests and browser testing.

Change-Id: I85e0e086b43b2ad79304f2cf42721d09cc41a5f4

14 years agoam 030dc99b: am b463bd41: am 645689db: am 42b68d1a: am 818164b8: Revert "Plug leak...
Dan Egnor [Fri, 7 May 2010 04:21:18 +0000 (21:21 -0700)]
am 030dc99b: am b463bd41: am 645689db: am 42b68d1a: am 818164b8: Revert "Plug leak in class initialization."

Merge commit '030dc99b8ca387adb3377830d65eea76de3adacd' into dalvik-dev

* commit '030dc99b8ca387adb3377830d65eea76de3adacd':
  Revert "Plug leak in class initialization."

14 years agoam b463bd41: am 645689db: am 42b68d1a: am 818164b8: Revert "Plug leak in class initia...
Dan Egnor [Fri, 7 May 2010 04:15:59 +0000 (21:15 -0700)]
am b463bd41: am 645689db: am 42b68d1a: am 818164b8: Revert "Plug leak in class initialization."

14 years agoam 645689db: am 42b68d1a: am 818164b8: Revert "Plug leak in class initialization."
Dan Egnor [Fri, 7 May 2010 04:15:02 +0000 (21:15 -0700)]
am 645689db: am 42b68d1a: am 818164b8: Revert "Plug leak in class initialization."

14 years agoam 42b68d1a: am 818164b8: Revert "Plug leak in class initialization."
Dan Egnor [Fri, 7 May 2010 04:13:51 +0000 (21:13 -0700)]
am 42b68d1a: am 818164b8: Revert "Plug leak in class initialization."

Merge commit '42b68d1aef220145fc7c06ca469d2693e96e9801' into kraken

* commit '42b68d1aef220145fc7c06ca469d2693e96e9801':
  Revert "Plug leak in class initialization."

14 years agoam 818164b8: Revert "Plug leak in class initialization."
Dan Egnor [Fri, 7 May 2010 04:10:17 +0000 (21:10 -0700)]
am 818164b8: Revert "Plug leak in class initialization."

Merge commit '818164b87a9c08a938c371d8b47987a3af06d6f6' into froyo-plus-aosp

* commit '818164b87a9c08a938c371d8b47987a3af06d6f6':
  Revert "Plug leak in class initialization."

14 years agoRevert "Plug leak in class initialization."
Dan Egnor [Fri, 7 May 2010 03:56:14 +0000 (20:56 -0700)]
Revert "Plug leak in class initialization."

This reverts commit d07cf9d69dddeebb91386a88f7b6d2323cf125a9.
Bug: 2664424

Change-Id: I1a36469757f2f20fb29b3bcf04e2a23aa7b72dca

14 years agoam ac2a3585: am 206edb63: am 71c9526e: am 99632b11: manual merge from froyo
Jean-Baptiste Queru [Fri, 7 May 2010 00:13:06 +0000 (17:13 -0700)]
am ac2a3585: am 206edb63: am 71c9526e: am 99632b11: manual merge from froyo

Merge commit 'ac2a358546cf2b5bab43a39eb40549d31932c64d' into dalvik-dev

* commit 'ac2a358546cf2b5bab43a39eb40549d31932c64d':
  Plug leak in class initialization.

14 years agoam 551a96fb: am 0c0d3893: am 173de779: am b2520c7f: manual merge from froyo
Jean-Baptiste Queru [Fri, 7 May 2010 00:13:04 +0000 (17:13 -0700)]
am 551a96fb: am 0c0d3893: am 173de779: am b2520c7f: manual merge from froyo

Merge commit '551a96fbb09043734fe3622cdc49dc161486d79b' into dalvik-dev

* commit '551a96fbb09043734fe3622cdc49dc161486d79b':
  DO NOT MERGE: Rewrite the HTTP connection pool used by HttpURLConnection.

14 years agoam 206edb63: am 71c9526e: am 99632b11: manual merge from froyo
Jean-Baptiste Queru [Fri, 7 May 2010 00:09:49 +0000 (17:09 -0700)]
am 206edb63: am 71c9526e: am 99632b11: manual merge from froyo

14 years agoam 0c0d3893: am 173de779: am b2520c7f: manual merge from froyo
Jean-Baptiste Queru [Fri, 7 May 2010 00:09:47 +0000 (17:09 -0700)]
am 0c0d3893: am 173de779: am b2520c7f: manual merge from froyo