OSDN Git Service
Martijn Coenen [Fri, 15 Apr 2016 12:29:05 +0000 (14:29 +0200)]
Move servicemanager into system-background cpuset.
Bug:
24949295
Change-Id: I9149c43edf79d9acbc5af4b3dc1eae59c695a86a
Dan Stoza [Thu, 14 Apr 2016 23:42:07 +0000 (23:42 +0000)]
Merge "HWC2: Change version detection scheme" into nyc-dev
Chia-I Wu [Thu, 14 Apr 2016 22:37:28 +0000 (22:37 +0000)]
Merge changes I05c45303,I25b71570,I56ebc0ee into nyc-dev
* changes:
vulkan: fix vkGet*ProcAddr for un-enabled extensions
vulkan: do not query non-enabled WSI functions
vulkan: pass hal_extensions to InitDriverTable
Dan Stoza [Thu, 14 Apr 2016 21:44:34 +0000 (21:44 +0000)]
Merge "HWC2: Check SidebandStream capability on load" into nyc-dev
Dan Stoza [Thu, 14 Apr 2016 21:30:41 +0000 (14:30 -0700)]
HWC2: Change version detection scheme
SurfaceFlinger now checks hardware composer module numbers by looking
at device.version, the high byte of which corresponds to the HWC
major version (0x01... for HWC 1.x and 0x02... for HWC 2.0).
Bug:
28161397
Change-Id: I4560bf60c35bdb97629fda1aa1256b03122688ad
Lianchao Song [Thu, 14 Apr 2016 21:09:38 +0000 (21:09 +0000)]
DO NOT MERGE ANYWHERE Sensorservice, fix the over boundary risk am:
d89d29d -s ours
am:
f42496c -s ours
* commit '
f42496c55225aaf2aa28a059bc38aef3badd3705':
DO NOT MERGE ANYWHERE Sensorservice, fix the over boundary risk
Change-Id: I18d5a628fc494995eb29c72af42951fbb81cefad
Lianchao Song [Thu, 14 Apr 2016 21:06:15 +0000 (21:06 +0000)]
DO NOT MERGE ANYWHERE Sensorservice, fix the over boundary risk
am:
d89d29d -s ours
* commit '
d89d29d348855a9348509555a2d6fe87202ca715':
DO NOT MERGE ANYWHERE Sensorservice, fix the over boundary risk
Change-Id: I10bc5f966913b39c81ffffa73739bbe24055a54d
Andy Hung [Thu, 14 Apr 2016 20:47:23 +0000 (20:47 +0000)]
Merge "Unify dumped native stack traces" into nyc-dev
Dan Stoza [Thu, 14 Apr 2016 19:31:01 +0000 (12:31 -0700)]
HWC2: Check SidebandStream capability on load
Checks whether the HWC2 device has the SidebandStream capability
before attempting to load the corresponding function pointer
Bug:
28161394
Change-Id: I6407d61a1b23138781e57213bcb868be46609018
Lianchao Song [Tue, 12 Apr 2016 13:58:32 +0000 (21:58 +0800)]
DO NOT MERGE ANYWHERE Sensorservice, fix the over boundary risk
Add the parameter check during the operation of memcopy/memmove
to avoid the over boundary risk.
If this issue happen, the android system will restart.
Modify the code refer to the review comment
BUG:
28123226
Change-Id: Ib17e94d9b916938756d460bc2c05dd2d60246932
Signed-off-by: Lianchao Song <songlianchao@huawei.com>
Pablo Ceballos [Thu, 14 Apr 2016 17:10:26 +0000 (17:10 +0000)]
Merge "egl: add EGL_KHR_mutable_render_buffer" into nyc-dev
Andy Hung [Thu, 14 Apr 2016 02:35:34 +0000 (19:35 -0700)]
Unify dumped native stack traces
Bug:
28179196
Change-Id: Ie728ceace7aaf38389dd9684342e351feed6e5a7
Chia-I Wu [Wed, 13 Apr 2016 08:52:06 +0000 (16:52 +0800)]
vulkan: fix vkGet*ProcAddr for un-enabled extensions
vulkan::api::InitDispatchTable no longer queries for non-enabled WSI
functions. We could now return NULL instead of ProcHook::disabled_proc.
This also matches what the spec says.
Bug:
28173232
Change-Id: I05c45303025d25e49f75c18a912fc4cc2b13979f
Chia-I Wu [Wed, 13 Apr 2016 07:13:21 +0000 (15:13 +0800)]
vulkan: do not query non-enabled WSI functions
Initialize dispatch table entries for non-enabled WSI functions to stubs.
We do not want to initialize them to NULL because they may still be
invoked through the exported WSI entrypoints.
Bug:
25850852
Change-Id: I25b715700990ad7432740f031764d70396024d32
Chia-I Wu [Wed, 13 Apr 2016 07:01:00 +0000 (15:01 +0800)]
vulkan: pass hal_extensions to InitDriverTable
We only need hal_extensions to initialize the driver tables. There is no
need to save it in driver::{Instance,Device}Data.
Change-Id: I56ebc0ee9c5bc5e543e7a84412b03b842bd8ced5
Keun-young Park [Thu, 14 Apr 2016 00:04:37 +0000 (17:04 -0700)]
remove non-mandatory features from car_core
- things like camera, compass, accelerometer, landscape mode not
mandated.
- each product should add it as necessary.
bug:
28175543
Change-Id: I171e88bee598198a8aeb64afae77b0045c02b2da
TreeHugger Robot [Wed, 13 Apr 2016 23:43:54 +0000 (23:43 +0000)]
Merge changes I7389829a,I4f3f91e8 into nyc-dev
* changes:
vulkan: pass VK_LAYER_FUNCTION_DATA_CALLBACK to layers
vulkan: update vk_layer_interface.h
Craig Donner [Wed, 13 Apr 2016 21:46:06 +0000 (21:46 +0000)]
Merge "Minor changes and cleanup to support EXT_protected_content." into nyc-dev
Chia-I Wu [Wed, 13 Apr 2016 02:20:59 +0000 (10:20 +0800)]
vulkan: pass VK_LAYER_FUNCTION_DATA_CALLBACK to layers
VK_LAYER_FUNCTION_DATA_CALLBACK effectively allows us to pass
driver::SetDataInternal to layers. It will be called on handles of
potentially unknown types. Add two internal types
VK_DEFINE_HANDLE(InstanceDispatchable)
VK_DEFINE_HANDLE(DeviceDispatchable)
in driver namespace for type safety.
Bug:
28015368
Change-Id: I7389829a7d8c374197cd7046973777b49e436961
Jeff Sharkey [Wed, 13 Apr 2016 19:51:51 +0000 (19:51 +0000)]
Merge "Build target path before closedir()." into nyc-dev
Jeff Sharkey [Wed, 13 Apr 2016 19:45:47 +0000 (13:45 -0600)]
Build target path before closedir().
Otherwise ent->d_name could be cleared out, and we'd aim at the
top-level data directory, which has disastrous results when clearing
app data.
Bug:
28155330
Change-Id: Icf7df835d76816dfbe2894fdae708033df983825
Pablo Ceballos [Wed, 13 Apr 2016 19:10:50 +0000 (19:10 +0000)]
Merge "EGL: Ensure surfaces are disconnected when destroyed" into nyc-dev
Rob Carr [Wed, 13 Apr 2016 18:58:42 +0000 (18:58 +0000)]
Merge "Add Surface::waitForNextFrame" into nyc-dev
TreeHugger Robot [Wed, 13 Apr 2016 18:28:19 +0000 (18:28 +0000)]
Merge "Added support for 'bugreport -z'." into nyc-dev
Philip Cuadra [Wed, 13 Apr 2016 18:27:59 +0000 (18:27 +0000)]
Merge "Binder: add pid to thread name for binder threads." into nyc-dev
Pablo Ceballos [Wed, 13 Apr 2016 18:17:32 +0000 (11:17 -0700)]
egl: add EGL_KHR_mutable_render_buffer
- Allow drivers to support it and applications to query for it.
- Add it to the platform header.
Bug
27129258
Change-Id: I7ce762f03889027d67803ba2da85a43584f3cf79
Craig Donner [Tue, 12 Apr 2016 23:54:03 +0000 (16:54 -0700)]
Minor changes and cleanup to support EXT_protected_content.
Bug:
22775237
Change-Id: I809b62597ca439e5183c32711866efa71e06467e
Philip Cuadra [Fri, 8 Apr 2016 17:29:14 +0000 (10:29 -0700)]
Binder: add pid to thread name for binder threads.
Including the pid in the binder thread name improves attribution of
binder time in systraces.
Change-Id: I40461b6f98c51c6e5f0acc1c24d443d0e7109b69
Felipe Leme [Tue, 12 Apr 2016 23:36:51 +0000 (16:36 -0700)]
Added support for 'bugreport -z'.
Dumpstate now supports zipped bugreport, whose output is more complete
than the flat-file bugreports provided prior to N.
The whole workflow is split in different components:
- adb supports a 'bugreport -z <ZIP_FILE>' option, which calls a
bugreportz binary.
- bugreportz starts the dumpstatez service.
- dumpstatez starts dumpstate with some flags that opens a socket for
control (not output).
- Once dumpstate is finished, it prints the bugreport location to
stdout.
- adb pulls the zip file and renames according to the command-line
argument.
- bugreport prints a deprecation message.
The reason for a new binary (bugreportz) instead of passing arguments to
bugreport (like -z) is backward compatibility: pre-N versions of
bugreport would ignore such argument and generate a text bugreport,
which is not what adb would be expecting.
BUG:
27653204
Change-Id: I47f6f677eba11d5fb54818ae5a0b3cab069776ee
Chia-I Wu [Wed, 13 Apr 2016 01:32:24 +0000 (09:32 +0800)]
vulkan: update vk_layer_interface.h
Update to match vk_layer.h in Vulkan-LoaderAndValidationLayers.
Specifically,
- VK_LAYER_FUNCTION_DEVICE is removed
- VK_LAYER_FUNCTION_INSTANCE is removed
- VK_LAYER_FUNCTION_DATA_CALLBACK is added
We do not use VK_LAYER_FUNCTION_DEVICE and VK_LAYER_FUNCTION_INSTANCE
anymore. They were internal to the desktop loader as well. Hopefully no
layer ever uses them.
Bug:
28015368
Change-Id: I4f3f91e8224eb943caca4792d74b63aef0b23ad2
Robert Carr [Mon, 11 Apr 2016 18:15:32 +0000 (11:15 -0700)]
Add Surface::waitForNextFrame
We can use this for cases like SurfaceView
where one thread (e.g. the framework code)
wants to wait for an unknown client thread
to render a frame in to the surface before
we report it as shown to the window manager.
Bug:
22207948
Change-Id: I9d3344aa1c0ab0f0efd9df24e90ce0410d5f2e22
Jorim Jaggi [Wed, 13 Apr 2016 02:06:48 +0000 (02:06 +0000)]
Merge "Revert "Death to synchronous transactions (1/2)"" into nyc-dev
Jorim Jaggi [Wed, 13 Apr 2016 01:40:35 +0000 (01:40 +0000)]
Revert "Death to synchronous transactions (1/2)"
This reverts commit
c6a607aa7ab96f6b1bac487cffd1899e1f1cdcf5.
It causes issues when resizing: default buffer size on the consumer side
only gets set when the transaction actually executes. But because
consumer is not blocked on SF over WM anymore, it gets the default
buffer size before the surface is resized, and thus uses wrong bounds
for the buffer to be drawn, and never submits another one.
This needs a more involved fix.
Bug:
28122036
Bug:
28128613
Change-Id: I0e738f99e43fc9ea25426e9e6e607e01413d3bb7
Chia-I Wu [Wed, 13 Apr 2016 00:14:07 +0000 (00:14 +0000)]
Merge "vulkan: fix vkGetDeviceProcAddr for intercepted commands" into nyc-dev
Nick Kralevich [Tue, 12 Apr 2016 23:32:33 +0000 (16:32 -0700)]
Drop compatibility with pre 2012 adb clients
On very old versions of adb, when "adb bugreport" was executed,
the command "adb shell dumpstate" was run. This was later changed
to "adb shell bugreport". Change
1e339878c128ef47271278779c2685a8dfa49cd1 added a backwards
compatibility hack (see bug
6391938).
It turns out that nobody has been able to execute
/system/bin/dumpstate as a non-root user for 2 releases now due
to SELinux restrictions, so maintaining the code bloat to support
this workaround is pointless.
Delete the code.
Bug:
6391938
Change-Id: I49eebcca1fcec5a39593c53e2e6d23ec87f65a35
Chia-I Wu [Tue, 12 Apr 2016 03:16:17 +0000 (11:16 +0800)]
vulkan: fix vkGetDeviceProcAddr for intercepted commands
This allows vulkan::api::DestroyDevice to properly unreference layers.
Bug:
28077754
Change-Id: I194925d29dee3489b63f4a44669c791d378afa39
Chia-I Wu [Tue, 12 Apr 2016 01:40:06 +0000 (09:40 +0800)]
vulkan: fix support for unknown extensions
Never set the bit ProcHook::EXTENSION_UNKNOWN, otherwise std::out_of_range
will be thrown.
Change-Id: I0a1343079647162bf17494acaaa69f1fa26b72f8
Jesse Hall [Tue, 12 Apr 2016 00:36:45 +0000 (00:36 +0000)]
Merge "libvulkan: Use a stub HAL when no real Vulkan HAL is present" into nyc-dev
Jesse Hall [Mon, 11 Apr 2016 20:51:38 +0000 (13:51 -0700)]
libvulkan: Use a stub HAL when no real Vulkan HAL is present
This stub HAL enumerates zero VkPhysicalDevices. This allows a
VkInstane to be created and queried for physical devices successfully
even on devices without a Vulkan driver. Handling this with a stub HAL
avoids the need for NULL HAL and NULL driver function pointer checks
in many places throughout the loader, which would be more error-prone.
Fixes bug:
28100673
Change-Id: I76bea975929a85eda354730d6c815567b412b160
Felipe Leme [Mon, 11 Apr 2016 22:07:45 +0000 (22:07 +0000)]
Merge "Setting v1-dev4 as default." into nyc-dev
Felipe Leme [Mon, 11 Apr 2016 20:45:18 +0000 (13:45 -0700)]
Setting v1-dev4 as default.
BUG:
27618668
Change-Id: I59c3a7c256c4d059ae3c29411120d3e9c9a5d995
Chia-I Wu [Mon, 11 Apr 2016 20:36:47 +0000 (20:36 +0000)]
Merge changes I33360e15,I2f102fa9,If44c40f8,Ic7bc29ef into nyc-dev
* changes:
vulkan: use CamelCase() for CreateInfoWrapper
vulkan: use CamelCase() for LayerChain
vulkan: use CamelCase() for OverrideExtensionNames
vulkan: use CamelCase() for OverrideLayerNames
Peng Xu [Mon, 11 Apr 2016 19:32:42 +0000 (19:32 +0000)]
Merge "Refactor sensor list in SensorService" into nyc-dev
Peng Xu [Wed, 6 Apr 2016 06:46:03 +0000 (23:46 -0700)]
Refactor sensor list in SensorService
Refactor sensor lists management logic in sensorservice:
* Factor all sensor list management code into a separate class.
* Remove error-prone repeated sensor lists.
* Solve synchronization issue when sensor is added or removed during runtime.
* Switch to STL containers.
Bug: b/
27911774
Change-Id: I94d5571e1fa3166dbe893ffac2a2a7584be6349c
Dan Stoza [Mon, 11 Apr 2016 17:43:45 +0000 (17:43 +0000)]
Merge "DispSync: Always resync after inactivity" into nyc-dev
Jeff Sharkey [Mon, 11 Apr 2016 06:32:02 +0000 (06:32 +0000)]
Merge "Let's try casting to fix the build." into nyc-dev
Jeff Sharkey [Mon, 11 Apr 2016 06:30:24 +0000 (00:30 -0600)]
Let's try casting to fix the build.
Change-Id: Icd55458caefa27823b770f499a172ca96d1f7a0b
Jeff Sharkey [Mon, 11 Apr 2016 06:12:36 +0000 (06:12 +0000)]
Merge "Use inode numbers for CE storage, fix sizes." into nyc-dev
Chia-I Wu [Mon, 11 Apr 2016 05:55:56 +0000 (13:55 +0800)]
vulkan: use CamelCase() for CreateInfoWrapper
Change-Id: I33360e15dd0bfb038235d7600587d39d50cea0a8
Chia-I Wu [Mon, 11 Apr 2016 05:52:39 +0000 (13:52 +0800)]
vulkan: use CamelCase() for LayerChain
Change-Id: I2f102fa97e3c976fa411b4e6bdc83dacfa243af7
Chia-I Wu [Mon, 11 Apr 2016 05:47:31 +0000 (13:47 +0800)]
vulkan: use CamelCase() for OverrideExtensionNames
Change-Id: If44c40f87b1e3e2eb69d12543a7f3b3036291c88
Chia-I Wu [Mon, 11 Apr 2016 05:44:13 +0000 (13:44 +0800)]
vulkan: use CamelCase() for OverrideLayerNames
Change-Id: Ic7bc29efc1ae5b734ebfc692c441b9537134ccb2
Jeff Sharkey [Mon, 11 Apr 2016 02:51:40 +0000 (20:51 -0600)]
Use inode numbers for CE storage, fix sizes.
Certain operations, such as clearing/destroying app data, or just
counting on-disk size, require us to know the CE storage directory
of a particular app. To facilitate these operations, offer a method
to get the inode of a CE directory, and accept that inode number
for later operations.
In previous releases, we started installing apps using a new
directory-based layout, where all app code, unpacked native libraries,
and optimized code is bundled together. So now we only have a single
path to measure for code size.
Start measuring both CE and DE storage data usage for apps, and tweak
the reporting so that empty cache/data directories actually show up
as "0 bytes".
Fix bugs in disk usage counting, since st_blksize has no bearing on
the allocated disk space. Also don't double-count "." and ".."
directories when measuring storage.
Bug:
27828915,
27197819
Change-Id: I350b951f5c24165edb253ac663c9aae020c24dc9
Chia-I Wu [Mon, 11 Apr 2016 02:43:44 +0000 (02:43 +0000)]
Merge changes I21f07545,I73c39cbe,I47b1639c,I4a6268d7,I06be9898, ... into nyc-dev
* changes:
vulkan: remove unused loader.{cpp.h}
vulkan: use driver::GetData everywhere
vulkan: move all _Bottom functions
vulkan: add swapchain.h
vulkan: add layers_extensions.h
vulkan: rework CreateInstance_Bottom and related ones
vulkan: rework EnumerateDeviceExtensionProperties_Bottom
vulkan: rework {Create,Destroy}Device_Bottom
vulkan: move AllocateCommandBuffers_Bottom
vulkan: move GetDeviceQueue_Bottom
vulkan: rework DriverDispatchTable
vulkan: rework driver::Get*ProcAddr
vulkan: add VK_ANDROID_native_buffer to vulkan.api
vulkan: move driver::GetDefaultAllocator
vulkan: move driver::OpenHAL
vulkan: move driver::Debuggable
Chia-I Wu [Fri, 25 Mar 2016 23:18:53 +0000 (07:18 +0800)]
vulkan: remove unused loader.{cpp.h}
Change-Id: I21f07545cf286f7e5796d9a6c9642cfdd3001f17
Chia-I Wu [Fri, 25 Mar 2016 23:17:34 +0000 (07:17 +0800)]
vulkan: use driver::GetData everywhere
Move away from the one-liners defined in loader.cpp.
Change-Id: I73c39cbe21aa3b2079f67590bb40f0cd55563f84
Chia-I Wu [Fri, 25 Mar 2016 23:06:44 +0000 (07:06 +0800)]
vulkan: move all _Bottom functions
Move them to vulkan::driver namespace and drop the _Bottom suffix.
Change-Id: I47b1639c4074adb9c0658816f5f1e126df7f685b
Chia-I Wu [Fri, 25 Mar 2016 23:01:55 +0000 (07:01 +0800)]
vulkan: add swapchain.h
Move everything belongs to swapchain.cpp out of loader.h to swapchain.h.
Change-Id: I4a6268d703b60e5661b09917eed129d2d227a63c
Chia-I Wu [Fri, 25 Mar 2016 22:56:45 +0000 (06:56 +0800)]
vulkan: add layers_extensions.h
Move everything for layers_extensions.cpp out of loader.h to
layers_extensions.h, and into vulkan::api namespace.
Remove now unused InstanceExtensionFromName and DeviceExtensionFromName.
Change-Id: I06be98986f40de35e9dffb5499bc1423e9eb3d48
Chia-I Wu [Thu, 24 Mar 2016 08:05:56 +0000 (16:05 +0800)]
vulkan: rework CreateInstance_Bottom and related ones
The reworked driver::CreateInstance will
- call HAL's EnumerateInstanceExtensionProperties and filter out
extensions unknown to HAL, if there is any extension enabled.
We do not expect or enumerate any HAL layer yet as that requires some
works to layers_extensions.cpp.
The reworked driver::EnumerateInstanceExtensionProperties instead will
return all extensions enumerated by HAL, after prepending VK_KHR_surface
and VK_KHR_android_surface to them. This allows extensions unknown to the
loader to be enumerated.
Change-Id: I73b496582a773e06c7b79f0c5c166700737f2953
Chia-I Wu [Thu, 24 Mar 2016 08:16:21 +0000 (16:16 +0800)]
vulkan: rework EnumerateDeviceExtensionProperties_Bottom
The reworked driver::EnumerateDeviceExtensionProperties will simply return
all extensions enumerated by HAL, with VK_ANDROID_native_buffer replaced
by VK_KHR_swapchain. This allows extensions unknown to the loader to be
enumerated.
Change-Id: Iceed8ee3f16a968d005ae3ba42f1bd1839c2ab9f
Chia-I Wu [Thu, 24 Mar 2016 08:38:58 +0000 (16:38 +0800)]
vulkan: rework {Create,Destroy}Device_Bottom
The reworked driver::CreateDevice will
- use the providied pAllocator,
- call HAL's EnumerateDeviceExtensionProperties and filter out extensions
unknown to HAL, if there is any extension enabled.
We do not expect or enumerate any HAL layer yet as that requires some
works to layers_extensions.cpp.
Change-Id: I3ba4019d18dfed994d7037d95825bf54096f2a5d
Chia-I Wu [Sun, 10 Apr 2016 22:38:53 +0000 (22:38 +0000)]
Merge "vulkan: check for unsupported extensions" into nyc-dev
Chia-I Wu [Sun, 10 Apr 2016 22:37:54 +0000 (22:37 +0000)]
Merge "vulkan: avoid double-free in InitSharedPtr" into nyc-dev
Chia-I Wu [Thu, 7 Apr 2016 07:01:55 +0000 (15:01 +0800)]
vulkan: avoid double-free in InitSharedPtr
When std::shared_ptr fails to allocate its internal data, it deletes the
managed object automatically. We should not call obj->common.decRef on
std::bad_alloc.
Bug:
28039233
Change-Id: I1fe00c16e83e426602eac96d8b86afb4fd4830e6
Pablo Ceballos [Sat, 9 Apr 2016 22:56:12 +0000 (15:56 -0700)]
EGL: Ensure surfaces are disconnected when destroyed
When eglDestroySurface is called, remove all references to the surface
in all contexts. This ensures that the surface is disconnected
immediately.
Bug
27455025
Change-Id: I0edaf039d320dc40122657db32abdc418665841a
Hangyu Kuang [Sat, 9 Apr 2016 05:11:43 +0000 (05:11 +0000)]
Merge "media: update VP9 CodecProfileLevel" into nyc-dev
Jorim Jaggi [Fri, 8 Apr 2016 21:35:12 +0000 (14:35 -0700)]
Death to synchronous transactions (1/2)
Bug:
28068298
Change-Id: I0a9a212a4b19793cf2830193152c53c03b651970
Hangyu Kuang [Thu, 7 Apr 2016 22:55:41 +0000 (15:55 -0700)]
media: update VP9 CodecProfileLevel
Bug:
27969307
Change-Id: I214e0aeb70e1f5a1520eea9ff206c13abd1a3a2a
Dan Stoza [Fri, 8 Apr 2016 23:13:01 +0000 (23:13 +0000)]
Merge changes I0f07043f,Ib4635ee4,I472ad9f0 into nyc-dev
* changes:
Plumb HDR capabilities up to SurfaceComposerClient
HWC2: Add getHdrCapabilities to C++ shim
HWC2: Add getHdrCapabilities stub to adapter
Dan Stoza [Thu, 24 Mar 2016 16:31:08 +0000 (09:31 -0700)]
Plumb HDR capabilities up to SurfaceComposerClient
Plumbs HDR capabilities up from HWC2 through SurfaceFlinger and
ISurfaceComposer to SurfaceComposerClient.
Bug:
25684127
Change-Id: I0f07043ff42bfc7a159f785fee3e84936dc3c280
Dan Stoza [Wed, 16 Mar 2016 19:23:40 +0000 (12:23 -0700)]
HWC2: Add getHdrCapabilities to C++ shim
Adds support for the getHdrCapabilities call to the HWC2 C++ shim.
Bug:
25684127
Change-Id: Ib4635ee437a06b48945e7f0328492c1e74e27aaa
Narayan Kamath [Fri, 8 Apr 2016 11:47:02 +0000 (11:47 +0000)]
Merge "installd: log failed unlinks." into nyc-dev
Ruchi Kandoi [Fri, 8 Apr 2016 01:09:22 +0000 (01:09 +0000)]
Merge "batteryservice: Expose Charge Counters." into nyc-dev
Dan Stoza [Wed, 16 Mar 2016 19:33:52 +0000 (12:33 -0700)]
HWC2: Add getHdrCapabilities stub to adapter
Adds a minimal getHdrCapabilities stub to the HWC2On1Adapter, which
always returns 0 supported HDR types (as per the HWC2 spec).
Bug:
25684127
Change-Id: I472ad9f08d1b97d5de69d044790badf3af60da72
Dan Stoza [Tue, 5 Apr 2016 23:45:26 +0000 (16:45 -0700)]
DispSync: Always resync after inactivity
Changes DispSync to enable hardware vsync immediately when new frames
arrive after a period of inactivity.
No matter how hard we try, we can't avoid drifting over time without
being able to detect error based on display retire fences. By enabling
hardware vsync immediately, we avoid having a weird period or phase
offset relative to hardware while we retrain the model. Once the model
has locked, we turn hardware vsync back off to save power (until we
detect drift again).
Bug:
26255070
Change-Id: If4dd17c2d541015c730f47d824359d7cb4b52c3c
Narayan Kamath [Thu, 7 Apr 2016 09:42:41 +0000 (10:42 +0100)]
installd: log failed unlinks.
bug:
28054110
Change-Id: Id46aacba293c81bb3bb6a0b9721b9b4fe11ed652
Chia-I Wu [Thu, 24 Mar 2016 08:29:51 +0000 (16:29 +0800)]
vulkan: move AllocateCommandBuffers_Bottom
Move it from loader.cpp to driver.cpp and rename it to
driver::AllocateCommandBuffers. No functional change.
Change-Id: I0abdca7dea128df0b313b90cfb5d5825566fc790
Chia-I Wu [Thu, 24 Mar 2016 08:24:40 +0000 (16:24 +0800)]
vulkan: move GetDeviceQueue_Bottom
Move it from loader.cpp to driver.cpp and rename it to
driver::GetDeviceQueue. No functional change.
Change-Id: Ide8ebe044e62b8ef6fc64ac03dcc1d920f5bf9a6
Chia-I Wu [Thu, 24 Mar 2016 05:01:16 +0000 (13:01 +0800)]
vulkan: rework DriverDispatchTable
Generate {Instance,Device}DriverTable from code-generator.tmpl to replace
dispatch.tmpl entirely. The new code avoids initializing
VK_ANDROID_native_buffer entries when the extension is not enabled. The
separation of instance and device driver tables also allows us to
initialize the device driver table with vkGetDeviceProcAddr, which is
expected to return more efficient function pointers on properly
implemented HALs.
CreateInstance_Bottom always has a potential resource leak when the
HAL-created instance does not contain HWVULKAN_DISPATCH_MAGIC.
CreateDevice_Bottom now has the same issue. Both of them will be fixed in
following commits.
Change-Id: If7800ef23098121f1fff643a2c5224c2c9be0711
Chia-I Wu [Thu, 24 Mar 2016 01:11:06 +0000 (09:11 +0800)]
vulkan: rework driver::Get*ProcAddr
Introduce driver::ProcHook which is a struct to describe an intercepted
function. Given a function name, GetProcHook returns a ProcHook if the
function is intercepted. NULL otherwise.
A ProcHook has three function pointers. ProcHook::proc points to the real
intercepting function. ProcHook::disabled_proc points to a no-op function
that logs an error. ProcHook::checked_proc points to a trampoline that
calls either ProcHook::proc or ProcHook::disabled_proc.
For core functions, driver::Get*ProcAddr simply return ProcHook::proc.
For extension functions, driver::Get*ProcAddr return ProcHook::proc when
the extension is known to be enabled. They return ProcHook::disabled_proc
when the extension is known to be disabled. Finally, they return
ProcHook::checked_proc when they do not know if the extension is enabled
or not.
All ProcHooks as well as their disabled_proc/checked_proc are generated in
driver_gen.cpp. This allows us to get rid of all hand-written "_Disabled"
functions, all no-op "_Bottom" functions, and special cases for
VK_ANDROID_native_buffer. The reworked driver::Get*ProcAddr also detects
more applications' errors and logs them.
Change-Id: I8e6f476f450688b5547fd75243c66cb603c516b5
Chia-I Wu [Mon, 21 Mar 2016 23:38:20 +0000 (07:38 +0800)]
vulkan: add VK_ANDROID_native_buffer to vulkan.api
Change-Id: I5d90918b10264b9d2cf8b73dc7a7c983b6721862
Chia-I Wu [Thu, 24 Mar 2016 07:09:38 +0000 (15:09 +0800)]
vulkan: move driver::GetDefaultAllocator
Move it from loader.cpp to driver.cpp. No functional change.
Change-Id: I8c9bb5315c29ff69bfd971ac8e1264fb8329a811
Chia-I Wu [Thu, 24 Mar 2016 07:01:52 +0000 (15:01 +0800)]
vulkan: move driver::OpenHAL
Move it from loader.cpp to driver.cpp. HAL loading is now done in
driver.cpp while HAL extension queries are still done in loader.cpp.
Change-Id: I15d7ead98497adacb1bd798522f057ff6bf16909
Chia-I Wu [Thu, 24 Mar 2016 06:55:27 +0000 (14:55 +0800)]
vulkan: move driver::Debuggable
Move it from loader.cpp to driver.cpp. No functional change.
Change-Id: I455e798d6001f9719d378ae0295f2b4b181b0c09
Chia-I Wu [Wed, 6 Apr 2016 06:17:48 +0000 (14:17 +0800)]
vulkan: check for unsupported extensions
Return VK_ERROR_EXTENSION_NOT_PRESENT when an app attempts to enable an
unsupported extension. This fixes a regression introduced by my top
rewrite (commit
0c20324: vulkan: rewrite top of loader).
Since we do not cache HAL extensions, each vkCreateInstance or
vkCreateDevice call is preceded by two extension enumeration calls
internally.
Change-Id: I5342c1a5c9a5452dd2bc52933a5ee558db174048
Andrii Kulian [Thu, 7 Apr 2016 01:43:02 +0000 (01:43 +0000)]
Merge "Caps Lock toggle with Meta + Alt (1/2)" into nyc-dev
Ruchi Kandoi [Thu, 7 Apr 2016 00:53:23 +0000 (17:53 -0700)]
batteryservice: Expose Charge Counters.
Bug:
27174034
Change-Id: Ib45a5258c3a8cbc706d207486310570511a03e6e
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
Dan Stoza [Wed, 6 Apr 2016 22:40:21 +0000 (22:40 +0000)]
Merge "SF/HWC2: Reorder makeCurrent to avoid deadlock" into nyc-dev
Jesse Hall [Wed, 6 Apr 2016 22:01:25 +0000 (22:01 +0000)]
Merge changes from topic 'vkjson' into nyc-dev
* changes:
GpuService: Add 'help' and 'vkjson' commands
Add service "gpu" in the SurfaceFlinger process
Dan Stoza [Wed, 6 Apr 2016 21:05:37 +0000 (14:05 -0700)]
SF/HWC2: Reorder makeCurrent to avoid deadlock
Now that we are deferring the release of FramebufferSurface buffers
(so that we can return a non-speculative fence), we end up holding
two acquired buffers during the call into HWComposer::commit (whereas
we previously would have only been holding one, with the other having
been released). This means that if the EGL implementation dequeues a
buffer as part of eglMakeCurrent, neither of the FramebufferSurface
buffers will be free, and the call to dequeueBuffer will block.
This change fixes that issue by reordering eglMakeCurrent to occur
after the deferred release.
Bug:
25684127
Change-Id: I6ec55b3f7b7d0e0f5be6029751cb086feeb52fbe
Greg Kaiser [Tue, 5 Apr 2016 22:10:38 +0000 (22:10 +0000)]
Merge "SensorService: Remove unused function" into nyc-dev
Greg Kaiser [Tue, 5 Apr 2016 18:45:06 +0000 (11:45 -0700)]
SensorService: Remove unused function
We remove the unused getSensorRecord function. This function
was accessing the mActiveSensors field without obtaining a lock.
We're looking to simplify this code, so we just remove this instead
of trying to fix it.
Change-Id: I8c4ed3cc7ed17d90aa9a5d7f33f9ab9238f9403f
Ashley Smith [Tue, 5 Apr 2016 18:33:20 +0000 (18:33 +0000)]
Merge "Updating wearable_core_hardware to support device administration." into nyc-dev
Roland Levillain [Tue, 5 Apr 2016 15:41:12 +0000 (16:41 +0100)]
Close profile before leaving android::installd::clear_profile.
The profile file descriptor used to be kept open and to
produce SElinux denials when installd ran dex2oat, as that
file descriptor was passed accross security domains.
Bug:
27943553
Change-Id: Ie025082f97c2736156bd5069d7a22aacde86f039
Peng Xu [Mon, 4 Apr 2016 22:12:41 +0000 (22:12 +0000)]
Merge "[sensorservice] temporarily remove Autolock mSensorsLock" into nyc-dev
Peng Xu [Mon, 4 Apr 2016 20:35:24 +0000 (13:35 -0700)]
[sensorservice] temporarily remove Autolock mSensorsLock
Bug: b/
27992752
Change-Id: I3d139c988d1a3522b75374423dcda74c5bd510a3
Chia-I Wu [Mon, 4 Apr 2016 02:21:02 +0000 (02:21 +0000)]
Merge "vulkan: rewrite top of loader" into nyc-dev
Mark Salyzyn [Fri, 1 Apr 2016 20:39:25 +0000 (20:39 +0000)]
Merge "dumpstate: acquire /data/misc/logd/ log contents" into nyc-dev
Felipe Leme [Fri, 1 Apr 2016 20:14:44 +0000 (20:14 +0000)]
Merge "Added option to redirect stdout on run_command_always." into nyc-dev