On Thu, Nov 4, 2021 at 5:17 PM Mel Gorman wrote: > On Thu, Nov 04, 2021 at 02:47:03AM +0800, Jimmy Shiu wrote: > > trace_sched_blocked_trace in CFS is really useful for debugging via > > trace because it tell where the process was stuck on callstack. > > > > For example, > > <...>-6143 ( 6136) [005] d..2 50.278987: > sched_blocked_reason: pid=6136 iowait=0 caller=SyS_mprotect+0x88/0x208 > > <...>-6136 ( 6136) [005] d..2 50.278990: > sched_blocked_reason: pid=6142 iowait=0 caller=do_page_fault+0x1f4/0x3b0 > > <...>-6142 ( 6136) [006] d..2 50.278996: > sched_blocked_reason: pid=6144 iowait=0 caller=SyS_prctl+0x52c/0xb58 > > <...>-6144 ( 6136) [006] d..2 50.279007: > sched_blocked_reason: pid=6136 iowait=0 caller=vm_mmap_pgoff+0x74/0x104 > > > > However, sometime it gives pointless information like this. > > RenderThread-2322 ( 1805) [006] d.s3 50.319046: > sched_blocked_reason: pid=6136 iowait=1 > caller=__lock_page_killable+0x17c/0x220 > > logd.writer-594 ( 587) [002] d.s3 50.334011: > sched_blocked_reason: pid=6126 iowait=1 caller=wait_on_page_bit+0x194/0x208 > > kworker/u16:13-333 ( 333) [007] d.s4 50.343161: > sched_blocked_reason: pid=6136 iowait=1 > caller=__lock_page_killable+0x17c/0x220 > > > > /me peers at coffee > > Maybe I'm blind but aside from Matthew's concerns, this > appears to rely on an Android patch that is not upstream > > https://android.googlesource.com/kernel/msm/+/c9f00aa0e25e397533c198a0fcf6246715f99a7b%5E!/ Yes, Mel. The main purpose is to help get_wchan() to get the meaningful information of the schedule() caller and can also benefit to Android sched_blocked_reason trace. Maybe I should edit the commit message and remove the Android specific logs. Would that be OK? > > > -- > Mel Gorman > SUSE Labs >