ARM: dts: msm: set rcu_expedited for msm chisets

While working on PCMark Photo Editing regression, found that
binder transactions sometimes take really long time 70+ms.
The reason for these long durations was cgroup write calling
percpu_down_write, which in turn calls synchronize_rcu.

This issue is very generic and impacts multiple real-world
use-cases involving all binder transactions.
   - All the launch applications also show it.
   - Systrace below is captured during launch of helloworld application.

Systrace clearly shows the regression:
Thread of interest: 562
Binder:528_1-562   (  528) [000] ...1    57.877862: \
                                         tracing_mark_write: B|528|Write
Binder:528_1-562   (  528) [000] ....    57.877905: \
                 __cgroup_procs_write.isra.30: percpu_down_write --> begin
Binder:528_1-562   (  528) [003] ....    57.926479: \
                 __cgroup_procs_write.isra.30: percpu_down_write --> end

To mitigate these performance issues, set rcu_expedited to use
expedited grace-period primitives.

CRs-Fixed: 1025554
Change-Id: I1a6e694591f41d6c3449e3f3d976650df93c5645
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
This commit is contained in:
Satya Durga Srinivasu Prabhala 2016-07-11 13:03:22 -07:00
parent f600d8b9ec
commit b093be62e8
2 changed files with 2 additions and 1 deletions

View file

@ -42,7 +42,7 @@
chosen {
stdout-path = "serial0";
bootargs = "sched_enable_hmp=1 sched_enable_power_aware=1";
bootargs = "sched_enable_hmp=1 sched_enable_power_aware=1 rcupdate.rcu_expedited=1";
};
psci {

View file

@ -34,6 +34,7 @@
chosen {
stdout-path = "serial0";
bootargs = "rcupdate.rcu_expedited=1";
};
cpus {