Skip to content

Instantly share code, notes, and snippets.

@xguerin
Created January 20, 2023 11:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save xguerin/c9d97ef50701bd247a219191cb37ec8a to your computer and use it in GitHub Desktop.
Save xguerin/c9d97ef50701bd247a219191cb37ec8a to your computer and use it in GitHub Desktop.
FTrace of a THP page fault on Linux 5.19.0
250953 [005] 44480.180435126: user_exit:
250953 [005] 44480.180435252: function: down_read_trylock
250953 [005] 44480.180435332: function: find_vma
250953 [005] 44480.180435414: function: vmacache_find
250953 [005] 44480.180435719: function: vmacache_update
250953 [005] 44480.180435802: function: handle_mm_fault
250953 [005] 44480.180435881: function: mem_cgroup_from_task
250953 [005] 44480.180435979: function: __count_memcg_events
250953 [005] 44480.180436056: function: cgroup_rstat_updated
250953 [005] 44480.180436157: function: __handle_mm_fault
250953 [005] 44480.180436325: function: do_huge_pmd_anonymous_page
250953 [005] 44480.180436467: function: vma_thp_gfp_mask
250953 [005] 44480.180436550: function: vma_alloc_folio
250953 [005] 44480.180436636: function: __get_vma_policy
250953 [005] 44480.180436787: function: policy_nodemask
250953 [005] 44480.180436878: function: __folio_alloc
250953 [005] 44480.180436973: function: __alloc_pages
250953 [005] 44480.180437074: function: should_fail_alloc_page
250953 [005] 44480.180437298: function: __next_zones_zonelist
250953 [005] 44480.180437412: function: get_page_from_freelist
250953 [005] 44480.180437548: function: __zone_watermark_ok
250953 [005] 44480.180557118: function: prep_compound_page
250953 [005] 44480.180560374: function: prep_transhuge_page
250953 [005] 44480.180560449: function: __mem_cgroup_charge
250953 [005] 44480.180560535: function: get_mem_cgroup_from_mm
250953 [005] 44480.180560653: function: charge_memcg
250953 [005] 44480.180560747: function: try_charge_memcg
250953 [005] 44480.180560838: function: do_memsw_account
250953 [005] 44480.180560931: function: page_counter_try_charge
250953 [005] 44480.180561044: function: propagate_protected_usage
250953 [005] 44480.180561160: function: propagate_protected_usage
250953 [005] 44480.180561317: function: propagate_protected_usage
250953 [005] 44480.180561440: function: propagate_protected_usage
250953 [005] 44480.180561605: function: mem_cgroup_charge_statistics
250953 [005] 44480.180561680: function: cgroup_rstat_updated
250953 [005] 44480.180561763: function: memcg_check_events
250953 [005] 44480.180561855: function: __mem_cgroup_threshold
250953 [005] 44480.180561928: function: do_memsw_account
250953 [005] 44480.180561998: function: __mem_cgroup_threshold
250953 [005] 44480.180562073: function: do_memsw_account
250953 [005] 44480.180562146: function: __mem_cgroup_threshold
250953 [005] 44480.180562216: function: do_memsw_account
250953 [005] 44480.180562287: function: __mem_cgroup_threshold
250953 [005] 44480.180562361: function: do_memsw_account
250953 [005] 44480.180562486: function: __cgroup_throttle_swaprate
250953 [005] 44480.180562574: function: blk_cgroup_congested
250953 [005] 44480.180562655: function: kthread_blkcg
250953 [005] 44480.180562766: function: pte_alloc_one
250953 [005] 44480.180562836: function: alloc_pages
250953 [005] 44480.180562913: function: policy_nodemask
250953 [005] 44480.180562997: function: policy_node
250953 [005] 44480.180563090: function: __alloc_pages
250953 [005] 44480.180563176: function: should_fail_alloc_page
250953 [005] 44480.180563249: function: __next_zones_zonelist
250953 [005] 44480.180563322: function: get_page_from_freelist
250953 [005] 44480.180563865: function: __memcg_kmem_charge_page
250953 [005] 44480.180563961: function: __get_obj_cgroup_from_memcg
250953 [005] 44480.180564075: function: try_charge_memcg
250953 [005] 44480.180564178: function: memcg_account_kmem
250953 [005] 44480.180564259: function: __mod_memcg_state
250953 [005] 44480.180564337: function: cgroup_rstat_updated
250953 [005] 44480.180564474: function: __mod_lruvec_page_state
250953 [005] 44480.180564577: function: __mod_lruvec_state
250953 [005] 44480.180564655: function: __mod_node_page_state
250953 [005] 44480.180564738: function: __mod_memcg_lruvec_state
250953 [005] 44480.180564870: function: cgroup_rstat_updated
250953 [005] 44480.180564976: function: clear_huge_page
250953 [005] 44480.180565078: function: __cond_resched
250953 [005] 44480.180565161: function: rcu_all_qs
...
250953 [005] 44480.180698916: function: __cond_resched
250953 [005] 44480.180698984: function: rcu_all_qs
250953 [005] 44480.180699185: function: _raw_spin_lock
250953 [005] 44480.180699499: function: __mod_lruvec_page_state
250953 [005] 44480.180699593: function: __mod_lruvec_state
250953 [005] 44480.180699663: function: __mod_node_page_state
250953 [005] 44480.180699744: function: __mod_memcg_lruvec_state
250953 [005] 44480.180699822: function: cgroup_rstat_updated
250953 [005] 44480.180699918: function: __free_pages
250953 [005] 44480.180700031: function: free_unref_page
250953 [005] 44480.180700113: function: free_pcp_prepare
250953 [005] 44480.180700192: function: __memcg_kmem_uncharge_page
250953 [005] 44480.180700270: function: obj_cgroup_uncharge_pages
250953 [005] 44480.180700350: function: memcg_account_kmem
250953 [005] 44480.180700423: function: __mod_memcg_state
250953 [005] 44480.180700497: function: cgroup_rstat_updated
250953 [005] 44480.180700578: function: refill_stock
250953 [005] 44480.180700666: function: __refill_stock
250953 [005] 44480.180700852: function: free_unref_page_commit
250953 [005] 44480.180701188: function: __put_page
250953 [005] 44480.180701270: function: PageHuge
250953 [005] 44480.180701448: function: __page_cache_release
250953 [005] 44480.180701742: function: free_transhuge_page
250953 [005] 44480.180701826: function: _raw_spin_lock_irqsave
250953 [005] 44480.180701930: function: __cpuidle_text_end
250953 [005] 44480.180702027: function: free_compound_page
250953 [005] 44480.180702115: function: __mem_cgroup_uncharge
250953 [005] 44480.180702234: function: uncharge_folio
250953 [005] 44480.180702401: function: uncharge_batch
250953 [005] 44480.180702488: function: page_counter_uncharge
250953 [005] 44480.180702563: function: page_counter_cancel
250953 [005] 44480.180702665: function: propagate_protected_usage
250953 [005] 44480.180702746: function: page_counter_cancel
250953 [005] 44480.180702838: function: propagate_protected_usage
250953 [005] 44480.180702914: function: page_counter_cancel
250953 [005] 44480.180703007: function: propagate_protected_usage
250953 [005] 44480.180703083: function: page_counter_cancel
250953 [005] 44480.180703162: function: propagate_protected_usage
250953 [005] 44480.180703270: function: do_memsw_account
250953 [005] 44480.180703357: function: __count_memcg_events
250953 [005] 44480.180703430: function: cgroup_rstat_updated
250953 [005] 44480.180703535: function: memcg_check_events
250953 [005] 44480.180703636: function: __mem_cgroup_threshold
250953 [005] 44480.180703709: function: do_memsw_account
250953 [005] 44480.180703792: function: __mem_cgroup_threshold
250953 [005] 44480.180703881: function: do_memsw_account
250953 [005] 44480.180703952: function: __mem_cgroup_threshold
250953 [005] 44480.180704024: function: do_memsw_account
250953 [005] 44480.180704095: function: __mem_cgroup_threshold
250953 [005] 44480.180704168: function: do_memsw_account
250953 [005] 44480.180704397: function: free_unref_page
250953 [005] 44480.180704466: function: free_pcp_prepare
250953 [005] 44480.180706179: function: free_unref_page_commit
250953 [005] 44480.180706387: function: up_read
250953 [005] 44480.180706516: function: exit_to_user_mode_prepare
250953 [005] 44480.180706613: function: rcu_nocb_flush_deferred_wakeup
250953 [005] 44480.180706698: function: fpregs_assert_state_consistent
250953 [005] 44480.180706812: user_enter:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment