You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
457 lines
25 KiB
457 lines
25 KiB
// SPDX-License-Identifier: GPL-2.0-only
|
|
/* vendor_hook.c
|
|
*
|
|
* Android Vendor Hook Support
|
|
*
|
|
* Copyright 2020 Google LLC
|
|
*/
|
|
|
|
#include <linux/iova.h>
|
|
#include <linux/dma-buf.h>
|
|
#include <linux/futex.h>
|
|
#include <linux/pm_qos.h>
|
|
|
|
#define CREATE_TRACE_POINTS
|
|
#include <trace/hooks/vendor_hooks.h>
|
|
#include <linux/tracepoint.h>
|
|
|
|
#include <trace/hooks/fpsimd.h>
|
|
#include <trace/hooks/binder.h>
|
|
#include <trace/hooks/dtask.h>
|
|
#include <trace/hooks/cpuidle.h>
|
|
#include <trace/hooks/mpam.h>
|
|
#include <trace/hooks/wqlockup.h>
|
|
#include <trace/hooks/debug.h>
|
|
#include <trace/hooks/sysrqcrash.h>
|
|
#include <trace/hooks/printk.h>
|
|
#include <trace/hooks/epoch.h>
|
|
#include <trace/hooks/cpufreq.h>
|
|
#include <trace/hooks/fs.h>
|
|
#include <trace/hooks/preemptirq.h>
|
|
#include <trace/hooks/ftrace_dump.h>
|
|
#include <trace/hooks/ufshcd.h>
|
|
#include <trace/hooks/mmc.h>
|
|
#include <trace/hooks/cgroup.h>
|
|
#include <trace/hooks/sys.h>
|
|
#include <trace/hooks/iommu.h>
|
|
#include <trace/hooks/mm.h>
|
|
#include <trace/hooks/net.h>
|
|
#include <trace/hooks/pm_domain.h>
|
|
#include <trace/hooks/cpuidle_psci.h>
|
|
#include <trace/hooks/vmscan.h>
|
|
#include <trace/hooks/avc.h>
|
|
#include <trace/hooks/creds.h>
|
|
#include <trace/hooks/module.h>
|
|
#include <trace/hooks/selinux.h>
|
|
#include <trace/hooks/syscall_check.h>
|
|
#include <trace/hooks/remoteproc.h>
|
|
#include <trace/hooks/rwsem.h>
|
|
#include <trace/hooks/futex.h>
|
|
#include <trace/hooks/fips140.h>
|
|
#include <trace/hooks/dmabuf.h>
|
|
#include <trace/hooks/gic.h>
|
|
#include <trace/hooks/gic_v3.h>
|
|
#include <trace/hooks/timer.h>
|
|
#include <trace/hooks/topology.h>
|
|
#include <trace/hooks/hung_task.h>
|
|
#include <trace/hooks/bug.h>
|
|
#include <trace/hooks/softlockup.h>
|
|
#include <trace/hooks/power.h>
|
|
#include <trace/hooks/fault.h>
|
|
#include <trace/hooks/traps.h>
|
|
#include <trace/hooks/thermal.h>
|
|
#include <trace/hooks/audio_usboffload.h>
|
|
#include <trace/hooks/typec.h>
|
|
#include <trace/hooks/user.h>
|
|
#include <trace/hooks/signal.h>
|
|
#include <trace/hooks/psci.h>
|
|
#include <trace/hooks/psi.h>
|
|
#include <trace/hooks/bl_hib.h>
|
|
#include <trace/hooks/regmap.h>
|
|
#include <trace/hooks/compaction.h>
|
|
#include <trace/hooks/suspend.h>
|
|
#include <trace/hooks/delayacct.h>
|
|
#include <trace/hooks/usb.h>
|
|
#include <trace/hooks/sound.h>
|
|
#include <trace/hooks/fuse.h>
|
|
|
|
/*
|
|
* Export tracepoints that act as a bare tracehook (ie: have no trace event
|
|
* associated with them) to allow external modules to probe them.
|
|
*/
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sk_alloc);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sk_free);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_nf_conn_alloc);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_nf_conn_free);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_refrigerator);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_arch_set_freq_scale);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_is_fpsimd_save);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_transaction_init);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_priority_skip);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_set_priority);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_restore_priority);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_wakeup_ilocked);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_do_send_sig_info);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_killed_process);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_wait_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_wait_finish);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_init);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_task_blocks_on_rtmutex);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rtmutex_waiter_prio);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rtmutex_wait_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rtmutex_wait_finish);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rt_mutex_steal);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_madvise_cold_or_pageout_page);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_opt_spin_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_opt_spin_finish);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_can_spin_on_owner);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_read_wait_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_read_wait_finish);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_write_wait_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_write_wait_finish);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_opt_spin_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_opt_spin_finish);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_can_spin_on_owner);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sched_show_task);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_direct_rsteal);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_optimistic_rspin);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpu_idle_enter);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpu_idle_exit);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mpam_set);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_wq_lockup_pool);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ipi_stop);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sysrq_crash);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_printk_hotplug);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_show_suspend_epoch_val);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_show_resume_epoch_val);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_freq_table_limits);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpufreq_resolve_freq);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpufreq_fast_switch);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpufreq_target);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_preempt_disable);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_preempt_enable);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_irqs_disable);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_irqs_enable);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_cpu_cgroup_attach);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_cpu_cgroup_online);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_meminfo_cache_adjust);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_si_mem_available_adjust);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_si_meminfo_adjust);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ftrace_oops_enter);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ftrace_oops_exit);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ftrace_size_check);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ftrace_format_check);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ftrace_dump_buffer);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_thermal_pm_notify_suspend);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_fill_prdt);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_ufs_reprogram_all_keys);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_ufs_complete_init);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_prepare_command);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_update_sysfs);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_send_command);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_compl_command);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cgroup_set_task);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_cgroup_force_kthread_migration);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_syscall_prctl_finished);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_send_uic_command);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_send_tm_command);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_check_int_errors);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_update_sdev);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_clock_scaling);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_use_mcq_hooks);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ufs_mcq_abort);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cgroup_attach);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_iommu_setup_dma_ops);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_iommu_alloc_insert_iova);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_iommu_iovad_alloc_iova);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_iommu_iovad_free_iova);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_iommu_iovad_init_alloc_algo);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_iommu_limit_align_shift);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ptype_head);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_allow_domain_state);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpuidle_psci_enter);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpuidle_psci_exit);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_wait_for_work);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_proc_transaction_finish);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_proc_transaction_entry);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_select_worklist_ilocked);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_select_special_worklist);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sync_txn_recvd);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_cpufreq_transition);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_freq_qos_add_request);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_freq_qos_update_request);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_freq_qos_remove_request);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_balance_anon_file_reclaim);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_show_max_freq);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_dm_bufio_shrink_scan_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cleanup_old_buffers_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_free_unref_page_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_kvmalloc_node_use_vmalloc);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_should_alloc_pages_retry);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_unreserve_highatomic_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rmqueue_bulk_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ra_tuning_max_page);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_tune_mmap_readaround);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_selinux_avc_insert);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_selinux_avc_node_delete);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_selinux_avc_node_replace);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_selinux_avc_lookup);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_commit_creds);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_exit_creds);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_override_creds);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_revert_creds);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_record_mutex_lock_starttime);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_record_rtmutex_lock_starttime);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_record_rwsem_lock_starttime);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_record_pcpu_rwsem_starttime);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_percpu_rwsem_wq_add);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_module_core_rw_nx);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_module_init_rw_nx);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_module_permit_before_init);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_module_permit_after_init);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_selinux_is_initialized);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_shmem_get_folio);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_record_pcpu_rwsem_time_early);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_mmap_file);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_file_open);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_bpf_syscall);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ignore_dmabuf_vmap_bounds);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rproc_recovery);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rproc_recovery_set);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_init);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_wake);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_write_finished);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alter_rwsem_list_add);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alter_futex_plist_add);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_futex_sleep_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_do_futex);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_futex_wait_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_futex_wait_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_futex_wake_traverse_plist);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_futex_wake_this);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_futex_wake_up_q_finish);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sha256);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_aes_expandkey);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_aes_encrypt);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_aes_decrypt);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_timer_calc_index);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_gic_v3_set_affinity);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_gic_set_affinity);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_gic_v3_affinity_init);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_uninterrupt_tasks);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_uninterrupt_tasks_done);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_meminfo_proc_show);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_meminfo_proc_show);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_exit_mm);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_pages_slowpath);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_show_mem);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_print_slabinfo_header);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cache_show);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_report_bug);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_watchdog_timer_softlockup);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_try_to_freeze_todo);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_try_to_freeze_todo_unfrozen);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_die_kernel_fault);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_do_sea);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_do_sp_pc_abort);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_try_fixup_sea);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_do_undefinstr);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_do_el1_bti);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_do_el1_fpac);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_panic_unhandled);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_arm64_serror_panic);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_disable_thermal_cooling_stats);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_gic_resume);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_gic_v3_suspend);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_audio_usb_offload_connect);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_audio_usb_offload_disconnect);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_kswapd_per_node);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_typec_tcpci_override_toggling);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_typec_tcpci_get_vbus);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_typec_store_partner_src_caps);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_typec_tcpm_get_timer);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_typec_tcpm_modify_src_caps);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_typec_tcpm_log);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_gfp_zone_flags);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_readahead_gfp_mask);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alter_mutex_list_add);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_unlock_slowpath);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_should_fault_around);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_wake_finish);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_tune_fault_around_bytes);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_adjust_alloc_flags);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_adjust_kvmalloc_flags);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_looper_state_registered);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_thread_read);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_free_proc);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_thread_release);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_has_work_ilocked);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_read_done);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_preset);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_uid);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_free_user);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mem_cgroup_id_remove);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mem_cgroup_css_offline);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mem_cgroup_css_online);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mem_cgroup_free);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mem_cgroup_alloc);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_cpuset_fork);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_alloc_new_buf_locked);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_reply);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_trans);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmap_region);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_try_to_unmap_one);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_shrink_slab_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_do_shrink_slab);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_get_page_wmark);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_page_add_new_anon_rmap);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_psci_tos_resident_on);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_psci_cpu_suspend);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_psi_event);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_psi_group);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpufreq_acct_update_power);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_modify_scan_control);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_should_continue_reclaim);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_file_is_tiny_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_mmc_resume);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_mmc_suspend);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmc_update_mmc_queue);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_exit_signal);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_shrink_node_memcgs);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_modify_thermal_request_freq);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_modify_thermal_target_freq);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_proc_transaction);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_new_ref);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_del_ref);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_thermal_register);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_thermal_unregister);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_get_thermal_zone_device);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_thermal_power_cap);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_enable_thermal_power_throttle);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_read_pages);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_pages_reclaim_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_pages_failure_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_madvise_pageout_swap_entry);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_madvise_swapin_walk_pmd_entry);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_process_madvise_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_madvise_pageout_begin);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_madvise_pageout_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_reclaim_folio_list);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_mapping_shrinkable);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_smaps_pte_entry);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_show_smap);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_ctl_dirty_rate);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_hibernation_swap);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_save_cpu_resume);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_save_hib_resume_bdev);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_encrypt_page);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_init_aes_encrypt);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_skip_swap_map_write);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_post_image_save);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_madvise_cold_pageout_skip);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rmqueue_smallest_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_free_one_page_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_regmap_update);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_enable_thermal_genl_check);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_folio_look_around_ref);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_look_around);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_look_around_migrate_folio);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_test_clear_look_around_ref);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_tune_scan_type);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_tune_swappiness);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_exit_signal_whether_wake);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_exit_check);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_freeze_whether_wake);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_use_amu_fie);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_scan_abort_check_wmarks);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_oem_binder_struct);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_transaction_received);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_free_oem_binder_struct);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_special_task);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_free_buf);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_buffer_release);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_compaction_exit);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_compaction_try_to_compact_pages_exit);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_alloc_pages_direct_reclaim_enter);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_alloc_pages_direct_reclaim_exit);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_alloc_pages_may_oom_exit);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_vmscan_kswapd_done);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_compaction_begin);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_compaction_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_kcompactd_cpu_online);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_bus_iommu_probe);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rmqueue);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_resume_begin);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_resume_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_early_resume_begin);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_filemap_get_folio);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmc_blk_mq_rw_recovery);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sd_update_bus_speed_mode);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_slab_folio_alloced);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_kmalloc_large_alloced);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_netlink_poll);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ep_create_wakeup_source);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_timerfd_create);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_ioctl_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_looper_exited);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_spawn_new_thread);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_has_special_work_ilocked);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_detect_low_async_space);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_delayacct_init);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_delayacct_tsk_init);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_delayacct_tsk_free);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_blkio_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_blkio_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_add_tsk);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_blkio_ticks);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_freepages_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_freepages_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_thrashing_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_thrashing_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_swapin_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_swapin_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_compact_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_compact_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_wpcopy_start);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_wpcopy_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_usb_dev_suspend);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_usb_dev_resume);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sound_usb_support_cpu_suspend);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_hibernated_do_mem_alloc);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_hibernate_save_cmp_len);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_read_lazy_flag);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_tsk_need_resched_lazy);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_do_read_fault);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_queue_request_and_unlock);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_fuse_request_end);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_read_trylock_failed);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_shmem_swapin_folio);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_do_wp_page);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_do_swap_page);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_do_anonymous_page);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_uprobes_replace_page);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_percpu_rwsem_down_read);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_percpu_rwsem_up_write);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_percpu_rwsem_wait_complete);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_record_rwsem_reader_owned);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_clear_rwsem_reader_owned);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_record_rwsem_writer_owned);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_clear_rwsem_writer_owned);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_pr_set_vma_name_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_do_folio_trylock);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_get_folio_trylock_result);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_folio_trylock_clear);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_folio_trylock_set);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_handle_trylock_failed_folio);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_hibernate_state);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_page_should_be_protected);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_page_referenced_check_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_swapmem_gather_init);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_swapmem_gather_add_bypass);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_swapmem_gather_finish);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_oom_swapmem_gather_init);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_oom_swapmem_gather_finish);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_do_read_fault);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_filemap_read);
|
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_filemap_map_pages);
|