OSDN Git Service

android-x86/dalvik.git
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 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 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 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 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 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 99632b11: manual merge from froyo
Jean-Baptiste Queru [Thu, 6 May 2010 23:31:40 +0000 (16:31 -0700)]
am 99632b11: manual merge from froyo

Merge commit '99632b1107cfec56f07aa4941e770e5d449391b7' into kraken

* commit '99632b1107cfec56f07aa4941e770e5d449391b7':
  Plug leak in class initialization.

14 years agoam b2520c7f: manual merge from froyo
Jean-Baptiste Queru [Thu, 6 May 2010 23:31:38 +0000 (16:31 -0700)]
am b2520c7f: manual merge from froyo

Merge commit 'b2520c7f1348cfcb3fa9c2e039140c1addb7688a' into kraken

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

14 years agomanual merge from froyo
Jean-Baptiste Queru [Thu, 6 May 2010 23:20:19 +0000 (16:20 -0700)]
manual merge from froyo

Change-Id: Ied6d44cd7a54a62e4613b026b8ca9451630f63e1

14 years agomanual merge from froyo
Jean-Baptiste Queru [Thu, 6 May 2010 23:20:06 +0000 (16:20 -0700)]
manual merge from froyo

Change-Id: I0f7ff92c18a3d047047fd8aca04e0bda4a8c97b9

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.

Change-Id: Ib0c285ef23d58ae709be65f09efb68e73f982084

14 years agoDalvik Zip rewrite.
Andy McFadden [Fri, 23 Apr 2010 23:34:52 +0000 (16:34 -0700)]
Dalvik Zip rewrite.

Change the way zip archives are handled.  This is necessary to deal with
very large (~1GB) APK files, for which our current approach of mapping
the entire file falls over.

We now do the classic scavenger hunt for the End Of Central Directory magic
on a buffer of data read from the file, instead of a memory-mapped section.
We use what we find to create a map that covers the Central Directory only.
For most uses in the VM this is all we really need, since we just want
to check file attributes vs. the optimized DEX to see if we're out of date.

If the caller is interested in unpacking the file contents, we have to
do an additional file read to discover the size of the Local File Header
section so we can skip past it.  We also now do a file-to-file extraction
using read() calls instead of a buffer-to-file extraction on mmap()ed data.
No difference in performance (as measured by first-boot dexopt).

