Skip to content

Instantly share code, notes, and snippets.

@antdking
Last active August 29, 2015 14:09
Show Gist options
  • Save antdking/57a51e788b52f63de641 to your computer and use it in GitHub Desktop.
Save antdking/57a51e788b52f63de641 to your computer and use it in GitHub Desktop.
#
##
# diffing platform/art
##
#
diff --git a/runtime/mirror/class.cc b/runtime/mirror/class.cc
index 5b8eb82..c10e8b1 100644
--- a/runtime/mirror/class.cc
+++ b/runtime/mirror/class.cc
@@ -499,7 +499,9 @@ ArtMethod* Class::FindDeclaredVirtualMethod(const DexCache* dex_cache, uint32_t
if (GetDexCache() == dex_cache) {
for (size_t i = 0; i < NumVirtualMethods(); ++i) {
ArtMethod* method = GetVirtualMethod(i);
- if (method->GetDexMethodIndex() == dex_method_idx) {
+ if (method->GetDexMethodIndex() == dex_method_idx &&
+ // A miranda method may have a different DexCache.
+ method->GetDexCache() == dex_cache) {
return method;
}
}
#
##
# diffing platform/build
##
#
diff --git a/core/build_id.mk b/core/build_id.mk
index 78bb105..f404c81 100644
--- a/core/build_id.mk
+++ b/core/build_id.mk
@@ -18,4 +18,4 @@
# (like "CRB01"). It must be a single word, and is
# capitalized by convention.
-export BUILD_ID=LRX21M
+export BUILD_ID=LRX21Q
#
##
# diffing device/asus/deb
##
#
diff --git a/init.deb.rc b/init.deb.rc
index 09362f1..2f308e7 100644
--- a/init.deb.rc
+++ b/init.deb.rc
@@ -15,6 +15,7 @@
#
import init.flo.usb.rc
+import init.flo.diag.rc
on early-init
mount debugfs debugfs /sys/kernel/debug
#
##
# diffing device/asus/flo
##
#
diff --git a/device-common.mk b/device-common.mk
index b0acd2a..bdcb44d 100644
--- a/device-common.mk
+++ b/device-common.mk
@@ -120,6 +120,15 @@ PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.bluetooth_le.xml:system/etc/permissions/android.hardware.bluetooth_le.xml \
frameworks/native/data/etc/android.hardware.ethernet.xml:system/etc/permissions/android.hardware.ethernet.xml
+# Modem debugger
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+PRODUCT_COPY_FILES += \
+ device/asus/flo/init.flo.diag.rc.userdebug:root/init.flo.diag.rc
+else
+PRODUCT_COPY_FILES += \
+ device/asus/flo/init.flo.diag.rc.user:root/init.flo.diag.rc
+endif
+
PRODUCT_PROPERTY_OVERRIDES += \
ro.opengles.version=196608
diff --git a/init.flo.diag.rc.user b/init.flo.diag.rc.user
new file mode 100644
index 0000000..e6f1b2d
--- /dev/null
+++ b/init.flo.diag.rc.user
@@ -0,0 +1,4 @@
+# This file gets copied as /init.flo.diag.rc
+
+on post-fs-data
+ rm /dev/diag
diff --git a/init.flo.diag.rc.userdebug b/init.flo.diag.rc.userdebug
new file mode 100644
index 0000000..d43fdd4
--- /dev/null
+++ b/init.flo.diag.rc.userdebug
@@ -0,0 +1,6 @@
+# This file gets copied as /init.flo.diag.rc
+
+on post-fs-data
+ # Modem logging collection
+ mkdir /data/diag_logs 0777 system system
+ chmod 666 /dev/diag
diff --git a/init.flo.rc b/init.flo.rc
index 218a13f..933376d 100644
--- a/init.flo.rc
+++ b/init.flo.rc
@@ -15,6 +15,7 @@
#
import init.flo.usb.rc
+import init.flo.diag.rc
on early-init
mount debugfs debugfs /sys/kernel/debug
#
##
# diffing device/asus/grouper
##
#
diff --git a/BoardConfigCommon.mk b/BoardConfigCommon.mk
index 27924d0..115844d 100644
--- a/BoardConfigCommon.mk
+++ b/BoardConfigCommon.mk
@@ -96,6 +96,7 @@ BOARD_SEPOLICY_UNION += \
keystore.te \
lmkd.te \
mediaserver.te \
+ recovery.te \
rild.te \
sensors_config.te \
surfaceflinger.te \
diff --git a/sepolicy/recovery.te b/sepolicy/recovery.te
new file mode 100644
index 0000000..6f20993
--- /dev/null
+++ b/sepolicy/recovery.te
@@ -0,0 +1,11 @@
+recovery_only(`
+ allow recovery ctl_rildaemon_prop:property_service set;
+ allow recovery device:dir rw_dir_perms;
+ allow recovery rootfs:dir rw_dir_perms;
+ allow recovery rootfs:file create_file_perms;
+ allow recovery sysfs_devices_system_cpu:file rw_file_perms;
+ allow recovery self:capability mknod;
+ allow recovery usbfs:dir rw_dir_perms;
+ allow recovery device:chr_file create_file_perms;
+')
+
#
##
# diffing device/asus/tilapia
##
#
diff --git a/device.mk b/device.mk
index e621466..e0ea339 100644
--- a/device.mk
+++ b/device.mk
@@ -21,6 +21,7 @@ PRODUCT_PACKAGES := \
PRODUCT_COPY_FILES := \
device/asus/tilapia/fstab.grouper:root/fstab.grouper \
+ device/asus/tilapia/init.recovery.tilapia.rc:root/init.recovery.grouper.rc \
device/asus/tilapia/init.tilapia.rc:root/init.grouper.rc
DEVICE_PACKAGE_OVERLAYS := \
diff --git a/init.recovery.tilapia.rc b/init.recovery.tilapia.rc
new file mode 100644
index 0000000..57c704b
--- /dev/null
+++ b/init.recovery.tilapia.rc
@@ -0,0 +1,2 @@
+on init
+ mkdir /radio 0700 root root
#
##
# diffing device/htc/flounder-kernel
##
#
diff --git a/Image.gz-dtb b/Image.gz-dtb
index 3bc4f3d..8c907e3 100644
Binary files a/Image.gz-dtb and b/Image.gz-dtb differ
#
##
# diffing device/lge/mako
##
#
diff --git a/device.mk b/device.mk
index 09d7ae2..e7d4da5 100644
--- a/device.mk
+++ b/device.mk
@@ -57,7 +57,8 @@ PRODUCT_COPY_FILES := \
PRODUCT_COPY_FILES += \
device/lge/mako/WCNSS_cfg.dat:system/vendor/firmware/wlan/prima/WCNSS_cfg.dat \
device/lge/mako/WCNSS_qcom_cfg.ini:system/etc/wifi/WCNSS_qcom_cfg.ini \
- device/lge/mako/WCNSS_qcom_wlan_nv.bin:system/etc/wifi/WCNSS_qcom_wlan_nv.bin
+ device/lge/mako/WCNSS_qcom_wlan_nv.bin:system/etc/wifi/WCNSS_qcom_wlan_nv.bin \
+ device/lge/mako/init.mako.wifi.sh:system/etc/init.mako.wifi.sh
PRODUCT_COPY_FILES += \
device/lge/mako/audio_policy.conf:system/etc/audio_policy.conf
diff --git a/init.mako.rc b/init.mako.rc
index 85babc8..f84c0a9 100644
--- a/init.mako.rc
+++ b/init.mako.rc
@@ -147,16 +147,12 @@ on post-fs-data
# to observe dnsmasq.leases file for dhcp information of soft ap.
chown dhcp system /data/misc/dhcp
- write /dev/wcnss_wlan 1
+ chown system system /dev/wcnss_wlan
write /sys/module/wcnss_ssr_8960/parameters/enable_riva_ssr 1
# Create directory used by audio subsystem
mkdir /data/misc/audio 0770 audio audio
- # Workaround for conn_init not copying the updated firmware
- rm /data/misc/wifi/WCNSS_qcom_cfg.ini
- rm /data/misc/wifi/WCNSS_qcom_wlan_nv.bin
-
# Mounting of persist is moved to 'on emmc-fs' and 'on fs' sections
# We chown/chmod /persist again so because mount is run as root + defaults
chown system system /persist
@@ -235,6 +231,9 @@ on post-fs-data
write /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq 384000
write /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq 384000
+ # disable diag port
+ rm /dev/diag
+
on charger
# Enable Power modes and set the CPU Freq Sampling rates
write /sys/module/rpm_resources/enable_low_power/L2_cache 1
@@ -395,10 +394,11 @@ service qcamerasvr /system/bin/mm-qcamera-daemon
user camera
group camera system inet input
-service conn_init /system/bin/conn_init
- class late_start
+service wcnss_init /system/bin/sh /system/etc/init.mako.wifi.sh
+ class main
user system
group system wifi
+ seclabel u:r:conn_init:s0
oneshot
service bdAddrLoader /system/bin/bdAddrLoader -f /persist/bluetooth/.bdaddr -h -x
diff --git a/init.mako.wifi.sh b/init.mako.wifi.sh
new file mode 100644
index 0000000..e586e96
--- /dev/null
+++ b/init.mako.wifi.sh
@@ -0,0 +1,10 @@
+#!/system/bin/sh
+
+# Workaround for conn_init not copying the updated firmware
+rm /data/misc/wifi/WCNSS_qcom_cfg.ini
+rm /data/misc/wifi/WCNSS_qcom_wlan_nv.bin
+
+/system/bin/conn_init
+
+echo 1 > /dev/wcnss_wlan
+
diff --git a/sepolicy/conn_init.te b/sepolicy/conn_init.te
index 33f0cab..6491888 100644
--- a/sepolicy/conn_init.te
+++ b/sepolicy/conn_init.te
@@ -2,10 +2,11 @@
type conn_init, domain;
type conn_init_exec, exec_type, file_type;
-# Started by logwrapper in init
-domain_auto_trans(init, conn_init_exec, conn_init)
+init_daemon_domain(conn_init)
-allow conn_init devpts:chr_file { read write };
+# Runs init.mako.wifi.sh
+allow conn_init shell_exec:file { entrypoint read };
+allow conn_init conn_init_exec:file rx_file_perms;
# Allow /persist/wifi access
allow conn_init { persist_file persist_wifi_file }:dir search;
@@ -14,3 +15,8 @@ allow conn_init persist_wifi_file:file r_file_perms;
# Allow /data/misc/wifi access for firmware files
allow conn_init wifi_data_file:dir w_dir_perms;
allow conn_init wifi_data_file:file create_file_perms;
+
+allow conn_init wlan_device:chr_file rw_file_perms;
+
+# init.mako.wifi.sh runs toolbox
+allow conn_init system_file:file execute_no_trans;
diff --git a/sepolicy/device.te b/sepolicy/device.te
index 81caeca..b6e993a 100644
--- a/sepolicy/device.te
+++ b/sepolicy/device.te
@@ -1,3 +1,5 @@
+type wlan_device, dev_type;
+
type diag_device, dev_type;
# Kickstart device used by QC qcks
diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts
index ca7e215..4944f75 100644
--- a/sepolicy/file_contexts
+++ b/sepolicy/file_contexts
@@ -2,6 +2,9 @@
/dev/kgsl-3d0 u:object_r:gpu_device:s0
/dev/kgsl u:object_r:gpu_device:s0
+# WLAN
+/dev/wcnss_wlan u:object_r:wlan_device:s0
+
# Image Rotator Driver
/dev/msm_rotator u:object_r:video_device:s0
#
##
# diffing platform/external/bluetooth/bluedroid
##
#
diff --git a/bta/gatt/bta_gattc_act.c b/bta/gatt/bta_gattc_act.c
index 91204fc..546a56f 100755
--- a/bta/gatt/bta_gattc_act.c
+++ b/bta/gatt/bta_gattc_act.c
@@ -1791,8 +1791,11 @@ static void bta_gattc_conn_cback(tGATT_IF gattc_if, BD_ADDR bda, UINT16 conn_id,
{
tBTA_GATTC_DATA *p_buf;
- APPL_TRACE_DEBUG("bta_gattc_conn_cback: cif = %d connected = %d conn_id = %d reaosn = 0x%04x",
- gattc_if, connected, conn_id, reason);
+ if (reason != 0)
+ {
+ APPL_TRACE_WARNING("%s() - cif=%d connected=%d conn_id=%d reason=0x%04x",
+ __FUNCTION__, gattc_if, connected, conn_id, reason);
+ }
if ((p_buf = (tBTA_GATTC_DATA *) GKI_getbuf(sizeof(tBTA_GATTC_DATA))) != NULL)
{
diff --git a/bta/hh/bta_hh_int.h b/bta/hh/bta_hh_int.h
index b010bca..ac9bb61 100644
--- a/bta/hh/bta_hh_int.h
+++ b/bta/hh/bta_hh_int.h
@@ -266,6 +266,7 @@ typedef struct
UINT8 disc_active;
tBTA_HH_STATUS status;
+ tBTA_GATT_REASON reason;
BOOLEAN is_le_device;
tBTA_HH_LE_HID_SRVC hid_srvc[BTA_HH_LE_HID_SRVC_MAX];
UINT16 conn_id;
diff --git a/bta/hh/bta_hh_le.c b/bta/hh/bta_hh_le.c
index bd42553..7cbf09c 100644
--- a/bta/hh/bta_hh_le.c
+++ b/bta/hh/bta_hh_le.c
@@ -1265,6 +1265,7 @@ void bta_hh_le_encrypt_cback(BD_ADDR bd_addr, tBTA_GATT_TRANSPORT transport,
return;
}
p_dev_cb->status = (result == BTM_SUCCESS) ? BTA_HH_OK : BTA_HH_ERR_SEC;
+ p_dev_cb->reason = result;
bta_hh_sm_execute(p_dev_cb, BTA_HH_ENC_CMPL_EVT, NULL);
}
@@ -1314,8 +1315,12 @@ void bta_hh_security_cmpl(tBTA_HH_DEV_CB *p_cb, tBTA_HH_DATA *p_buf)
}
}
else
- bta_hh_le_api_disc_act(p_cb);
-
+ {
+ APPL_TRACE_ERROR("%s() - encryption failed; status=0x%04x, reason=0x%04x",
+ __FUNCTION__, p_cb->status, p_cb->reason);
+ if (!(p_cb->status == BTA_HH_ERR_SEC && p_cb->reason == BTM_ERR_PROCESSING))
+ bta_hh_le_api_disc_act(p_cb);
+ }
}
/*******************************************************************************
#
##
# diffing platform/external/chromium_org
##
#
diff --git a/content/browser/android/java/gin_java_bridge_dispatcher_host.cc b/content/browser/android/java/gin_java_bridge_dispatcher_host.cc
index c961dd9..ca63276 100644
--- a/content/browser/android/java/gin_java_bridge_dispatcher_host.cc
+++ b/content/browser/android/java/gin_java_bridge_dispatcher_host.cc
@@ -202,6 +202,10 @@ void GinJavaBridgeDispatcherHost::RemoveNamedObject(
if (iter == named_objects_.end())
return;
+ // |name| may come from |named_objects_|. Make a copy of name so that if
+ // |name| is from |named_objects_| it'll be valid after the remove below.
+ const std::string copied_name(name);
+
scoped_refptr<GinJavaBoundObject> object(*objects_.Lookup(iter->second));
named_objects_.erase(iter);
object->RemoveName();
@@ -220,7 +224,7 @@ void GinJavaBridgeDispatcherHost::RemoveNamedObject(
}
web_contents()->SendToAllFrames(
- new GinJavaBridgeMsg_RemoveNamedObject(MSG_ROUTING_NONE, name));
+ new GinJavaBridgeMsg_RemoveNamedObject(MSG_ROUTING_NONE, copied_name));
}
void GinJavaBridgeDispatcherHost::SetAllowObjectContentsInspection(bool allow) {
diff --git a/gpu/command_buffer/service/async_pixel_transfer_manager_android.cc b/gpu/command_buffer/service/async_pixel_transfer_manager_android.cc
index a2b2255..046ecc3 100644
--- a/gpu/command_buffer/service/async_pixel_transfer_manager_android.cc
+++ b/gpu/command_buffer/service/async_pixel_transfer_manager_android.cc
@@ -16,26 +16,49 @@
namespace gpu {
namespace {
-bool IsBroadcom() {
- const char* vendor = reinterpret_cast<const char*>(glGetString(GL_VENDOR));
- if (vendor)
- return std::string(vendor).find("Broadcom") != std::string::npos;
- return false;
+enum GpuType {
+ GPU_BROADCOM,
+ GPU_IMAGINATION,
+ GPU_NVIDIA_ES31,
+ GPU_ADRENO_420,
+ GPU_OTHER,
+};
+
+std::string MakeString(const char* s) {
+ return std::string(s ? s : "");
}
-bool IsImagination() {
- const char* vendor = reinterpret_cast<const char*>(glGetString(GL_VENDOR));
- if (vendor)
- return std::string(vendor).find("Imagination") != std::string::npos;
- return false;
+GpuType GetGpuType() {
+ const std::string vendor = MakeString(
+ reinterpret_cast<const char*>(glGetString(GL_VENDOR)));
+ const std::string renderer = MakeString(
+ reinterpret_cast<const char*>(glGetString(GL_RENDERER)));
+ const std::string version = MakeString(
+ reinterpret_cast<const char*>(glGetString(GL_VERSION)));
+
+ if (vendor.find("Broadcom") != std::string::npos)
+ return GPU_BROADCOM;
+
+ if (vendor.find("Imagination") != std::string::npos)
+ return GPU_IMAGINATION;
+
+ if (vendor.find("NVIDIA") != std::string::npos &&
+ version.find("OpenGL ES 3.1") != std::string::npos) {
+ return GPU_NVIDIA_ES31;
+ }
+
+ if (vendor.find("Qualcomm") != std::string::npos &&
+ renderer.find("Adreno (TM) 420") != std::string::npos) {
+ return GPU_ADRENO_420;
+ }
+
+ return GPU_OTHER;
}
-bool IsNvidia31() {
- const char* vendor = reinterpret_cast<const char*>(glGetString(GL_VENDOR));
- const char* version = reinterpret_cast<const char*>(glGetString(GL_VERSION));
- return vendor && version &&
- std::string(vendor).find("NVIDIA") != std::string::npos &&
- std::string(version).find("OpenGL ES 3.1") != std::string::npos;
+bool AllowTransferThreadForGpu() {
+ GpuType gpu = GetGpuType();
+ return gpu != GPU_BROADCOM && gpu != GPU_IMAGINATION &&
+ gpu != GPU_NVIDIA_ES31 && gpu != GPU_ADRENO_420;
}
}
@@ -51,24 +74,25 @@ bool IsNvidia31() {
// resolution of crbug.com/271929
AsyncPixelTransferManager* AsyncPixelTransferManager::Create(
gfx::GLContext* context) {
- TRACE_EVENT0("gpu", "AsyncPixelTransferManager::Create");
+ DCHECK(context->IsCurrent(NULL));
switch (gfx::GetGLImplementation()) {
case gfx::kGLImplementationEGLGLES2:
DCHECK(context);
- if (context->HasExtension("EGL_KHR_fence_sync") &&
+ if (!base::android::SysUtils::IsLowEndDevice() &&
+ context->HasExtension("EGL_KHR_fence_sync") &&
context->HasExtension("EGL_KHR_image") &&
context->HasExtension("EGL_KHR_image_base") &&
context->HasExtension("EGL_KHR_gl_texture_2D_image") &&
context->HasExtension("GL_OES_EGL_image") &&
- !IsBroadcom() &&
- !IsImagination() &&
- !IsNvidia31() &&
- !base::android::SysUtils::IsLowEndDevice()) {
+ AllowTransferThreadForGpu()) {
+ TRACE_EVENT0("gpu", "AsyncPixelTransferManager_CreateWithThread");
return new AsyncPixelTransferManagerEGL;
}
return new AsyncPixelTransferManagerIdle;
- case gfx::kGLImplementationOSMesaGL:
+ case gfx::kGLImplementationOSMesaGL: {
+ TRACE_EVENT0("gpu", "AsyncPixelTransferManager_CreateIdle");
return new AsyncPixelTransferManagerIdle;
+ }
case gfx::kGLImplementationMockGL:
return new AsyncPixelTransferManagerStub;
default:
#
##
# diffing platform/external/sepolicy
##
#
diff --git a/domain.te b/domain.te
index 6b025e3..cb1c4f3 100644
--- a/domain.te
+++ b/domain.te
@@ -255,7 +255,7 @@ neverallow { domain -kernel -init -recovery -vold -uncrypt -install_recovery } b
# Don't allow raw read/write/open access to generic devices.
# Rather force a relabel to a more specific type.
# ueventd is exempt from this, as its managing these devices.
-neverallow { domain -unconfineddomain -ueventd } device:chr_file { open read write };
+neverallow { domain -unconfineddomain -ueventd -recovery } device:chr_file { open read write };
# Limit what domains can mount filesystems or change their mount flags.
# sdcard_type / vfat is exempt as a larger set of domains need
@@ -290,7 +290,7 @@ neverallow { domain -recovery } { system_file exec_type }:dir_file_class_set
{ create write setattr relabelfrom relabelto append unlink link rename };
# Nothing should be writing to files in the rootfs.
-neverallow domain rootfs:file { create write setattr relabelto append unlink link rename };
+neverallow { domain -recovery } rootfs:file { create write setattr relabelto append unlink link rename };
# Restrict context mounts to specific types marked with
# the contextmount_type attribute.
#
##
# diffing platform/frameworks/base
##
#
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
index 4f41cd5..fabdf29 100644
--- a/packages/SystemUI/res/values/dimens.xml
+++ b/packages/SystemUI/res/values/dimens.xml
@@ -63,6 +63,8 @@
<!-- thickness (height) of the navigation bar on phones that require it -->
<dimen name="navigation_bar_size">@*android:dimen/navigation_bar_height</dimen>
+ <!-- Minimum swipe distance to catch the swipe gestures to invoke assist or switch tasks. -->
+ <dimen name="navigation_bar_min_swipe_distance">48dp</dimen>
<!-- thickness (height) of the dead zone at the top of the navigation bar,
reducing false presses on navbar buttons; approx 2mm -->
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/DelegateViewHelper.java b/packages/SystemUI/src/com/android/systemui/statusbar/DelegateViewHelper.java
index 628aab8..7ae6764 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/DelegateViewHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/DelegateViewHelper.java
@@ -17,10 +17,11 @@
package com.android.systemui.statusbar;
import android.app.StatusBarManager;
+import android.content.res.Resources;
import android.graphics.RectF;
import android.view.MotionEvent;
import android.view.View;
-import android.view.ViewConfiguration;
+import com.android.systemui.R;
public class DelegateViewHelper {
private View mDelegateView;
@@ -106,8 +107,8 @@ public class DelegateViewHelper {
public void setSourceView(View view) {
mSourceView = view;
if (mSourceView != null) {
- mTriggerThreshhold =
- ViewConfiguration.get(mSourceView.getContext()).getScaledPagingTouchSlop();
+ Resources r = mSourceView.getContext().getResources();
+ mTriggerThreshhold = r.getDimensionPixelSize(R.dimen.navigation_bar_min_swipe_distance);
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarViewTaskSwitchHelper.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarViewTaskSwitchHelper.java
index c253e19..fdfcdfb 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarViewTaskSwitchHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarViewTaskSwitchHelper.java
@@ -17,9 +17,11 @@
package com.android.systemui.statusbar.phone;
import android.content.Context;
+import android.content.res.Resources;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.view.ViewConfiguration;
+import com.android.systemui.R;
import com.android.systemui.statusbar.BaseStatusBar;
public class NavigationBarViewTaskSwitchHelper extends GestureDetector.SimpleOnGestureListener {
@@ -36,7 +38,8 @@ public class NavigationBarViewTaskSwitchHelper extends GestureDetector.SimpleOnG
public NavigationBarViewTaskSwitchHelper(Context context) {
ViewConfiguration configuration = ViewConfiguration.get(context);
- mScrollTouchSlop = 4 * configuration.getScaledTouchSlop();
+ Resources r = context.getResources();
+ mScrollTouchSlop = r.getDimensionPixelSize(R.dimen.navigation_bar_min_swipe_distance);
mMinFlingVelocity = configuration.getScaledMinimumFlingVelocity();
mTaskSwitcherDetector = new GestureDetector(context, this);
}
diff --git a/services/core/java/com/android/server/NativeDaemonConnector.java b/services/core/java/com/android/server/NativeDaemonConnector.java
index 96f9ab0..8c3b020 100644
--- a/services/core/java/com/android/server/NativeDaemonConnector.java
+++ b/services/core/java/com/android/server/NativeDaemonConnector.java
@@ -176,7 +176,6 @@ final class NativeDaemonConnector implements Runnable, Handler.Callback, Watchdo
if (buffer[i] == 0) {
final String rawEvent = new String(
buffer, start, i - start, StandardCharsets.UTF_8);
- log("RCV <- {" + rawEvent + "}");
boolean releaseWl = false;
try {
@@ -197,7 +196,6 @@ final class NativeDaemonConnector implements Runnable, Handler.Callback, Watchdo
mResponseQueue.add(event.getCmdNumber(), event);
}
} catch (IllegalArgumentException e) {
- log("Problem parsing message: " + rawEvent + " - " + e);
} finally {
if (releaseWl) {
mWakeLock.acquire();
@@ -209,7 +207,6 @@ final class NativeDaemonConnector implements Runnable, Handler.Callback, Watchdo
}
if (start == 0) {
final String rawEvent = new String(buffer, start, count, StandardCharsets.UTF_8);
- log("RCV incomplete <- {" + rawEvent + "}");
}
// We should end at the amount we read. If not, compact then
diff --git a/services/core/java/com/android/server/am/ProcessList.java b/services/core/java/com/android/server/am/ProcessList.java
index 5b22255..a4aff77 100644
--- a/services/core/java/com/android/server/am/ProcessList.java
+++ b/services/core/java/com/android/server/am/ProcessList.java
@@ -177,7 +177,7 @@ final class ProcessList {
// 1280x800 or larger screen with around 1GB RAM. Values are in KB.
private final int[] mOomMinFreeHigh = new int[] {
73728, 92160, 110592,
- 129024, 147456, 184320
+ 129024, 225000, 325000
};
// The actual OOM killer memory levels we are using.
private final int[] mOomMinFree = new int[mOomAdj.length];
@@ -235,22 +235,16 @@ final class ProcessList {
Slog.i("XXXXXX", "minfree_adj=" + minfree_adj + " minfree_abs=" + minfree_abs);
}
- // We've now baked in the increase to the basic oom values above, since
- // they seem to be useful more generally for devices that are tight on
- // memory than just for 64 bit. This should probably have some more
- // tuning done, so not deleting it quite yet...
- final boolean is64bit = false; //Build.SUPPORTED_64_BIT_ABIS.length > 0;
+ if (Build.SUPPORTED_64_BIT_ABIS.length > 0) {
+ // Increase the high min-free levels for cached processes for 64-bit
+ mOomMinFreeHigh[4] = 225000;
+ mOomMinFreeHigh[5] = 325000;
+ }
for (int i=0; i<mOomAdj.length; i++) {
int low = mOomMinFreeLow[i];
int high = mOomMinFreeHigh[i];
mOomMinFree[i] = (int)(low + ((high-low)*scale));
- if (is64bit) {
- // On 64 bit devices, we consume more baseline RAM, because 64 bit is cool!
- // To avoid being all pagey and stuff, scale up the memory levels to
- // give us some breathing room.
- mOomMinFree[i] = (3*mOomMinFree[i])/2;
- }
}
if (minfree_abs >= 0) {
#
##
# logging platform/art
##
#
commit 73b774ed015630a7e3f4699351744c572e2fbfc8
Merge: 8db4a40 2dfcc6e
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 17:46:49 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit 2dfcc6eda85237886cb149d1f9a8daa0aa5e302d
Merge: e016182 8db4a40
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 15:29:10 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit 8db4a405fe283d8769d5f38299d8692c009feb1a
Author: Brian Carlstrom <bdc@google.com>
Date: Fri Oct 31 00:01:54 2014 -0700
Fix FindDeclaredVirtualMethod(DexCache...) for miranda methods
If a class in classes.dex implements an interface from classes2.dex,
the miranda method will be in the dex cache for classes2.dex, but
pointed to by the virtual methods of the class in the dex caches for
classes.dex.
Therefore the fast path for DexCache::ResolveMethod that searches via
class and superclass virtual methods should ensure that any method
matching on dex method_idx should be from the same dex cache as the
class itself, which is not the case for miranda methods.
Bug: 18193682
Change-Id: I10da4f5472e929b3dc0be58051a726a4bc14e438
#
##
# logging platform/build
##
#
commit b4ad2f3b7cbfb8cec1123ad8756079d5223b0fc7
Author: The Android Automerger <android-build@google.com>
Date: Fri Nov 7 13:38:20 2014 -0800
"LRX21Q"
commit ebbdf8eaddc689ab7e6abb15b61dfaea1c349e11
Author: The Android Automerger <android-build@android.com>
Date: Thu Nov 6 17:50:45 2014 -0800
LRX21P
commit b63165630066ed442fc983e4425dd295ce4a5c46
Merge: 69a070b 3583942
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 17:46:49 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit 3583942d9871bb0fc108279b28d0a9c6854aeee4
Author: The Android Automerger <android-build@android.com>
Date: Thu Nov 6 15:46:33 2014 -0800
LRX21O
commit 51cd4a199f8f394817bd9e47ef46c9ef6803a045
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 15:30:21 2014 -0800
"LRX37"
commit 88bd8888fed0e9fcadcb949912042cddfc5575be
Merge: bf79546 69a070b
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 15:29:12 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit 69a070b016ed2c49b42e1226f020e78b3c71331c
Author: The Android Automerger <android-build@android.com>
Date: Fri Oct 31 18:07:31 2014 -0700
LRX21N
#
##
# logging device/asus/deb
##
#
commit 5d72f0d13f881c74714c383ba55ce91078f0757d
Merge: 11eca05 c38d347
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 17:46:48 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit c38d347249c4e38ef26b934f03bd91240d1e9ff2
Merge: 9531174 11eca05
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 15:29:03 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit 11eca0592242904ac296fe756137f431fff8e2fb
Author: Ed Tam <etam@google.com>
Date: Fri Oct 31 14:05:24 2014 -0700
deb: Disable diag device in normal mode.
Remove the diag device when the device is in normal mode.
Bug: 18203257
Change-Id: I79b3106f1ab0249459d8045b86cf63e227bf5c8c
#
##
# logging device/asus/flo
##
#
commit c64ea02810f716ccc16e16dbc566b89f4760db95
Merge: 9bc91f7 1a0d063
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 17:46:48 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit 1a0d06325794fb1eea7e27d2b12a67f6a62d3529
Merge: 61a7d13 9bc91f7
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 15:29:03 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit 9bc91f7460fe4e432f3432478a0b9fd0a6f0e059
Author: Ed Tam <etam@google.com>
Date: Fri Oct 31 14:02:49 2014 -0700
flo: Disable diag device in normal mode.
Remove the diag device when the device is in normal mode.
Bug: 18203257
Change-Id: I878ac648c49ef0940d55d5b6695bac24742847c8
#
##
# logging device/asus/grouper
##
#
commit b5717b8c1f2c5964099744e012264f15772c7d29
Author: Nick Kralevich <nnk@google.com>
Date: Fri Nov 7 12:04:45 2014 -0800
Allow recovery to create device nodes and modify rootfs
tilapia's OTA code for updating the radio image needs to
create files on rootfs and create a character device in /dev.
Allow it.
Bug: 18281224
Change-Id: Ic408c2b28e16a40650f71efe2f17fb0c2e71f97f
#
##
# logging device/asus/tilapia
##
#
commit ae2970154e78534a5bd61e5f651ac4e5b44e7750
Author: Nick Kralevich <nnk@google.com>
Date: Fri Nov 7 09:38:15 2014 -0800
Ensure /radio directory exists in recovery
This directory is needed for nakasig radio OTAs to be successfully
applied.
Bug: 18281224
Change-Id: I9319c3105c5d5aad5c6e21d5c60cf83043a25a1f
#
##
# logging device/htc/flounder-kernel
##
#
commit 714a2053d38fe9938719c1ed6fe6f2fe56342bbe
Author: Riley Andrews <riandrews@google.com>
Date: Thu Nov 6 12:04:33 2014 -0800
flounder: update kernel prebuilt [DO NOT MERGE]
3846f1 Turn off memory cgroups.
Bug: 18248535
Change-Id: Id713ca0bbcf423529a707575bdb88c4dc46fc0fa
Signed-off-by: Riley Andrews <riandrews@google.com>
#
##
# logging device/lge/mako
##
#
commit 65cc66362d1ec952e0e62ea091b4fcf14579283f
Merge: 638637c a814f0d
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 17:46:49 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit a814f0d334c8be47b1f3b472e03535aa413d585e
Merge: 738c110 638637c
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 15:29:08 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit 638637c3bd6eaf83ee7769678d105ffbb42db2d4
Author: Vineeta Srivastava <vsrivastava@google.com>
Date: Fri Oct 31 16:58:43 2014 -0700
remove /dev/diag node
Bug: 18203257
Change-Id: I7b9a2bdf0df6511317d59aa13fc187ab38795481
commit 8812c49111e83554821c73296341adf05a490d7f
Author: Ed Tam <etam@google.com>
Date: Thu Oct 30 11:09:21 2014 -0700
Fix wifi startup timing issue
Bug: 17358965
Change-Id: Iacafcf1a1a9fed9755912b591eacdefd6992b088
#
##
# logging platform/external/bluetooth/bluedroid
##
#
commit 97204af05941a3dbbc0a2f6d49457c3ace5f7f86
Author: Andre Eisenbach <eisenbach@google.com>
Date: Tue Nov 4 15:23:02 2014 -0800
HOGP: Do not remove device from whitelist on encryption failure
If the encryption times out during the re-connect process for a HOGP
device, the device is removed from the whitelist and thus will not
reconnect until it is added back to the list. On platforms that do not
have a way to reconnect to a device manually, this means the device will
never reconnect again until the stack is restarted.
This patch checks the reason for the encryption failure and does not
remove the device from the whitelist if the encryption failed to a non
authentication/key related error.
Bug: 18233442
Change-Id: Ifaec4a9224ff9281956715b38d34c2d7c3fecb01
#
##
# logging platform/external/chromium_org
##
#
commit 4a921f167715e2db02720521ccf02e271ee5d83b
Merge: 565a27a 1ee1411
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 17:47:05 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit 1ee14113858b8de7bc2cea5a9cc18a18efba3a87
Merge: 95b575e 565a27a
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 15:29:41 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit 565a27a027a233e31dc6dc6ea43d34971a1e3f83
Author: Ben Murdoch <benm@google.com>
Date: Fri Oct 31 11:53:36 2014 +0000
Cherry pick "Fixes bug in GinJavaBridgeDispatcherHost"
Original description:
Fixes bug in GinJavaBridgeDispatcherHost
My try job kept failing on android and I finally tracked it down to
this code. GinJavaBridgeDispatcherHost::RemoveNamedObject may be
invoked with a value that comes from named_objects_ (see
AddNamedObject). RemoveNamedObject removes from named_object_ and then
uses the passed in value. If this happens |name| is no longer valid
and shouldn't be used.
BUG=none
TEST=none
R=mnaganov@chromium.org
TBR=mnaganov@chromium.org
Committed:
https://src.chromium.org/viewvc/chrome?view=rev&revision=288861
Bug: 17973356
Change-Id: I71ecab488994362f02ca7dbbe9a35e9514ee33fd
commit 36f35847f858e779382cc3f68f96b9ff6e237dde
Author: sievers <sievers@chromium.org>
Date: Mon Sep 15 19:23:50 2014 -0700
Cherry-pick: android: Disable transfer thread on Adreno 420
Cherry-pick of chromium crrev.com/b46831d14f773db39a3e90dc01281bff3c269649
Conflicts:
gpu/command_buffer/service/async_pixel_transfer_manager_android.cc
Change-Id: I088f1a397f623d7acb59308494459163decf1432
BUG: 18178303
#
##
# logging platform/external/sepolicy
##
#
commit 296b3f5e10b903cbd7594701c8eaf9ed2418ec3b
Author: Nick Kralevich <nnk@google.com>
Date: Fri Nov 7 12:02:27 2014 -0800
Allow recovery to create device nodes and modify rootfs
tilapia's OTA code for updating the radio image needs to
create files on rootfs and create a character device in /dev.
Add an exception for recovery the the various neverallow rules
blocking this behavior.
Bug: 18281224
Change-Id: I5c57afe0a10b4598fea17f9c5c833bd39551907e
#
##
# logging platform/frameworks/base
##
#
commit c482a9d86ea22c002fff1b5435a61ccba2149008
Author: Winson Chung <winsonc@google.com>
Date: Wed Nov 5 13:41:12 2014 -0800
Increasing the min swipe thresholds for the nav bar gestures. (Bug 17109581)
Change-Id: I1bcf6f91f616890f0e815db33267c5230ae9c76f
(cherry picked from commit 559e6d34b4e76ee21dc6e300681c399ed735a964)
commit 5a150e4426d1967276bc11c708c4c3d9be7c6a68
Author: Andres Morales <anmorales@google.com>
Date: Tue Nov 4 14:56:16 2014 -0800
[DO NOT MERGE] Increase min free levels for cached processes on 64bit
Requires less memory pressure to start killing cached
processes.
Change-Id: Ia02f5aee115535badc900330b9361f0099203e4f
commit a14d782502116d60474a80fe7a914a7c4dba4af9
Author: Paul Lawrence <paullawrence@google.com>
Date: Wed Nov 5 14:36:34 2014 -0800
DO NOT MERGE: Don't log passwords returned from vdc
Turns off logging of responses from native daemon connector altogether.
Proper solution to follow in LMP MR1
Bug: 18260068
Change-Id: I25bc9cb61049a3efdd9a9cd11195864a04ef05fd
commit b2ef7bfe98a4fc1092372bbd9e573f5811b3a15f
Merge: ba35a77 38c2eae
Author: The Android Automerger <android-build@google.com>
Date: Thu Nov 6 17:47:12 2014 -0800
merge in lmp-release history after reset to lmp-dev
commit 38c2eaeefd3b6643e2fcdc4830739d7b80c6a207
Author: Paul Lawrence <paullawrence@google.com>
Date: Wed Nov 5 14:36:34 2014 -0800
DO NOT MERGE: Don't log passwords returned from vdc
Turns off logging of responses from native daemon connector altogether.
Proper solution to follow in LMP MR1
Bug: 18260068
Change-Id: I25bc9cb61049a3efdd9a9cd11195864a04ef05fd
#
##
# logging platform/art
##
#
73b774ed015630a7e3f4699351744c572e2fbfc8 merge in lmp-release history after reset to lmp-dev
2dfcc6eda85237886cb149d1f9a8daa0aa5e302d merge in lmp-release history after reset to lmp-dev
8db4a405fe283d8769d5f38299d8692c009feb1a Fix FindDeclaredVirtualMethod(DexCache...) for miranda methods
#
##
# logging platform/build
##
#
b4ad2f3b7cbfb8cec1123ad8756079d5223b0fc7 "LRX21Q"
ebbdf8eaddc689ab7e6abb15b61dfaea1c349e11 LRX21P
b63165630066ed442fc983e4425dd295ce4a5c46 merge in lmp-release history after reset to lmp-dev
3583942d9871bb0fc108279b28d0a9c6854aeee4 LRX21O
51cd4a199f8f394817bd9e47ef46c9ef6803a045 "LRX37"
88bd8888fed0e9fcadcb949912042cddfc5575be merge in lmp-release history after reset to lmp-dev
69a070b016ed2c49b42e1226f020e78b3c71331c LRX21N
#
##
# logging device/asus/deb
##
#
5d72f0d13f881c74714c383ba55ce91078f0757d merge in lmp-release history after reset to lmp-dev
c38d347249c4e38ef26b934f03bd91240d1e9ff2 merge in lmp-release history after reset to lmp-dev
11eca0592242904ac296fe756137f431fff8e2fb deb: Disable diag device in normal mode.
#
##
# logging device/asus/flo
##
#
c64ea02810f716ccc16e16dbc566b89f4760db95 merge in lmp-release history after reset to lmp-dev
1a0d06325794fb1eea7e27d2b12a67f6a62d3529 merge in lmp-release history after reset to lmp-dev
9bc91f7460fe4e432f3432478a0b9fd0a6f0e059 flo: Disable diag device in normal mode.
#
##
# logging device/asus/grouper
##
#
b5717b8c1f2c5964099744e012264f15772c7d29 Allow recovery to create device nodes and modify rootfs
#
##
# logging device/asus/tilapia
##
#
ae2970154e78534a5bd61e5f651ac4e5b44e7750 Ensure /radio directory exists in recovery
#
##
# logging device/htc/flounder-kernel
##
#
714a2053d38fe9938719c1ed6fe6f2fe56342bbe flounder: update kernel prebuilt [DO NOT MERGE]
#
##
# logging device/lge/mako
##
#
65cc66362d1ec952e0e62ea091b4fcf14579283f merge in lmp-release history after reset to lmp-dev
a814f0d334c8be47b1f3b472e03535aa413d585e merge in lmp-release history after reset to lmp-dev
638637c3bd6eaf83ee7769678d105ffbb42db2d4 remove /dev/diag node
8812c49111e83554821c73296341adf05a490d7f Fix wifi startup timing issue
#
##
# logging platform/external/bluetooth/bluedroid
##
#
97204af05941a3dbbc0a2f6d49457c3ace5f7f86 HOGP: Do not remove device from whitelist on encryption failure
#
##
# logging platform/external/chromium_org
##
#
4a921f167715e2db02720521ccf02e271ee5d83b merge in lmp-release history after reset to lmp-dev
1ee14113858b8de7bc2cea5a9cc18a18efba3a87 merge in lmp-release history after reset to lmp-dev
565a27a027a233e31dc6dc6ea43d34971a1e3f83 Cherry pick "Fixes bug in GinJavaBridgeDispatcherHost"
36f35847f858e779382cc3f68f96b9ff6e237dde Cherry-pick: android: Disable transfer thread on Adreno 420
#
##
# logging platform/external/sepolicy
##
#
296b3f5e10b903cbd7594701c8eaf9ed2418ec3b Allow recovery to create device nodes and modify rootfs
#
##
# logging platform/frameworks/base
##
#
c482a9d86ea22c002fff1b5435a61ccba2149008 Increasing the min swipe thresholds for the nav bar gestures. (Bug 17109581)
5a150e4426d1967276bc11c708c4c3d9be7c6a68 [DO NOT MERGE] Increase min free levels for cached processes on 64bit
a14d782502116d60474a80fe7a914a7c4dba4af9 DO NOT MERGE: Don't log passwords returned from vdc
b2ef7bfe98a4fc1092372bbd9e573f5811b3a15f merge in lmp-release history after reset to lmp-dev
38c2eaeefd3b6643e2fcdc4830739d7b80c6a207 DO NOT MERGE: Don't log passwords returned from vdc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment