Expose core EGL entry points to eglGetProcAddress

Required behavior for EGL_KHR_get_all_proc_addresses.

Change-Id: I1e6209ef3cb9f2fa6f22808b077c35139d4cb814
Merge "Expose core EGL entry points to eglGetProcAddress"
Fix incorrect odex path handling

It's wrong to just concatenate the apk_path and .odex.
The bug prevents the prebuilt odex being used since Kitkat.

The patch is copied from the code of JellyBean.

Change-Id: I0ce8a877e3df8ae1ab9a0e3aeeef2d5253efc223
Merge "Fix incorrect odex path handling"
fix GraphicBuffer::flatten crash issue when handle is null

Change-Id: I0d3727e4366cac355791e52cb7790bf8f3c51527
Signed-off-by: Jun Jiang <jun.a.jiang@intel.com>
Add error message for hints when exceptions occur during binder transactions.

It can help to detect some kind of error, such as why GraphicBuffer::flatten
will crash when handle is null.

Change-Id: I703cd035b96edb7afb324cf24d8230d4e55f4f52
Signed-off-by: Jun Jiang <jun.a.jiang@intel.com>
Add instruction-set arguments to installd commands.

The instruction-set is used to construct the dalvik cache
path and is also passed down to dex2oat.

(cherry picked from commit 791781bfb8cdcdf90e32968159603e2fe5098d94)

Change-Id: I43396b16f6eaecacf0fb7d052526fc5a239167ac
Merge "Add instruction-set arguments to installd commands."
Use asynchronous lock/unlock API

The gralloc API now provides a way for using lock/unlock with the Android
explicit synchronisation concept. This changes updates the GraphicBuffer class
to also expose this functionality, and updates the Surface class to make use of
in line with the dequeueBuffer/queueBuffer mechanism.

This new behaviour is dependent on GRALLOC_MODULE_API_VERSION_0_3. If the local
gralloc module does not support this then the existing synchronous lock/unlock
mechanism will be used.

Change-Id: I77daa1beb197b63b1c2f281b8414ac4ae4b5b03c
Merge "Add error message for hints when exceptions occur during binder transactions."
Merge "fix GraphicBuffer::flatten crash issue when handle is null"
Remove unused LOCAL_LDLIBS.

Change-Id: I62904c410a66f256da8253764577acae18f964f8
Merge "Remove unused LOCAL_LDLIBS."
Merge "Use asynchronous lock/unlock API"
Revert "Use asynchronous lock/unlock API"

This reverts commit 378ef07760eda717367d9429428c42d54d54d9a7.

Change-Id: I1de5ab973b5383633e75924fe90ac3ca8216c36a
Merge "Revert "Use asynchronous lock/unlock API""
Use asynchronous lock/unlock API

The gralloc API now provides a way for using lock/unlock with the Android
explicit synchronisation concept. This changes updates the GraphicBuffer class
to also expose this functionality, and updates the Surface class to make use of
in line with the dequeueBuffer/queueBuffer mechanism.

This new behaviour is dependent on GRALLOC_MODULE_API_VERSION_0_3. If the local
gralloc module does not support this then the existing synchronous lock/unlock
mechanism will be used.

Change-Id: I8c3fd9592e0c5400ac9be84450f55a77cc0bbdc5
Merge "Use asynchronous lock/unlock API"
Ensure that app lib symlinks are correctly labeled when created.

At present, the app lib symlinks are created before setting
the package directory security context, and therefore default
to system_data_file.  Upon a later restorecon_recursive,
they are relabeled to the same type as the package directory,
e.g. app_data_file.  Avoid this inconsistency by setting the
package directory security context before creating the symlink
so that it inherits the same security context.

Change-Id: I1ee6ccd8a2aa63a4d2efda67f313c97932235911
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Merge "Ensure that app lib symlinks are correctly labeled when created."