Since this is more of a rewrite than an update, I also took the opportunity
to change buffer size variables from "long" to "size_t", and normalized
return values to int (some were using bool, which is common in the VM but
was mixed in the zip code).  Failure messages are now all LOGW with the
word "Zip" up front (didn't want to change log tag away from "dalvikvm").

Also, removed a not-quite-right check in the "map part of a file" code,
and clarified that the file offset is absolute.

For bug 2620103.

Change-Id: I745fb15abb541376f467969ffe422222676f1e5f

14 years agoDO NOT MERGE: Rewrite the HTTP connection pool used by HttpURLConnection.
Jesse Wilson [Thu, 6 May 2010 17:54:21 +0000 (10:54 -0700)]
DO NOT MERGE: Rewrite the HTTP connection pool used by HttpURLConnection.

This started off as incremental changes, but it ended up going
far enough that it earned the "rewrite" badge.

System.getProperty() is not called for every HTTP connection.
This is slightly controversial, but the old code had to bend
over backwards to support dynamic pool changes, and it didn't
even support the case when the pool shrank but not to 0.

The new code doesn't do I/O within static synchronized blocks.
This should reduce contention described here: http://b/issue?id=2606547

Also: simpify implementation, prettier names, more focused doc.

Originally submitted to dalvik-dev.
  https://android-git.corp.google.com/g/49309

Change-Id: I815c3123838b29cd2d9b39346e5c2486e1f5a2d2

14 years agoam c2c14690: am 4751c150: Fixing bulk reads in ByteArray.MyInputStream
Jesse Wilson [Wed, 5 May 2010 21:16:14 +0000 (14:16 -0700)]
am c2c14690: am 4751c150: Fixing bulk reads in ByteArray.MyInputStream

Merge commit 'c2c146902f6258c16612b05d4b281c8a60b59898' into kraken

* commit 'c2c146902f6258c16612b05d4b281c8a60b59898':
  Fixing bulk reads in ByteArray.MyInputStream

14 years agoam 4751c150: Fixing bulk reads in ByteArray.MyInputStream
Jesse Wilson [Wed, 5 May 2010 21:14:22 +0000 (14:14 -0700)]
am 4751c150: Fixing bulk reads in ByteArray.MyInputStream

Merge commit '4751c150542ec282f6c6d58984974edec6c0a045' into froyo-plus-aosp

* commit '4751c150542ec282f6c6d58984974edec6c0a045':
  Fixing bulk reads in ByteArray.MyInputStream

14 years agoFixing bulk reads in ByteArray.MyInputStream
Jesse Wilson [Mon, 3 May 2010 22:27:11 +0000 (15:27 -0700)]
Fixing bulk reads in ByteArray.MyInputStream

This has never worked properly, but it didn't matter until recently
because neither the JDK's nor early Dalvik's DataInputStream was
exercising it. But in 2.0, Dalvik's DataInputStream prefers bulk
reads, which exercises this code when run on-device.

http://code.google.com/p/android/issues/detail?id=8115

The problem was that System.arraycopy call didn't include the start
offset in the call.

14 years agoam 78115b68: am c03da3e8: Fix breakpoint handling on switch statements.
Andy McFadden [Tue, 4 May 2010 00:09:16 +0000 (17:09 -0700)]
am 78115b68: am c03da3e8: Fix breakpoint handling on switch statements.

Merge commit '78115b6899e6aa70a3834c3a5f7df9c53765b4ee' into kraken

* commit '78115b6899e6aa70a3834c3a5f7df9c53765b4ee':
  Fix breakpoint handling on switch statements.

14 years agoam c03da3e8: Fix breakpoint handling on switch statements.
Andy McFadden [Tue, 4 May 2010 00:08:07 +0000 (17:08 -0700)]
am c03da3e8: Fix breakpoint handling on switch statements.

Merge commit 'c03da3e87a0537b211f2300d594597d84898b8f7' into froyo-plus-aosp

* commit 'c03da3e87a0537b211f2300d594597d84898b8f7':
  Fix breakpoint handling on switch statements.

14 years agoFix breakpoint handling on switch statements.
Andy McFadden [Mon, 3 May 2010 23:11:20 +0000 (16:11 -0700)]
Fix breakpoint handling on switch statements.

Some debuggers (Eclipse and IntelliJ, but not jdb) appear to set
breakpoints at all addresses associated with a given bytecode offset.
Because dx emits line number information for the data tables used
by "switch" statements, we end up setting a breakpoint on the start
of the switch data.

In the past this wasn't a problem, but now that we're using "hard"
breakpoints it's causing the magic number at the start of the table
to be overwritten.  An explict test on the magic number is causing
the intepreter to throw an InternalError.

The quick fix is to refuse to stomp on a "magic" NOP.  Assuming the
line number table is otherwise valid and doesn't point into the middle
of a multi-word instruction, this should solve the problem.  (We can
check this during verification.)

Bug 2643148.

Change-Id: Ic96947da14ea2346a67f0eb769a1c006153da448

14 years agoam cf6ab741: merge from open-source master
The Android Open Source Project [Mon, 3 May 2010 23:17:51 +0000 (16:17 -0700)]
am cf6ab741: merge from open-source master

Merge commit 'cf6ab741c2a50b61d6cf1b1617e7a908caece6dd' into kraken

* commit 'cf6ab741c2a50b61d6cf1b1617e7a908caece6dd':
  Adapt to new location of libcore
  Delete libcore, now in its own project

14 years agomerge from open-source master
The Android Open Source Project [Mon, 3 May 2010 23:16:09 +0000 (16:16 -0700)]
merge from open-source master

Change-Id: I323b3e716af939a3307189e694f4cdb83b4eda80

14 years agoAdapt to new location of libcore
Jean-Baptiste Queru [Mon, 3 May 2010 16:39:27 +0000 (09:39 -0700)]
Adapt to new location of libcore

Change-Id: Ic8106513bd8bd27ccd785f792dca5b2b48fdf9f5

14 years agoam ff1965e6: am 743fe2ce: Merge "Throw an exception in JIT\'ed code if dvmFindInterfa...
Ben Cheng [Mon, 3 May 2010 01:27:25 +0000 (18:27 -0700)]
am ff1965e6: am 743fe2ce: Merge "Throw an exception in JIT\'ed code if dvmFindInterfaceMethodInCache returns NULL" into froyo

Merge commit 'ff1965e61f4cfe0f31598945d751be2f3aa4b7f3' into kraken

* commit 'ff1965e61f4cfe0f31598945d751be2f3aa4b7f3':
  Throw an exception in JIT'ed code if dvmFindInterfaceMethodInCache returns NULL

14 years agoam 8dbde000: am 73e00c82: Merge "Fix a memory ordering bug when updating the inline...
Ben Cheng [Mon, 3 May 2010 01:27:23 +0000 (18:27 -0700)]
am 8dbde000: am 73e00c82: Merge "Fix a memory ordering bug when updating the inline cache for predicted chaining." into froyo

Merge commit '8dbde000c30b0dd60d1ff204a35a232ee916f2d8' into kraken

* commit '8dbde000c30b0dd60d1ff204a35a232ee916f2d8':
  Fix a memory ordering bug when updating the inline cache for predicted chaining.

14 years agoam 743fe2ce: Merge "Throw an exception in JIT\'ed code if dvmFindInterfaceMethodInCac...
Ben Cheng [Mon, 3 May 2010 01:25:33 +0000 (18:25 -0700)]
am 743fe2ce: Merge "Throw an exception in JIT\'ed code if dvmFindInterfaceMethodInCache returns NULL" into froyo

Merge commit '743fe2ce4915304560849a17c7625d23ec50999c' into froyo-plus-aosp

* commit '743fe2ce4915304560849a17c7625d23ec50999c':
  Throw an exception in JIT'ed code if dvmFindInterfaceMethodInCache returns NULL

14 years agoam 73e00c82: Merge "Fix a memory ordering bug when updating the inline cache for...
Ben Cheng [Mon, 3 May 2010 01:25:28 +0000 (18:25 -0700)]
am 73e00c82: Merge "Fix a memory ordering bug when updating the inline cache for predicted chaining." into froyo

Merge commit '73e00c829a82e4aec8720260989dad0a19d18c7c' into froyo-plus-aosp

* commit '73e00c829a82e4aec8720260989dad0a19d18c7c':
  Fix a memory ordering bug when updating the inline cache for predicted chaining.

14 years agoMerge "Throw an exception in JIT'ed code if dvmFindInterfaceMethodInCache returns...
Ben Cheng [Mon, 3 May 2010 01:18:48 +0000 (18:18 -0700)]
Merge "Throw an exception in JIT'ed code if dvmFindInterfaceMethodInCache returns NULL" into froyo

14 years agoMerge "Fix a memory ordering bug when updating the inline cache for predicted chainin...
Ben Cheng [Mon, 3 May 2010 01:18:38 +0000 (18:18 -0700)]
Merge "Fix a memory ordering bug when updating the inline cache for predicted chaining." into froyo

14 years agoam 0a310052: resolved conflicts for merge of f3565212 to froyo-plus-aosp
repo sync [Sun, 2 May 2010 23:11:56 +0000 (16:11 -0700)]
am 0a310052: resolved conflicts for merge of f3565212 to froyo-plus-aosp

Merge commit '0a310052e8c7e150d1b983687ca94270ca91acb4' into kraken

* commit '0a310052e8c7e150d1b983687ca94270ca91acb4':
  Backport the setFixedLengthStreamingMode fix to froyo.

14 years agoam 57cf2608: Adapt to new location of libcore
Jean-Baptiste Queru [Sun, 2 May 2010 23:11:21 +0000 (16:11 -0700)]
am 57cf2608: Adapt to new location of libcore

Merge commit '57cf2608873e13d609350bdcf33070e5cf0d15bf' into kraken

* commit '57cf2608873e13d609350bdcf33070e5cf0d15bf':
  Adapt to new location of libcore

14 years agoam 3e905b77: Delete libcore, now in its own project
Jean-Baptiste Queru [Sun, 2 May 2010 23:11:19 +0000 (16:11 -0700)]
am 3e905b77: Delete libcore, now in its own project

Merge commit '3e905b77ea5bf8c2f9276d64fc280827fc3cd1c4' into kraken

* commit '3e905b77ea5bf8c2f9276d64fc280827fc3cd1c4':
  Delete libcore, now in its own project

14 years agoThrow an exception in JIT'ed code if dvmFindInterfaceMethodInCache returns NULL
Ben Cheng [Sun, 2 May 2010 17:45:32 +0000 (10:45 -0700)]
Throw an exception in JIT'ed code if dvmFindInterfaceMethodInCache returns NULL

Bug: 2642019
Change-Id: Iec2be8f61388d99b1500bb144e56b86febe76c0b

14 years agoresolved conflicts for merge of f3565212 to froyo-plus-aosp
repo sync [Sat, 1 May 2010 19:37:06 +0000 (12:37 -0700)]
resolved conflicts for merge of f3565212 to froyo-plus-aosp

Change-Id: I5e14e57bcdac566dd8eca95c92f45503a2760b4e

14 years agoFix a memory ordering bug when updating the inline cache for predicted chaining.
Ben Cheng [Fri, 30 Apr 2010 22:14:00 +0000 (15:14 -0700)]
Fix a memory ordering bug when updating the inline cache for predicted chaining.

Also collect the statistics about fast/queued/dropped IC update. Example
output:

D/dalvikvm(   86): JIT: ICPatch: 603 fast, 6 queued; 0 dropped

Bug: 2642019

Change-Id: I8cffdc9e422189bfd94bf845bcb2cff516f37077

14 years agoDelete libcore, now in its own project
Jean-Baptiste Queru [Fri, 30 Apr 2010 20:57:27 +0000 (13:57 -0700)]
Delete libcore, now in its own project

Change-Id: Id5f98ddaeb626616cbc48112b3166403ae8d5c78

14 years agoAdapt to new location of libcore
Jean-Baptiste Queru [Fri, 30 Apr 2010 17:13:34 +0000 (10:13 -0700)]
Adapt to new location of libcore

Change-Id: I90f482f22fbac82aedbec649a72a465560c3136f

14 years agoAdapt to new location of libcore
Jean-Baptiste Queru [Fri, 30 Apr 2010 17:13:34 +0000 (10:13 -0700)]
Adapt to new location of libcore

Change-Id: I602be6c3a9df32b33526158d46b406e4196a577b

14 years agoDelete libcore, now in its own project
Jean-Baptiste Queru [Fri, 30 Apr 2010 15:10:30 +0000 (08:10 -0700)]
Delete libcore, now in its own project

Change-Id: Ibea0a93049e4fe0ae376f5b7647a41e3d548d7a9

14 years agoDelete libcore, now in its own project
Jean-Baptiste Queru [Fri, 30 Apr 2010 15:07:40 +0000 (08:07 -0700)]
Delete libcore, now in its own project

Change-Id: I6f35447116607f14805f4eaadeca4c1a88362194

14 years agoBackport the setFixedLengthStreamingMode fix to froyo.
Elliott Hughes [Fri, 30 Apr 2010 07:33:13 +0000 (00:33 -0700)]
Backport the setFixedLengthStreamingMode fix to froyo.

Bug: 2643503
Change-Id: Ia42c9407ac77721d7fec3b806135d4e9912ee8ca

14 years agoam 3e557951: am 42452494: Fix dexdump to build in Windows SDK under Linux
Raphael [Sat, 24 Apr 2010 00:21:42 +0000 (17:21 -0700)]
am 3e557951: am 42452494: Fix dexdump to build in Windows SDK under Linux

Merge commit '3e557951fa772390551d50c85ddd584e4370fb15' into kraken

* commit '3e557951fa772390551d50c85ddd584e4370fb15':
  Fix dexdump to build in Windows SDK under Linux

14 years agoam 42452494: Fix dexdump to build in Windows SDK under Linux
Raphael [Sat, 24 Apr 2010 00:14:24 +0000 (17:14 -0700)]
am 42452494: Fix dexdump to build in Windows SDK under Linux

Merge commit '4245249472f7172de80874190559f6d2ef9c3803' into froyo-plus-aosp

* commit '4245249472f7172de80874190559f6d2ef9c3803':
  Fix dexdump to build in Windows SDK under Linux

14 years agoFix dexdump to build in Windows SDK under Linux
Raphael [Tue, 13 Apr 2010 22:19:21 +0000 (15:19 -0700)]
Fix dexdump to build in Windows SDK under Linux

(Merged from master Change I0e57c81d)

14 years agoam 770379e1: am 6efd4463: Fix a deadlock in the breakpoint code.
Andy McFadden [Fri, 23 Apr 2010 20:00:17 +0000 (13:00 -0700)]
am 770379e1: am 6efd4463: Fix a deadlock in the breakpoint code.

Merge commit '770379e17e694ec6e08f1edb690a5e33ab81c684' into kraken

* commit '770379e17e694ec6e08f1edb690a5e33ab81c684':
  Fix a deadlock in the breakpoint code.

14 years agoam 6efd4463: Fix a deadlock in the breakpoint code.
Andy McFadden [Fri, 23 Apr 2010 19:55:39 +0000 (12:55 -0700)]
am 6efd4463: Fix a deadlock in the breakpoint code.

Merge commit '6efd446399ba7a9bb68bf8ddb5a458072a1381b0' into froyo-plus-aosp

* commit '6efd446399ba7a9bb68bf8ddb5a458072a1381b0':
  Fix a deadlock in the breakpoint code.

14 years agoFix a deadlock in the breakpoint code.
Andy McFadden [Fri, 23 Apr 2010 00:08:11 +0000 (17:08 -0700)]
Fix a deadlock in the breakpoint code.

In froyo we started using "hard" breakpoints, where we replace the
existing opcodes with breakpoint instructions.  This requires some
coordination to avoid confusing the verifier.  The previous approach
allowed the breakpoints to be inserted, and "undid" them while the
verifier ran; this worked, but caused us to be holding a lock for
an extended period.

The new approach just avoids altering the bytecode of unverified
classes, and then "flushes" the breakpoint set out between the time
when verification completes and class initialization starts.  This
removes the possibility of blocking with the lock held, and makes
everything much simpler.

For bug 2615063.

(cherry-pick from dalvik-dev)

Change-Id: I75f19b0cc71fc0babb50ab299c6c5a865e06c919

14 years agoam 1beb43af: merge from open-source master
The Android Open Source Project [Thu, 22 Apr 2010 20:25:29 +0000 (13:25 -0700)]
am 1beb43af: merge from open-source master

Merge commit '1beb43af9350d47016c0e3ec55c1b2d4230cae7e' into kraken

* commit '1beb43af9350d47016c0e3ec55c1b2d4230cae7e':
  Improve the implementation of countOnes function to use only 12 operations.

14 years agomerge from open-source master
The Android Open Source Project [Thu, 22 Apr 2010 19:44:36 +0000 (12:44 -0700)]
merge from open-source master

Change-Id: Ia08d4f55f5cdced2878777e0812c8cbbf26bb0d6

14 years agoam 1dd42bb9: Fix NetworkInterface on sholes/ppp.
Elliott Hughes [Wed, 21 Apr 2010 20:29:59 +0000 (13:29 -0700)]
am 1dd42bb9: Fix NetworkInterface on sholes/ppp.

Merge commit '1dd42bb9da388c55191449b848f9d82dc4673229' into kraken

* commit '1dd42bb9da388c55191449b848f9d82dc4673229':
  Fix NetworkInterface on sholes/ppp.

14 years agoFix NetworkInterface on sholes/ppp.
Elliott Hughes [Wed, 21 Apr 2010 19:48:25 +0000 (12:48 -0700)]
Fix NetworkInterface on sholes/ppp.

We need to use IFA_LOCAL to get the interface addresses; IFA_ADDRESS is the
remote address (which is usually the same as IFA_LOCAL, but not in the ppp
case).

Tested on sholes, where it fixes the test used in the bug; also tested on
passion, where it doesn't break the already-working test.

Bug: 2575983
Change-Id: Ib334a002dc099daeeb05cbc341fe233d4d11d2f7

14 years agoam 28f4d74b: Merge "Remove dangerous logging code from unlockMonitor. It is unsafe...
Carl Shapiro [Tue, 20 Apr 2010 22:58:23 +0000 (15:58 -0700)]
am 28f4d74b: Merge "Remove dangerous logging code from unlockMonitor.  It is unsafe to dereference a potentially corrupt lock word to retrieve additional information about the lock state.  This code was added to debug a transient error and has since been removed from

Merge commit '28f4d74b59e9e40278c4f1fe797d8c75f51b5326' into kraken

* commit '28f4d74b59e9e40278c4f1fe797d8c75f51b5326':
  Remove dangerous logging code from unlockMonitor.  It is unsafe to

14 years agoMerge "Remove dangerous logging code from unlockMonitor. It is unsafe to dereference...
Carl Shapiro [Tue, 20 Apr 2010 22:51:47 +0000 (15:51 -0700)]
Merge "Remove dangerous logging code from unlockMonitor.  It is unsafe to dereference a potentially corrupt lock word to retrieve additional information about the lock state.  This code was added to debug a transient error and has since been removed from other branches." into froyo

14 years agoImprove the implementation of countOnes function to use only 12 operations.
Cosmin Cojocar [Sun, 18 Apr 2010 16:25:06 +0000 (18:25 +0200)]
Improve the implementation of countOnes function to use only 12 operations.

Change-Id: I01b62606a0c87b2937572f8cb7beafc956867353

14 years agoam 8068ea8d: Update the ssl test so the client reads something from the server. This...
Huahui Wu [Tue, 20 Apr 2010 19:43:39 +0000 (12:43 -0700)]
am 8068ea8d: Update the ssl test so the client reads something from the server. This is needed when cut-through feature is needed as in b/2586347. Dr. No approved in b/issue?id=2511073 .

Merge commit '8068ea8daa37ac1e4d55c2ebd15bf9dda3d7891e' into kraken

* commit '8068ea8daa37ac1e4d55c2ebd15bf9dda3d7891e':
  Update the ssl test so the client reads something from the server.

14 years agoUpdate the ssl test so the client reads something from the server.
Huahui Wu [Mon, 19 Apr 2010 22:05:17 +0000 (18:05 -0400)]
Update the ssl test so the client reads something from the server.
This is needed when cut-through feature is needed as in b/2586347.
Dr. No approved in http://b/issue?id=2511073 .

Change-Id: Id84724873522fe0435dbda342616da02783f7d6b

14 years agoRemove dangerous logging code from unlockMonitor. It is unsafe to
Carl Shapiro [Tue, 20 Apr 2010 07:53:13 +0000 (00:53 -0700)]
Remove dangerous logging code from unlockMonitor.  It is unsafe to
dereference a potentially corrupt lock word to retrieve additional
information about the lock state.  This code was added to debug a
transient error and has since been removed from other branches.

Change-Id: I5aabae531c52532929e8dbb71bdcc6cb7cee64f9

14 years agoam b8fcf57f: Fix remaining small issues with the lock sampling.
Carl Shapiro [Tue, 20 Apr 2010 07:21:58 +0000 (00:21 -0700)]
am b8fcf57f: Fix remaining small issues with the lock sampling.

Merge commit 'b8fcf57f13b4d37950cfbd72a6af401941d7bdd8' into kraken

* commit 'b8fcf57f13b4d37950cfbd72a6af401941d7bdd8':
  Fix remaining small issues with the lock sampling.

14 years agoFix remaining small issues with the lock sampling.
Carl Shapiro [Sat, 17 Apr 2010 00:33:15 +0000 (17:33 -0700)]
Fix remaining small issues with the lock sampling.

* Eliminate the now unused lockprofsample flag.  The sample percentage
  has been a function of the wait time an threshold since the previous
  change.

* Eliminate some trailing whitespace that creeped into the previous
  change.

* Eliminate the trailing newline from the event buffer.  Because the
  buffer pointer was not incremented this character was not seen in
  the event log anyway.

* Document the lockProfThreshold global.

Change-Id: Ia1c1fcf862d76f5631601e05e7941e5171fab097

14 years agoam af69cf8d: Fix several issues with the lock sampling code. This change obsoletes...
Carl Shapiro [Sat, 17 Apr 2010 01:19:00 +0000 (18:19 -0700)]
am af69cf8d: Fix several issues with the lock sampling code.  This change obsoletes the lockProfSample flag.

Merge commit 'af69cf8d062a42300852ddee6bcb9f189f5a1b83' into kraken

* commit 'af69cf8d062a42300852ddee6bcb9f189f5a1b83':
  Fix several issues with the lock sampling code.  This change obsoletes

14 years agoFix several issues with the lock sampling code. This change obsoletes
Carl Shapiro [Sat, 17 Apr 2010 00:33:15 +0000 (17:33 -0700)]
Fix several issues with the lock sampling code.  This change obsoletes
the lockProfSample flag.

Change-Id: Idb1846fc3db4ff73678a0dae46aabbb5dbb8b957

14 years agoam 6b4ba58e: Add a mechanism to long a sample of long running lock acquisitions.
Carl Shapiro [Thu, 15 Apr 2010 22:32:07 +0000 (15:32 -0700)]
am 6b4ba58e: Add a mechanism to long a sample of long running lock acquisitions.

Merge commit '6b4ba58ec937bfacba626112c46ebd003efbed21' into kraken

* commit '6b4ba58ec937bfacba626112c46ebd003efbed21':
  Add a mechanism to long a sample of long running lock acquisitions.

14 years agoAdd a mechanism to long a sample of long running lock acquisitions.
Carl Shapiro [Fri, 9 Apr 2010 22:03:33 +0000 (15:03 -0700)]
Add a mechanism to long a sample of long running lock acquisitions.

14 years agoam ddc0d4c2: (-s ours) DO NOT MERGE. Suppressing tests that fail in CTS\' test runner.
Jesse Wilson [Thu, 15 Apr 2010 00:08:44 +0000 (17:08 -0700)]
am ddc0d4c2: (-s ours) DO NOT MERGE. Suppressing tests that fail in CTS\' test runner.

Merge commit 'ddc0d4c2f8d3fea4ddaf6e611ffd73a1169447e8' into kraken

* commit 'ddc0d4c2f8d3fea4ddaf6e611ffd73a1169447e8':
  DO NOT MERGE. Suppressing tests that fail in CTS' test runner.

14 years agoDO NOT MERGE. Suppressing tests that fail in CTS' test runner.
Jesse Wilson [Wed, 14 Apr 2010 21:43:12 +0000 (14:43 -0700)]
DO NOT MERGE. Suppressing tests that fail in CTS' test runner.

These tests have been verified to work successfully in run-core-tests.
We plan on unifying CTS and Dalvik's test running infrastructure in this
quarter so that we don't need such unfortunate hacks.

Test failures: http://b/issue?id=2564250
Fix test runner: http://b/issue?id=2215226

Change-Id: I3df2f4de10705dc470e397da2d0f014141573da1

14 years agoFixing PipedInputStreamTest to fill the buffer before dying on a dead reader.
Jesse Wilson [Wed, 14 Apr 2010 01:02:47 +0000 (18:02 -0700)]
Fixing PipedInputStreamTest to fill the buffer before dying on a dead reader.

Change-Id: Ie34a8bec7b2a34d2933225d6d4e04e0643dbcf99

14 years agoFix SSL_shutdown error reporting to print a proper error instead of "Ok"
Brian Carlstrom [Sat, 10 Apr 2010 00:49:11 +0000 (17:49 -0700)]
Fix SSL_shutdown error reporting to print a proper error instead of "Ok"

There are other problematic error reporting cases to be fixed later, but this one seems to be the frequently occuring.

Change-Id: Ia5910cffb60cc694066be03d43ac1bb7eab47357

14 years agoMerge "Adding support for hash '#' comments to our JSON parser." into froyo
Jesse Wilson [Tue, 6 Apr 2010 22:54:01 +0000 (15:54 -0700)]
Merge "Adding support for hash '#' comments to our JSON parser." into froyo

14 years agoAdding support for hash '#' comments to our JSON parser.
Jesse Wilson [Tue, 6 Apr 2010 21:16:28 +0000 (14:16 -0700)]
Adding support for hash '#' comments to our JSON parser.

Neither the JSON RFC nor the documentation of Crockford's
implementation mention these comments, but somehow the
old parser used to support these. And so we shall also.

See bug 2571423.

Change-Id: I77d64c5ec53278d8df5fe1873404f1241320504b

14 years agoMerge "Trivial doc change: froyo is 2.2." into froyo
Andy McFadden [Tue, 6 Apr 2010 21:23:37 +0000 (14:23 -0700)]
Merge "Trivial doc change: froyo is 2.2." into froyo

14 years agoTrivial doc change: froyo is 2.2.
Andy McFadden [Tue, 6 Apr 2010 20:45:38 +0000 (13:45 -0700)]
Trivial doc change: froyo is 2.2.

Change-Id: Icce3770dd318ec8853d5120c13a85656ed1171ea

14 years agoMerge "Froyo InputStream.available documentation improvement." into froyo
Elliott Hughes [Mon, 5 Apr 2010 23:13:54 +0000 (16:13 -0700)]
Merge "Froyo InputStream.available documentation improvement." into froyo

14 years agoFroyo InputStream.available documentation improvement.
Elliott Hughes [Mon, 5 Apr 2010 18:33:58 +0000 (11:33 -0700)]
Froyo InputStream.available documentation improvement.

This method causes a lot of confusion, and we can do a lot better. (Ideally,
the API would either not exist or be something like "public boolean ready()".)

I've removed poor-quality documentation overrides too, so the full
documentation is visible in most places. (InflaterInputStream is an obvious
exception.)

Also, to a lesser extent, improve the InputStream.skip documentation.

Change-Id: I6d6cd788e6a32ad4a2613d1e381610f1ad8575fe

14 years agoAdded a note about android:vmSafeMode.
Andy McFadden [Mon, 5 Apr 2010 17:07:30 +0000 (10:07 -0700)]
Added a note about android:vmSafeMode.

Seems like a good thing to note here, along with the system properties that
accomplish the same thing system-wide.

(This is a minor documentation change only.)

Change-Id: Ib9adbd612d662fd2da3a02f49e730040fba8a7f3

14 years agoClean up the codegen for invoking helper callout functions.
Ben Cheng [Fri, 2 Apr 2010 22:04:53 +0000 (15:04 -0700)]
Clean up the codegen for invoking helper callout functions.

All invoked functions are documented in compiler/codegen/arm/CalloutHelper.h
Bug: 2567981

Change-Id: Ia7cd4107272df1b0b5588fbcc0aafcc6d0723d60

14 years agoRemove JSON License from NOTICE file
Brian Carlstrom [Fri, 2 Apr 2010 21:40:07 +0000 (14:40 -0700)]
Remove JSON License from NOTICE file

Change-Id: Ie4426f8e33ddef42916e88adeaf672714212d3a3

14 years agoMerge "Accept the "-Xjitdisableopt" flag as advertised." into froyo
Ben Cheng [Thu, 1 Apr 2010 20:32:30 +0000 (13:32 -0700)]
Merge "Accept the "-Xjitdisableopt" flag as advertised." into froyo

14 years agoAccept the "-Xjitdisableopt" flag as advertised.
Ben Cheng [Thu, 1 Apr 2010 20:26:54 +0000 (13:26 -0700)]
Accept the "-Xjitdisableopt" flag as advertised.

Bug: 2542212
Change-Id: I6819bbbaf43ccb9a1e35cc576cfd6e5440b9578b

14 years agoFix a race condition in JIT state refresh under debugging / misc code cleanup.
Ben Cheng [Wed, 31 Mar 2010 18:59:18 +0000 (11:59 -0700)]
Fix a race condition in JIT state refresh under debugging / misc code cleanup.

Bug: 2561283
Change-Id: I9fd94928f3e661de97098808340ea92b28cafa07

14 years agoMerge "Fix misuse of ALLOC_DONT_TRACK." into froyo
Andy McFadden [Wed, 31 Mar 2010 15:43:28 +0000 (08:43 -0700)]
Merge "Fix misuse of ALLOC_DONT_TRACK." into froyo

14 years agoRemove debug message from OpenSSL JNI code
Brian Carlstrom [Tue, 30 Mar 2010 23:28:48 +0000 (16:28 -0700)]
Remove debug message from OpenSSL JNI code

Change-Id: I70c68087b7d109634eb3240dca1f27e6f20d3da6

14 years agoFix misuse of ALLOC_DONT_TRACK.
Andy McFadden [Tue, 30 Mar 2010 22:49:07 +0000 (15:49 -0700)]
Fix misuse of ALLOC_DONT_TRACK.

The internal String creation function doesn't allow ALLOC_DONT_TRACK.
This changes the call to use ALLOC_DEFAULT and then explicitly release
the tracked allocation.

For bug 2558142.

Change-Id: I57dfa4824578c3a3a33f6836b75f51391cc73746

14 years agoAdd an @KnownFailure annotation.
Elliott Hughes [Tue, 30 Mar 2010 22:18:26 +0000 (15:18 -0700)]
Add an @KnownFailure annotation.

Bug: 2489458
Change-Id: Ib1121c6190b63baae8dbc6a8a598c3f5a510cfaf

14 years agoFix for 2542488 JIT codegen bug with overlapping wide operands
Bill Buzbee [Sat, 27 Mar 2010 17:58:03 +0000 (10:58 -0700)]
Fix for 2542488 JIT codegen bug with overlapping wide operands

Change-Id: I2f31492f68cb753f76dd664cd6b0a52d7d32de4c

14 years agoImprove JIT self verifier test coverage to follow single-step instructions.
Ben Cheng [Sat, 27 Mar 2010 00:45:28 +0000 (17:45 -0700)]
Improve JIT self verifier test coverage to follow single-step instructions.

Bug: 2549326
Change-Id: I01412d4aac1379b61c90fe6e59c534b33be93f66

14 years agoMerge "Fixing tests to handle changes in our behaviour since DOM 3." into froyo
Jesse Wilson [Fri, 26 Mar 2010 22:21:11 +0000 (15:21 -0700)]
Merge "Fixing tests to handle changes in our behaviour since DOM 3." into froyo

14 years agoSuppressing additional tests that fail in Froyo.
Jesse Wilson [Fri, 26 Mar 2010 21:49:30 +0000 (14:49 -0700)]
Suppressing additional tests that fail in Froyo.

Our File class doesn't do SecurityManager checks at the same time as it
did previously.

We added a failing logging test but not the fix.

We moved the SQL drivers around, causing some SQL tests to fail.

A new logging test doesn't load its resources using the safe pattern.

Change-Id: I34ab81e4001969aa536f61a89c277ae2b879d49d

14 years agoFixing tests to handle changes in our behaviour since DOM 3.
Jesse Wilson [Fri, 26 Mar 2010 21:03:36 +0000 (14:03 -0700)]
Fixing tests to handle changes in our behaviour since DOM 3.

Our exception priority has changed for DOM attributes. We
previously used to throw DOMExceptions with namespace error
codes and now throw DOMExceptions with character error codes
when the attribute name is malformed. This caused changes to
many tests.

Another notable behaviour change is that we now supply the
qname (like the RI) where previously we did not. It is optional,
but we now include it for RI-consistency.

Yet another behaviour change is that we don't look at System
properties when choosing a SAX implementation. This simplifies
our internals significantly. End users who want an alternative
SAX implementation should construct it manually.

Also adding @KnownFailure tags for new tests that we have
never yet passed.

Change-Id: I6f81bedd7c2a0867086dc507b3220c2b07c4d3d3

14 years agoUse correct resource flags for Dalvik ld/st instructions to enable code motion.
Ben Cheng [Thu, 25 Mar 2010 23:16:02 +0000 (16:16 -0700)]
Use correct resource flags for Dalvik ld/st instructions to enable code motion.

Change-Id: I9b371af4150b6245c0ff59eea63d83406edbbcee

14 years agoTest and document our handling of nulls with getString().
Jesse Wilson [Thu, 25 Mar 2010 20:31:43 +0000 (13:31 -0700)]
Test and document our handling of nulls with getString().

Our behaviour is consistent with Crockford's.

The test confirms that the behaviour is consistent with the report
of that bug, which the submitter claims is not how it should behave.
http://code.google.com/p/android/issues/detail?id=7257

Change-Id: Ibace4bd995e3cbc8fb6c9dc509f8f4491865a647

14 years agoMerge "Jit: Fix for 2542488 JIT codegen bug with overlapping wide operands"
Bill Buzbee [Thu, 25 Mar 2010 20:07:45 +0000 (13:07 -0700)]
Merge "Jit: Fix for 2542488 JIT codegen bug with overlapping wide operands"

14 years agoJit: Fix for 2542488 JIT codegen bug with overlapping wide operands
Bill Buzbee [Thu, 25 Mar 2010 17:38:34 +0000 (10:38 -0700)]
Jit: Fix for 2542488 JIT codegen bug with overlapping wide operands

Change-Id: I7b922e223fe1f5242d1f3db1fa18f54aaed725af

14 years agoFix java.util.Random's constructors.
Elliott Hughes [Thu, 25 Mar 2010 06:38:48 +0000 (23:38 -0700)]
Fix java.util.Random's constructors.

Subclasses rely on having their overridden setSeed called by Random's
constructors, and the RI actually documents this behavior. (The
documentation even changed between Java 5 and Java 6 to make it _more_
explicit.)

This patch keeps that part of I6239d93bb46876ef1c4a5e155a6dc1ac6fab4eae
that improved our randomness, but reverts the attempt to fix Random's
uncouth behavior.

Also a regression test so we don't try to fix Random again in future.

Bug: 2502231
Change-Id: Ieea1009145c74eac9475c0cd5066dabad20eb114

14 years agoMerge "Don't leak memory on failed pipe or mutex init"
Kenny Root [Thu, 25 Mar 2010 00:07:15 +0000 (17:07 -0700)]
Merge "Don't leak memory on failed pipe or mutex init"

14 years agoDon't leak memory on failed pipe or mutex init
Kenny Root [Thu, 25 Mar 2010 00:01:22 +0000 (17:01 -0700)]
Don't leak memory on failed pipe or mutex init

SSL allocation might fail on pipe or mutex creation, so free allocated
memory when that happens.

Change-Id: Ibe3813cb652db1e880e3acf0dc1fa37fbe0ad455

14 years agoMerge "Fix for the JIT blocking mode plus some code cleanup."
Ben Cheng [Wed, 24 Mar 2010 22:49:50 +0000 (15:49 -0700)]
Merge "Fix for the JIT blocking mode plus some code cleanup."