OSDN Git Service
Mathieu Chartier [Wed, 14 Oct 2015 18:05:38 +0000 (18:05 +0000)]
Merge "Do not attempt to unregister null oat files"
Mathieu Chartier [Wed, 14 Oct 2015 17:58:41 +0000 (10:58 -0700)]
Do not attempt to unregister null oat files
The oat file in the DexFile array may be null if we are running
without dex2oat.
Bug:
22720414
Change-Id: Ie1014b740caa77c3484a1671f29edb42bcc746c0
Vladimir Marko [Wed, 14 Oct 2015 17:21:56 +0000 (17:21 +0000)]
Merge "X86 jump tables for PackedSwitch"
Vladimir Marko [Wed, 14 Oct 2015 17:19:09 +0000 (17:19 +0000)]
Merge "X86_64 jump tables for PackedSwitch"
Mark Mendell [Fri, 18 Sep 2015 18:10:29 +0000 (14:10 -0400)]
X86 jump tables for PackedSwitch
Implement X86PackedSwitch using a jump table of offsets to blocks. The
X86PackedSwitch version just adds an input to address the constant area.
Change-Id: Id2752a1ee79222493040c6fd0e59aee9a544b76a
Bug:
21119474
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Mark Mendell [Fri, 18 Sep 2015 17:36:07 +0000 (13:36 -0400)]
X86_64 jump tables for PackedSwitch
Implement PackedSwitch using a jump table of offsets to blocks.
Bug:
24092914
Bug:
21119474
Change-Id: I83430086c03ef728d30d79b4022607e9245ef98f
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Vladimir Marko [Wed, 14 Oct 2015 11:34:02 +0000 (11:34 +0000)]
Merge "Improve Thumb2 bitwise operations."
Vladimir Marko [Mon, 14 Sep 2015 14:13:26 +0000 (15:13 +0100)]
Improve Thumb2 bitwise operations.
Allow embedding constants in AND, ORR, EOR. Add ORN to
assembler, use BIC and ORN for AND and ORR when needed.
Change-Id: I24d69ecc7ce6992b9c5eb7a313ff47a942de9661
Nicolas Geoffray [Wed, 14 Oct 2015 10:48:44 +0000 (10:48 +0000)]
Merge "Fix braino in arm assembler."
Nicolas Geoffray [Wed, 14 Oct 2015 10:44:23 +0000 (11:44 +0100)]
Fix braino in arm assembler.
Method is pure virtual. Caught by clang.
Change-Id: I061666ec919702fa7c30e9a98161cad56a9c864d
Nicolas Geoffray [Wed, 14 Oct 2015 09:42:04 +0000 (09:42 +0000)]
Merge "Fix MIPS64 boot"
Goran Jakovljevic [Wed, 14 Oct 2015 09:23:48 +0000 (11:23 +0200)]
Fix MIPS64 boot
Return register in FieldAccessCallingConventionMIPS64 was A0,
but it should be V0.
With this change, the system server doesn't crash.
Change-Id: Id52f684658d235fd001d9784145f4ea5ed2938b6
Nicolas Geoffray [Wed, 14 Oct 2015 09:01:21 +0000 (09:01 +0000)]
Merge "Implement System.arraycopy intrinsic for arm."
Nicolas Geoffray [Wed, 14 Oct 2015 08:33:56 +0000 (08:33 +0000)]
Merge "Disable tests requiring python3 for dist builds."
Nicolas Geoffray [Wed, 14 Oct 2015 08:27:09 +0000 (09:27 +0100)]
Disable tests requiring python3 for dist builds.
go/art-buildbot bots do not have python3.
Change-Id: Id17a56bec0a12529b46a9fbaaefc59195c63a50a
Mathieu Chartier [Tue, 13 Oct 2015 23:49:00 +0000 (23:49 +0000)]
Merge "Add some missing comments"
Mathieu Chartier [Tue, 13 Oct 2015 23:38:52 +0000 (16:38 -0700)]
Add some missing comments
Change-Id: I5ff393dfe082559887e9beed1fdb359035c5d3aa
Alex Light [Tue, 13 Oct 2015 21:02:28 +0000 (21:02 +0000)]
Merge "Add initial default method support to Art"
Mathieu Chartier [Tue, 13 Oct 2015 20:45:36 +0000 (20:45 +0000)]
Merge "Revert "Revert "Unload oat files"""
Mathieu Chartier [Tue, 13 Oct 2015 14:59:34 +0000 (07:59 -0700)]
Revert "Revert "Unload oat files""
Fixed a race where two threads calling OatFile::Open could both use
dlopen on the host.
Bug:
22720414
This reverts commit
72da5e7461fec3b1e116050f2e6f233efb9c54f3.
Change-Id: I1636045b724944d2a09417527280784967957095
Alex Light [Mon, 31 Aug 2015 20:17:42 +0000 (13:17 -0700)]
Add initial default method support to Art
This commit starts the process of adding default methods and their
associated pieces to ART.
This adds full support for calling default methods using
invoke-interface and invoke-virtual on objects implementing the
interfaces. Verifier is changed to allow this when the runtime is
started with -Xexperimental:default-methods.
This also adds support for defining and calling static methods on
interface classes with invoke-static.
Directly calling overridden default methods using invoke-super is not
yet supported.
This adds 5 new run-tests for this functionality.
Bug:
24618811
Change-Id: I35ca800d99d3329348b277789b70ceeeba6e7f03
Nicolas Geoffray [Tue, 13 Oct 2015 18:17:02 +0000 (18:17 +0000)]
Merge "Fix braino in ArtCode refactoring."
Nicolas Geoffray [Tue, 13 Oct 2015 18:14:15 +0000 (19:14 +0100)]
Fix braino in ArtCode refactoring.
AssertPcIsWithinQuickCode is tricky. Will clean-up in
next changes.
Change-Id: Ie97d3d4a54cb568ea33e645e7d6d9a0c337e9c6a
Andreas Gampe [Tue, 13 Oct 2015 16:40:37 +0000 (16:40 +0000)]
Merge "ART: Rewrite stub-test inline assembly"
Andreas Gampe [Mon, 12 Oct 2015 21:29:38 +0000 (14:29 -0700)]
ART: Rewrite stub-test inline assembly
Rewrite the x86 and x86-64 inline assembly to spill and restore
registers manually. GCC outright rejected clobbering some registers,
but Clang silently ignored the problematic cases, which breaks,
for example, in ASAN builds.
Bug:
24294564
Change-Id: Iab45da0d6082ad77435e75bdc41d547619443d47
Nicolas Geoffray [Tue, 13 Oct 2015 08:48:30 +0000 (09:48 +0100)]
Implement System.arraycopy intrinsic for arm.
Change-Id: I58ae1af5103e281fe59fbe022b718d6d8f293a5e
Mathieu Chartier [Tue, 13 Oct 2015 15:28:26 +0000 (15:28 +0000)]
Merge "Fix moving GC bugs in MonitorEnter and MonitorExit"
Mathieu Chartier [Mon, 12 Oct 2015 23:18:20 +0000 (16:18 -0700)]
Fix moving GC bugs in MonitorEnter and MonitorExit
Fixes test 088 with gcstress mode.
Change-Id: Iaeb91f62f22233e403e97e954bfdc8dc367e63c8
Vladimir Marko [Tue, 13 Oct 2015 14:45:14 +0000 (14:45 +0000)]
Merge "Fix mips64 build: Add missing "="."
Vladimir Marko [Tue, 13 Oct 2015 14:28:24 +0000 (15:28 +0100)]
Fix mips64 build: Add missing "=".
Change-Id: I457732945ae8f554ed49943c913b8c4fcc2a4d18
Calin Juravle [Tue, 13 Oct 2015 13:12:35 +0000 (13:12 +0000)]
Merge "Revert "optimizing: propagate type information of arguments""
Calin Juravle [Tue, 13 Oct 2015 13:10:33 +0000 (13:10 +0000)]
Revert "optimizing: propagate type information of arguments"
This reverts commit
2c1ffc3a06e9ed0411e29e7dc2558b5d657ede7a.
Change-Id: I3291070c373e661fa578f5a38becbb5a502baf94
Nicolas Geoffray [Tue, 13 Oct 2015 12:33:02 +0000 (12:33 +0000)]
Merge "Add an abstraction over a compiled code."
Nicolas Geoffray [Mon, 12 Oct 2015 17:11:10 +0000 (18:11 +0100)]
Add an abstraction over a compiled code.
That's just step 1, moving code-related functions of ArtMethod to
another class. That class is only a wrapper on an ArtMethod, but will
be changed to be a wrapper around compiled code.
Change-Id: I6f35fc06d37220558dff61691e51ae20066b0dd6
Sebastien Hertz [Tue, 13 Oct 2015 09:58:38 +0000 (09:58 +0000)]
Merge "Revert "Revert "Fix instrumentation frame check with inlining"""
Nicolas Geoffray [Tue, 13 Oct 2015 09:57:26 +0000 (09:57 +0000)]
Merge "Change JNI calling convention for mips"
Nicolas Geoffray [Tue, 13 Oct 2015 07:54:16 +0000 (07:54 +0000)]
Merge "MIPS: Assemblers changes needed for optimizing compiler"
Nicolas Geoffray [Tue, 13 Oct 2015 07:26:59 +0000 (07:26 +0000)]
Merge "Revert "Unload oat files""
Nicolas Geoffray [Tue, 13 Oct 2015 07:26:45 +0000 (07:26 +0000)]
Revert "Unload oat files"
Tentative, will monitor bots if flakiness is fixed.
Bug:
22720414
This reverts commit
18656fefc7e68e2549a8fa93455074d359d1efa8.
Change-Id: I53b645b73207ccd21cad6ddac1de483bcc158794
Mathieu Chartier [Mon, 12 Oct 2015 22:53:00 +0000 (22:53 +0000)]
Merge "Avoid visiting find array class cache as roots"
Mathieu Chartier [Mon, 12 Oct 2015 22:06:16 +0000 (15:06 -0700)]
Avoid visiting find array class cache as roots
If we visit the find array class cache as roots it will prevent
unloading for any array classes in the cache. This is not ideal
since it may take a long time for the entries to get replaced.
Also added a missed exception check in getDeclaredClasses.
Bug:
22720414
Change-Id: Id34557fd034b3e3967ef629301ee251931937849
Richard Uhler [Mon, 12 Oct 2015 20:01:46 +0000 (20:01 +0000)]
Merge "Pay attention to string offset and count fields."
Mathieu Chartier [Mon, 12 Oct 2015 18:26:42 +0000 (18:26 +0000)]
Merge "Unload oat files"
Mathieu Chartier [Fri, 9 Oct 2015 23:05:31 +0000 (16:05 -0700)]
Unload oat files
Unregister and delete oat file when we call DexFile.closeDexFile if
all of the dex files are no longer in use. We store the oat file as
the first element of the dex files array (cookie).
Added a test that reads the proc maps to ensure there are no
unload-ex maps. Also some clean up.
Bug:
22720414
Change-Id: I52ab84562d1045e94b9a37aafe57609a14f188f7
Andreas Gampe [Mon, 12 Oct 2015 18:02:51 +0000 (18:02 +0000)]
Merge "ART: Lock counting in the interpreter"
Calin Juravle [Mon, 12 Oct 2015 17:03:32 +0000 (17:03 +0000)]
Merge "optimizing: propagate type information of arguments"
Calin Juravle [Mon, 12 Oct 2015 14:01:58 +0000 (15:01 +0100)]
optimizing: propagate type information of arguments
This helps inlining and type check elimination.
e.g:
void foo(ArrayList a) {
int size = a.size(); // this can be inlined now.
}
Change-Id: I3ffeaa79d9df444aa19511c83c544cb5f9d9ab20
Sebastien Hertz [Mon, 12 Oct 2015 13:40:10 +0000 (13:40 +0000)]
Revert "Revert "Fix instrumentation frame check with inlining""
This reverts commit
e3e2fe5ecc16184ba91018adb3bfbec1c5880c29.
Fixes an incorrect CHECK_GT into CHECK_GE in method
Instrumentation::ComputeFrameId.
Bug:
22519499
Change-Id: I0a11d378f3baa728b9176ff086fe4b835b30bb46
Vladimir Marko [Mon, 12 Oct 2015 13:34:51 +0000 (13:34 +0000)]
Merge "Optimizing: Avoid string init register set copy for debuggable."
Vladimir Marko [Mon, 12 Oct 2015 13:34:34 +0000 (13:34 +0000)]
Merge "Optimizing: Move GraphChecker memory allocations to arena."
Nicolas Geoffray [Mon, 12 Oct 2015 12:47:06 +0000 (12:47 +0000)]
Merge "Intrinsify System.arraycopy."
Calin Juravle [Mon, 12 Oct 2015 12:25:47 +0000 (12:25 +0000)]
Merge "Assert that referrers class should not need access check."
Vladimir Marko [Mon, 12 Oct 2015 09:38:28 +0000 (10:38 +0100)]
Optimizing: Move GraphChecker memory allocations to arena.
Bug:
18120045
Change-Id: I3934158e6ea4868d9baa1dfcc53b603ca6c521e2
Vladimir Marko [Mon, 12 Oct 2015 11:45:52 +0000 (12:45 +0100)]
Optimizing: Avoid string init register set copy for debuggable.
Change-Id: I9c0d2e1353c68129db06d53a190a015710e4fd0d
Calin Juravle [Wed, 7 Oct 2015 17:55:43 +0000 (18:55 +0100)]
Assert that referrers class should not need access check.
Change-Id: Ia682befdb0dc665f74c0f96454cc007304ff2397
Nicolas Geoffray [Mon, 12 Oct 2015 11:20:55 +0000 (11:20 +0000)]
Merge "Revert "Fix instrumentation frame check with inlining""
Nicolas Geoffray [Mon, 12 Oct 2015 11:20:24 +0000 (11:20 +0000)]
Revert "Fix instrumentation frame check with inlining"
Times out on some run-tests.
Bug:
22519499
This reverts commit
3079e28b00accd19aa1153929fb00497d00956d9.
Change-Id: I4c612a5af20e4481eb9865f90abd429f4a40ce57
Nicolas Geoffray [Tue, 6 Oct 2015 10:45:02 +0000 (11:45 +0100)]
Intrinsify System.arraycopy.
Currently on x64, will do the other architectures in
different changes.
Change-Id: I15fbbadb450dd21787809759a8b14b21b1e42624
Sebastien Hertz [Mon, 12 Oct 2015 07:07:29 +0000 (07:07 +0000)]
Merge "Fix instrumentation frame check with inlining"
Andreas Gampe [Fri, 28 Aug 2015 00:41:47 +0000 (17:41 -0700)]
ART: Lock counting in the interpreter
To support structured locking when balanced-locking verification
failed, count lock and unlock operations in the verifier.
Bug:
23502994
Change-Id: I2bb915da6e3d43c49723a943b42d4d5a7c939aa1
Mathieu Chartier [Fri, 9 Oct 2015 20:07:38 +0000 (20:07 +0000)]
Merge "Add OatFileManager"
Mathieu Chartier [Wed, 7 Oct 2015 18:44:05 +0000 (11:44 -0700)]
Add OatFileManager
Takes over a large amount of functionality from the class linker.
Changed OatFile to loading the same OatFile multiple times. This is
required for unloading OatFiles and moving dex caches to BSS since
these require a different OatFile for each dex cache and class
loader.
Bug:
22720414
Change-Id: I0321096723a294dc72949f21e66da82727b512fc
Calin Juravle [Fri, 9 Oct 2015 13:35:35 +0000 (13:35 +0000)]
Merge "Add test to check that unverified methods are not inlined."
Calin Juravle [Fri, 9 Oct 2015 13:35:23 +0000 (13:35 +0000)]
Merge "Add a clarifying comment on HLoadClass::InstructionDataEquals."
Calin Juravle [Fri, 9 Oct 2015 13:35:06 +0000 (13:35 +0000)]
Merge "Don't check for optimizing test marker on unsupported ISAs."
Calin Juravle [Thu, 8 Oct 2015 16:31:00 +0000 (17:31 +0100)]
Add test to check that unverified methods are not inlined.
Change-Id: I4b91d863d871be2419d9558b3d19c53cba4f6e2d
Calin Juravle [Thu, 8 Oct 2015 15:48:31 +0000 (16:48 +0100)]
Add a clarifying comment on HLoadClass::InstructionDataEquals.
Change-Id: I4c298a453f03cde9d32fe43aff86886835af16fe
Calin Juravle [Fri, 9 Oct 2015 11:03:24 +0000 (12:03 +0100)]
Don't check for optimizing test marker on unsupported ISAs.
Change-Id: I39b31e770f4a9f1f5806cc4b28009e2f1908ad43
Vladimir Marko [Fri, 9 Oct 2015 12:23:08 +0000 (12:23 +0000)]
Merge "ART: Use arena allocator with HashSet/HashMap."
Vladimir Marko [Mon, 5 Oct 2015 19:34:42 +0000 (20:34 +0100)]
ART: Use arena allocator with HashSet/HashMap.
Allow passing ArenaAllocatorAdapter (or any other allocator)
to HashSet/HashMap and create appropriate Arena- aliases.
Use the ArenaHashMap in StackMapsStream.
Update arena allocator adapters' construct()/destroy() to
C++11 std::allocator<> API.
Change-Id: I18544f718f84c6d6580228dd35297daf7f6afb5e
Andreas Gampe [Fri, 9 Oct 2015 03:06:37 +0000 (03:06 +0000)]
Merge "ART: Do not abort on exception in CreatePeer"
Chih-hung Hsieh [Thu, 8 Oct 2015 22:25:50 +0000 (22:25 +0000)]
Merge "Revert "Disable clang optimization to boot up on arm64.""
Chih-hung Hsieh [Thu, 8 Oct 2015 21:00:10 +0000 (21:00 +0000)]
Revert "Disable clang optimization to boot up on arm64."
This reverts commit
1675f2c5581c7b0b83c8823e2b4eb0ec62b28b7f.
With latest Android source, now we can boot up without this workaround.
BUG:
19180814
Change-Id: I8a7852573856dbbe10a5f4823f7261b8ecc7490c
Andreas Gampe [Thu, 1 Oct 2015 23:47:26 +0000 (16:47 -0700)]
ART: Do not abort on exception in CreatePeer
Different parts of CreatePeer may throw an exception, especially
the Thread constructor. Do not abort in such a case, but return
and report a failure to attach/create a thread.
Bug:
24200698
(cherry picked from commit
2a196784553f4fd0c0f7d4b8aac87281db3a4748)
Change-Id: I06f2c997f0451c71f791d1f12bea6f8ee65e8ab2
Vladimir Marko [Thu, 8 Oct 2015 18:09:39 +0000 (18:09 +0000)]
Merge "ART: Do not include endian.h on Mac."
Vladimir Marko [Thu, 8 Oct 2015 18:07:04 +0000 (19:07 +0100)]
ART: Do not include endian.h on Mac.
Change-Id: I1bb28bd49bd1847c45e93bf2b06c643be6e09926
Vladimir Marko [Thu, 8 Oct 2015 15:47:08 +0000 (15:47 +0000)]
Merge "Add DCHECKs to ArenaVector and ScopedArenaVector."
Calin Juravle [Thu, 8 Oct 2015 13:59:41 +0000 (13:59 +0000)]
Merge "Make sure classes with different access checks are not GVN-ed"
Vladimir Marko [Thu, 8 Oct 2015 13:23:57 +0000 (13:23 +0000)]
Merge "Optimizing: Clean up after tagging arena allocations."
Calin Juravle [Wed, 7 Oct 2015 17:55:43 +0000 (18:55 +0100)]
Make sure classes with different access checks are not GVN-ed
Change-Id: I89f72fef3be35a4dd9585d97d03a3150386e0891
David Brazdil [Thu, 8 Oct 2015 11:38:25 +0000 (11:38 +0000)]
Merge "Mark a new Checker test broken for MIPS32"
David Brazdil [Thu, 8 Oct 2015 11:37:25 +0000 (12:37 +0100)]
Mark a new Checker test broken for MIPS32
Change-Id: I6ecf41774326ad42d0b7c91f7bfad8047ce41260
David Brazdil [Thu, 8 Oct 2015 11:21:26 +0000 (11:21 +0000)]
Merge "ART: Checker tests for --debuggable"
David Brazdil [Thu, 8 Oct 2015 10:35:32 +0000 (11:35 +0100)]
ART: Checker tests for --debuggable
Checker was disabled for --debuggable because the code was not compiled
with Optimizing. Now that it is, we might want to write Checker tests
only for this mode. With this patch, CHECK-START(-ARCH)-DEBUGGABLE
tests will only be invoked on output of debuggable compilation.
Existing CHECK-START(-ARCH) tests will not be invoked.
Change-Id: I00c864f77b038af913d0d22ba7cf5655687f7c7c
Vladimir Marko [Wed, 30 Sep 2015 12:32:31 +0000 (13:32 +0100)]
Optimizing: Clean up after tagging arena allocations.
Change-Id: Id6ee1fe44c4c57d373db7a39530f29a5ca9aee18
Vladimir Marko [Thu, 1 Oct 2015 19:57:57 +0000 (20:57 +0100)]
Add DCHECKs to ArenaVector and ScopedArenaVector.
Implement dchecked_vector<> template that DCHECK()s element
access and insert()/emplace()/erase() positions. Change the
ArenaVector<> and ScopedArenaVector<> aliases to use the new
template instead of std::vector<>. Remove DCHECK()s that
have now become unnecessary from the Optimizing compiler.
Change-Id: Ib8506bd30d223f68f52bd4476c76d9991acacadc
Calin Juravle [Thu, 8 Oct 2015 09:41:32 +0000 (09:41 +0000)]
Merge "Don't remove type checks if we need to perform an access check."
Calin Juravle [Thu, 8 Oct 2015 09:41:22 +0000 (09:41 +0000)]
Merge "Enforce optimizing test marker for verification errors."
Nicolas Geoffray [Thu, 8 Oct 2015 07:45:06 +0000 (07:45 +0000)]
Merge "Fix x86_64 round intrinsic duplicate load"
Sebastien Hertz [Tue, 6 Oct 2015 13:28:44 +0000 (15:28 +0200)]
Fix instrumentation frame check with inlining
When instrumenting code compiled with inlining, we must compute
frame IDs like instrumentation did for pushing instrumentation
stack frames.
Bug:
22519499
Change-Id: I4a72dbe9e4d2fd4985e49f8261b54c96df7c4a81
Jeff Hao [Wed, 7 Oct 2015 23:27:55 +0000 (23:27 +0000)]
Merge "Move dmtracedump from dalvik to art."
Jeff Hao [Wed, 7 Oct 2015 22:52:09 +0000 (15:52 -0700)]
Move dmtracedump from dalvik to art.
Also ported from C to C++. Note this is more or less a straight port
from C, and the code is still very C-like.
Bug:
24700673
Change-Id: I87db5b799dc1ddd442fdd519abb88fe69fc66773
Mathieu Chartier [Wed, 7 Oct 2015 21:15:51 +0000 (21:15 +0000)]
Merge "Mark breakpoint roots"
Calin Juravle [Wed, 7 Oct 2015 16:51:52 +0000 (17:51 +0100)]
Don't remove type checks if we need to perform an access check.
Change-Id: I9b9e07c7524e96ece8dc089c8379631c2f9e3320
Calin Juravle [Wed, 7 Oct 2015 11:08:54 +0000 (12:08 +0100)]
Enforce optimizing test marker for verification errors.
Change-Id: Ie7babf162729fa02d285572ee043fa9e588d73cc
Mark Mendell [Fri, 18 Sep 2015 12:22:04 +0000 (08:22 -0400)]
Fix x86_64 round intrinsic duplicate load
When I changed the code to use Load64BitValue, I forgot to delete the
original load instruction(s). Remove them now.
Change-Id: I76aeccf88576507f2fbcf463ae1e503827a20fe2
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Andreas Gampe [Wed, 7 Oct 2015 16:59:56 +0000 (16:59 +0000)]
Merge "ART: Remove interpreter entrypoints"
Andreas Gampe [Wed, 7 Oct 2015 00:04:01 +0000 (17:04 -0700)]
ART: Remove interpreter entrypoints
These are no longer used as entrypoints. Make them proper runtime
functions local to the interpreter.
Bump oat version.
Change-Id: Icdd92e20eafc5668b68eeebf55cf624560f462b3
Andreas Gampe [Wed, 7 Oct 2015 16:29:30 +0000 (16:29 +0000)]
Merge "ART: Change asm test logging"
Andreas Gampe [Wed, 7 Oct 2015 01:59:08 +0000 (18:59 -0700)]
ART: Change asm test logging
Adapt the output a bit to log the exact shell command, and change
how the output is logged and what is logged. Should get more info
on failure.
Change-Id: Iacf58d27d6e1cf01e2fcd5835c4e0f8b5a820501