This change is for general scheduler improvement.
Change-Id: I4da8fd848f9cd43d510ac2ae63605f051e723775
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
When WALT disabled, compilation fails with some WALT specific functions.
Fix them.
Change-Id: I1f46894110f0c5fc46995f6af6e2daf04b71c068
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
When SCHED_BUG_ON() is hit, we are printing the current tasks of
all online CPUs. Accessing the task on the remote CPU is racy. It
can be made safe by incrementing the task struct reference and also
adding a check against the exiting flag. The WALT CPU load pointers
are freed only after setting the exiting flag. This exiting flag
check helps is not accessing the freed memory.
Change-Id: I2fcbd37e9e4f096da5372be041aec2b60da26341
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
This change is for general scheduler improvements.
Change-Id: If6802317f94e31230efd34773bb0d75ba62a5968
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
This change is for general scheduler improvements.
Change-Id: Ib8505248b91fb33395fe53f2dfacc8ec68c0273c
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
This change is for general scheduler improvements.
Change-Id: I567213580a970abc374d95e3d1fdc0aa73eaf705
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
This change is for general scheduler improvement.
Change-Id: I752b5518fd72f9c239d3f96e4c3e021a98a75684
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
If cluster topology parsing failed or system booted with single cpu,
then topology possible sibling mask could be empty. This leads to
initialization of sched_clusters with empty cpus and there are many
call sites, which use the cluster cpu mask without checking for empty mask.
They lead to accessing invalid cpus ( minus one) leading to crashes.
Fix it by resetting to an initial cluster structure that has all possible
cpus as cluster mask. Also, warn when an empty cluster is detected.
To continue using init_cluster on device tree failures:
- Use init_cluster as default entry in cluster_head, and once
cluster topology parsed successfully, cluster_head gets updated with
proper cpu cluster information.
- If cluster topology parsing failed, free allocated sched_clusters and
make sure rq points to init_cluster instead of invalid address.
- Remove unused cluster id bitmaps.
Change-Id: Ic65ba86ff90a271098fb593221d1679d634930b1
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
If walt causes BUG_ON, then dump all cpu's current walt status.
Change-Id: Ie4b0f19f9598714a5479dd6426d0cc769ec562b1
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
Signed-off-by: Sai Harshini Nimmala <snimmala@codeaurora.org>
This change is for general scheduler improvement.
Change-Id: Ic6be9069f6119d52e3915ea032f72ea35d27ee3e
Signed-off-by: Jonathan Avila <avilaj@codeaurora.org>
Signed-off-by: Sai Harshini Nimmala <snimmala@codeaurora.org>
This change is for general scheduler improvement.
Change-Id: Ida39a3ee5e6b4b0d3255bfef95601890afd80709
Signed-off-by: Shaleen Agrawal <shalagra@codeaurora.org>
This change is for general scheduler improvement.
Change-Id: I8ff4768d56d8e63b2cfa78e5f34cb156ee60e3da
Signed-off-by: Amir Vajid <avajid@codeaurora.org>
This change is for general scheduler improvement.
Change-Id: I737751f065df6a5ed3093e3bda5e48750a14e4c9
Signed-off-by: Amir Vajid <avajid@codeaurora.org>
This change is for general scheduler improvement.
Change-Id: I310bbdc19bb65a0c562ec6a208f2da713eba954d
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
This change is for general scheduler improvement.
Change-Id: I05a6645db80cc04993b45d7ec25a3fb7a112cf3e
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
This change is for general scheduler improvement.
Change-Id: I090ed8f91592646f11dd65bc83357945f02702cd
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
This snapshot is taken from msm-4.14 as of commit 43980276ecf9014
("sched/sched_avg: make number of running tasks conservative").
Change-Id: Ia5f608fe1c1715489e7c0fc6e5736b80bee5bae7
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
This snapshot is taken from msm-4.14 as of
commit 871eac76e6be567 ("sched: Improve the scheduler").
Change-Id: Ib4e0b39526d3009cedebb626ece5a767d8247846
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>