Merge branch 'android12-5.10' into branch 'android12-5.10-lts'
Sync up with android12-5.10 for the following commits:568ee90a7e
ANDROID: fix execute bit on android/abi_gki_aarch64_asus9ecb2fcca3
ANDROID: avoid huge-page not to clear trylock-bit after shrink_page_list.548da5d23d
ANDROID: vendor_hooks: Add hooks for oem futex optimization3c2f107ad2
ANDROID: mm: memblock: avoid to create memmap for memblock nomap regions97e5ac2b55
ANDROID: abi_gki_aarch64_qcom: Add android_vh_disable_thermal_cooling_statsa3e8b04796
ANDROID: thermal: vendor hook to disable thermal cooling statsa47cec9c43
ANDROID: GKI: Update symbols to symbol listf32894eadf
ANDROID: GKI: rockchip: update fragment file052619d9e1
ANDROID: GKI: rockchip: Enable symbols bcmdhd-sdio4f116d326e
ANDROID: GKI: rockchip: Update symbols for rga driverd1e180148e
BACKPORT: cgroup: Fix threadgroup_rwsem <-> cpus_read_lock() deadlockef04c4095d
UPSTREAM: cgroup: Elide write-locking threadgroup_rwsem when updating csses on an empty subtree15ad83d91f
ANDROID: GKI: Update symbol list for transsiona47fb6a9ae
ANDROID: vendor_hook: Add hook in __free_pages()6c56a05b87
ANDROID: vendor_hooks: Add hooks to extend the struct swap_info_struct7449d8120a
ANDROID: vendor_hook: Add hook in si_swapinfo()7ff95bd758
ANDROID: GKI: Update symbols to symbol list04c766fa76
ANDROID: Use rq_clock_task without CONFIG_SMP4e13870877
ANDROID: abi_gki_aarch64_qcom: Add skb and scatterlist helpers86be1a3d9f
Revert "ANDROID: vendor_hook: Add hook in si_swapinfo()"40b3533213
Revert "ANDROID: vendor_hooks:vendor hook for pidfd_open"d0590b99c9
Revert "ANDROID: vendor_hooks: Add hooks to extend the struct swap_info_struct"501063ce66
Revert "ANDROID: vendor_hooks:vendor hook for mmput"23fdb24a48
ANDROID: GKI: Update symbols to symbol list567d65e536
ANDROID: Guard rq_clock_task_mult with CONFIG_SMPeb99e6d80e
Revert "ANDROID: vendor_hook: Add hook in __free_pages()"8d86846781
Revert "ANDROID: vendor_hooks: Add hooks for binder"eed2741ae6
ANDROID: vendor_hook: add hooks to protect locking-tsk in cpu scheduler Update the .xml file to add the following new symbols that were now started to be tracked in the android12-5.10 branch: Leaf changes summary: 88 artifacts changed Changed leaf types summary: 0 leaf type changed Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 51 Added functions Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 37 Added variables 51 Added functions: [A] 'function int __traceiter_android_vh_account_swap_pages(void*, swap_info_struct*, bool*)' [A] 'function int __traceiter_android_vh_alloc_si(void*, swap_info_struct**, bool*)' [A] 'function int __traceiter_android_vh_alloc_swap_slot_cache(void*, swap_slots_cache*, int*, bool*)' [A] 'function int __traceiter_android_vh_count_pswpin(void*, swap_info_struct*)' [A] 'function int __traceiter_android_vh_count_pswpout(void*, swap_info_struct*)' [A] 'function int __traceiter_android_vh_count_swpout_vm_event(void*, swap_info_struct*, page*, bool*)' [A] 'function int __traceiter_android_vh_cow_user_page(void*, vm_fault*, page*)' [A] 'function int __traceiter_android_vh_do_page_trylock(void*, page*, rw_semaphore*, bool*, bool*)' [A] 'function int __traceiter_android_vh_drain_slots_cache_cpu(void*, swap_slots_cache*, unsigned int, bool, bool*)' [A] 'function int __traceiter_android_vh_free_pages(void*, page*, unsigned int)' [A] 'function int __traceiter_android_vh_free_swap_slot(void*, swp_entry_t, swap_slots_cache*, bool*)' [A] 'function int __traceiter_android_vh_get_swap_page(void*, page*, swp_entry_t*, swap_slots_cache*, bool*)' [A] 'function int __traceiter_android_vh_handle_failed_page_trylock(void*, list_head*)' [A] 'function int __traceiter_android_vh_handle_pte_fault_end(void*, vm_fault*, unsigned long int)' [A] 'function int __traceiter_android_vh_inactive_is_low(void*, unsigned long int, unsigned long int*, lru_list, bool*)' [A] 'function int __traceiter_android_vh_init_swap_info_struct(void*, swap_info_struct*, plist_head*)' [A] 'function int __traceiter_android_vh_migrate_page_states(void*, page*, page*)' [A] 'function int __traceiter_android_vh_page_isolated_for_reclaim(void*, mm_struct*, page*)' [A] 'function int __traceiter_android_vh_page_referenced_one_end(void*, vm_area_struct*, page*, int)' [A] 'function int __traceiter_android_vh_page_trylock_clear(void*, page*)' [A] 'function int __traceiter_android_vh_page_trylock_get_result(void*, page*, bool*)' [A] 'function int __traceiter_android_vh_page_trylock_set(void*, page*)' [A] 'function int __traceiter_android_vh_record_mutex_lock_starttime(void*, task_struct*, unsigned long int)' [A] 'function int __traceiter_android_vh_record_percpu_rwsem_lock_starttime(void*, task_struct*, unsigned long int)' [A] 'function int __traceiter_android_vh_record_rtmutex_lock_starttime(void*, task_struct*, unsigned long int)' [A] 'function int __traceiter_android_vh_record_rwsem_lock_starttime(void*, task_struct*, unsigned long int)' [A] 'function int __traceiter_android_vh_remove_vmalloc_stack(void*, vm_struct*)' [A] 'function int __traceiter_android_vh_set_shmem_page_flag(void*, page*)' [A] 'function int __traceiter_android_vh_si_swapinfo(void*, swap_info_struct*, bool*)' [A] 'function int __traceiter_android_vh_snapshot_refaults(void*, lruvec*)' [A] 'function int __traceiter_android_vh_swap_slot_cache_active(void*, bool)' [A] 'function int __traceiter_android_vh_swapin_add_anon_rmap(void*, vm_fault*, page*)' [A] 'function int __traceiter_android_vh_unuse_swap_page(void*, swap_info_struct*, page*)' [A] 'function int __traceiter_android_vh_waiting_for_page_migration(void*, page*)' [A] 'function unsigned long int alloc_iova_fast(iova_domain*, unsigned long int, unsigned long int, bool)' [A] 'function void free_iova_fast(iova_domain*, unsigned long int, unsigned long int)' [A] 'function int mmc_sw_reset(mmc_host*)' [A] 'function int pinctrl_generic_add_group(pinctrl_dev*, const char*, int*, int, void*)' [A] 'function int pinmux_generic_add_function(pinctrl_dev*, const char*, const char**, const unsigned int, void*)' [A] 'function void plist_del(plist_node*, plist_head*)' [A] 'function void plist_requeue(plist_node*, plist_head*)' [A] 'function unsigned long int reclaim_pages(list_head*)' [A] 'function u16 sdio_readw(sdio_func*, unsigned int, int*)' [A] 'function void sdio_retune_crc_disable(sdio_func*)' [A] 'function void sdio_retune_crc_enable(sdio_func*)' [A] 'function void sdio_retune_hold_now(sdio_func*)' [A] 'function void sdio_retune_release(sdio_func*)' [A] 'function void sdio_writew(sdio_func*, u16, unsigned int, int*)' [A] 'function bool sg_miter_skip(sg_mapping_iter*, off_t)' [A] 'function int skb_copy_datagram_from_iter(sk_buff*, int, iov_iter*, int)' [A] 'function sk_buff* sock_alloc_send_pskb(sock*, unsigned long int, unsigned long int, int, int*, int)' 37 Added variables: [A] 'tracepoint __tracepoint_android_vh_account_swap_pages' [A] 'tracepoint __tracepoint_android_vh_alloc_si' [A] 'tracepoint __tracepoint_android_vh_alloc_swap_slot_cache' [A] 'tracepoint __tracepoint_android_vh_count_pswpin' [A] 'tracepoint __tracepoint_android_vh_count_pswpout' [A] 'tracepoint __tracepoint_android_vh_count_swpout_vm_event' [A] 'tracepoint __tracepoint_android_vh_cow_user_page' [A] 'tracepoint __tracepoint_android_vh_disable_thermal_cooling_stats' [A] 'tracepoint __tracepoint_android_vh_do_page_trylock' [A] 'tracepoint __tracepoint_android_vh_drain_slots_cache_cpu' [A] 'tracepoint __tracepoint_android_vh_free_pages' [A] 'tracepoint __tracepoint_android_vh_free_swap_slot' [A] 'tracepoint __tracepoint_android_vh_get_swap_page' [A] 'tracepoint __tracepoint_android_vh_handle_failed_page_trylock' [A] 'tracepoint __tracepoint_android_vh_handle_pte_fault_end' [A] 'tracepoint __tracepoint_android_vh_inactive_is_low' [A] 'tracepoint __tracepoint_android_vh_init_swap_info_struct' [A] 'tracepoint __tracepoint_android_vh_migrate_page_states' [A] 'tracepoint __tracepoint_android_vh_page_isolated_for_reclaim' [A] 'tracepoint __tracepoint_android_vh_page_referenced_one_end' [A] 'tracepoint __tracepoint_android_vh_page_trylock_clear' [A] 'tracepoint __tracepoint_android_vh_page_trylock_get_result' [A] 'tracepoint __tracepoint_android_vh_page_trylock_set' [A] 'tracepoint __tracepoint_android_vh_record_mutex_lock_starttime' [A] 'tracepoint __tracepoint_android_vh_record_percpu_rwsem_lock_starttime' [A] 'tracepoint __tracepoint_android_vh_record_rtmutex_lock_starttime' [A] 'tracepoint __tracepoint_android_vh_record_rwsem_lock_starttime' [A] 'tracepoint __tracepoint_android_vh_remove_vmalloc_stack' [A] 'tracepoint __tracepoint_android_vh_set_shmem_page_flag' [A] 'tracepoint __tracepoint_android_vh_si_swapinfo' [A] 'tracepoint __tracepoint_android_vh_snapshot_refaults' [A] 'tracepoint __tracepoint_android_vh_swap_slot_cache_active' [A] 'tracepoint __tracepoint_android_vh_swapin_add_anon_rmap' [A] 'tracepoint __tracepoint_android_vh_unuse_swap_page' [A] 'tracepoint __tracepoint_android_vh_waiting_for_page_migration' [A] 'atomic_long_t nr_swap_pages' [A] 'unsigned long int zero_pfn' Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> Change-Id: I719eb9d92df0832855b90b31a5d2264b51dc0d96
This commit is contained in:
@@ -2533,6 +2533,12 @@
|
|||||||
|
|
||||||
memblock=debug [KNL] Enable memblock debug messages.
|
memblock=debug [KNL] Enable memblock debug messages.
|
||||||
|
|
||||||
|
android12_only.will_be_removed_soon.memblock_nomap_remove= [KNL]
|
||||||
|
Setting this to true through kernel command line will
|
||||||
|
call memblock_remove on the regions marked with no-map
|
||||||
|
property thereby saving memory by removing page structs
|
||||||
|
for those regions. By default this is set to false.
|
||||||
|
|
||||||
load_ramdisk= [RAM] [Deprecated]
|
load_ramdisk= [RAM] [Deprecated]
|
||||||
|
|
||||||
lockd.nlm_grace_period=P [NFS] Assign grace period.
|
lockd.nlm_grace_period=P [NFS] Assign grace period.
|
||||||
|
947
android/abi_gki_aarch64.xml
Executable file → Normal file
947
android/abi_gki_aarch64.xml
Executable file → Normal file
File diff suppressed because it is too large
Load Diff
0
android/abi_gki_aarch64_asus
Executable file → Normal file
0
android/abi_gki_aarch64_asus
Executable file → Normal file
@@ -2100,6 +2100,7 @@
|
|||||||
rdev_get_regmap
|
rdev_get_regmap
|
||||||
read_cache_page_gfp
|
read_cache_page_gfp
|
||||||
reboot_mode
|
reboot_mode
|
||||||
|
reclaim_pages
|
||||||
refcount_dec_and_lock
|
refcount_dec_and_lock
|
||||||
refcount_dec_not_one
|
refcount_dec_not_one
|
||||||
refcount_warn_saturate
|
refcount_warn_saturate
|
||||||
@@ -2798,6 +2799,7 @@
|
|||||||
__traceiter_android_vh_futex_sleep_start
|
__traceiter_android_vh_futex_sleep_start
|
||||||
__traceiter_android_vh_get_from_fragment_pool
|
__traceiter_android_vh_get_from_fragment_pool
|
||||||
__traceiter_android_vh_gpio_block_read
|
__traceiter_android_vh_gpio_block_read
|
||||||
|
__traceiter_android_vh_handle_failed_page_trylock
|
||||||
__traceiter_android_vh_include_reserved_zone
|
__traceiter_android_vh_include_reserved_zone
|
||||||
__traceiter_android_vh_iommu_alloc_iova
|
__traceiter_android_vh_iommu_alloc_iova
|
||||||
__traceiter_android_vh_iommu_free_iova
|
__traceiter_android_vh_iommu_free_iova
|
||||||
@@ -2823,9 +2825,13 @@
|
|||||||
__traceiter_android_vh_override_creds
|
__traceiter_android_vh_override_creds
|
||||||
__traceiter_android_vh_page_referenced_check_bypass
|
__traceiter_android_vh_page_referenced_check_bypass
|
||||||
__traceiter_android_vh_page_should_be_protected
|
__traceiter_android_vh_page_should_be_protected
|
||||||
|
__traceiter_android_vh_page_trylock_set
|
||||||
|
__traceiter_android_vh_page_trylock_clear
|
||||||
|
__traceiter_android_vh_page_trylock_get_result
|
||||||
__traceiter_android_vh_mark_page_accessed
|
__traceiter_android_vh_mark_page_accessed
|
||||||
__traceiter_android_vh_show_mapcount_pages
|
__traceiter_android_vh_show_mapcount_pages
|
||||||
__traceiter_android_vh_do_traversal_lruvec
|
__traceiter_android_vh_do_traversal_lruvec
|
||||||
|
__traceiter_android_vh_do_page_trylock
|
||||||
__traceiter_android_vh_update_page_mapcount
|
__traceiter_android_vh_update_page_mapcount
|
||||||
__traceiter_android_vh_add_page_to_lrulist
|
__traceiter_android_vh_add_page_to_lrulist
|
||||||
__traceiter_android_vh_del_page_from_lrulist
|
__traceiter_android_vh_del_page_from_lrulist
|
||||||
@@ -2834,6 +2840,10 @@
|
|||||||
__traceiter_android_vh_printk_hotplug
|
__traceiter_android_vh_printk_hotplug
|
||||||
__traceiter_android_vh_process_killed
|
__traceiter_android_vh_process_killed
|
||||||
__traceiter_android_vh_revert_creds
|
__traceiter_android_vh_revert_creds
|
||||||
|
__traceiter_android_vh_record_mutex_lock_starttime
|
||||||
|
__traceiter_android_vh_record_rtmutex_lock_starttime
|
||||||
|
__traceiter_android_vh_record_rwsem_lock_starttime
|
||||||
|
__traceiter_android_vh_record_percpu_rwsem_lock_starttime
|
||||||
__traceiter_android_vh_rmqueue
|
__traceiter_android_vh_rmqueue
|
||||||
__traceiter_android_vh_rwsem_init
|
__traceiter_android_vh_rwsem_init
|
||||||
__traceiter_android_vh_rwsem_mark_wake_readers
|
__traceiter_android_vh_rwsem_mark_wake_readers
|
||||||
@@ -2846,6 +2856,7 @@
|
|||||||
__traceiter_android_vh_rwsem_write_finished
|
__traceiter_android_vh_rwsem_write_finished
|
||||||
__traceiter_android_vh_save_track_hash
|
__traceiter_android_vh_save_track_hash
|
||||||
__traceiter_android_vh_save_vmalloc_stack
|
__traceiter_android_vh_save_vmalloc_stack
|
||||||
|
__traceiter_android_vh_remove_vmalloc_stack
|
||||||
__traceiter_android_vh_sched_stat_runtime_rt
|
__traceiter_android_vh_sched_stat_runtime_rt
|
||||||
__traceiter_android_vh_scheduler_tick
|
__traceiter_android_vh_scheduler_tick
|
||||||
__traceiter_android_vh_selinux_avc_insert
|
__traceiter_android_vh_selinux_avc_insert
|
||||||
@@ -3021,6 +3032,7 @@
|
|||||||
__tracepoint_android_vh_futex_sleep_start
|
__tracepoint_android_vh_futex_sleep_start
|
||||||
__tracepoint_android_vh_get_from_fragment_pool
|
__tracepoint_android_vh_get_from_fragment_pool
|
||||||
__tracepoint_android_vh_gpio_block_read
|
__tracepoint_android_vh_gpio_block_read
|
||||||
|
__tracepoint_android_vh_handle_failed_page_trylock
|
||||||
__tracepoint_android_vh_include_reserved_zone
|
__tracepoint_android_vh_include_reserved_zone
|
||||||
__tracepoint_android_vh_iommu_alloc_iova
|
__tracepoint_android_vh_iommu_alloc_iova
|
||||||
__tracepoint_android_vh_iommu_free_iova
|
__tracepoint_android_vh_iommu_free_iova
|
||||||
@@ -3046,9 +3058,13 @@
|
|||||||
__tracepoint_android_vh_override_creds
|
__tracepoint_android_vh_override_creds
|
||||||
__tracepoint_android_vh_page_referenced_check_bypass
|
__tracepoint_android_vh_page_referenced_check_bypass
|
||||||
__tracepoint_android_vh_page_should_be_protected
|
__tracepoint_android_vh_page_should_be_protected
|
||||||
|
__tracepoint_android_vh_page_trylock_set
|
||||||
|
__tracepoint_android_vh_page_trylock_clear
|
||||||
|
__tracepoint_android_vh_page_trylock_get_result
|
||||||
__tracepoint_android_vh_mark_page_accessed
|
__tracepoint_android_vh_mark_page_accessed
|
||||||
__tracepoint_android_vh_show_mapcount_pages
|
__tracepoint_android_vh_show_mapcount_pages
|
||||||
__tracepoint_android_vh_do_traversal_lruvec
|
__tracepoint_android_vh_do_traversal_lruvec
|
||||||
|
__tracepoint_android_vh_do_page_trylock
|
||||||
__tracepoint_android_vh_update_page_mapcount
|
__tracepoint_android_vh_update_page_mapcount
|
||||||
__tracepoint_android_vh_add_page_to_lrulist
|
__tracepoint_android_vh_add_page_to_lrulist
|
||||||
__tracepoint_android_vh_del_page_from_lrulist
|
__tracepoint_android_vh_del_page_from_lrulist
|
||||||
@@ -3057,6 +3073,10 @@
|
|||||||
__tracepoint_android_vh_printk_hotplug
|
__tracepoint_android_vh_printk_hotplug
|
||||||
__tracepoint_android_vh_process_killed
|
__tracepoint_android_vh_process_killed
|
||||||
__tracepoint_android_vh_revert_creds
|
__tracepoint_android_vh_revert_creds
|
||||||
|
__tracepoint_android_vh_record_mutex_lock_starttime
|
||||||
|
__tracepoint_android_vh_record_rtmutex_lock_starttime
|
||||||
|
__tracepoint_android_vh_record_rwsem_lock_starttime
|
||||||
|
__tracepoint_android_vh_record_percpu_rwsem_lock_starttime
|
||||||
__tracepoint_android_vh_rmqueue
|
__tracepoint_android_vh_rmqueue
|
||||||
__tracepoint_android_vh_rwsem_init
|
__tracepoint_android_vh_rwsem_init
|
||||||
__tracepoint_android_vh_rwsem_mark_wake_readers
|
__tracepoint_android_vh_rwsem_mark_wake_readers
|
||||||
@@ -3069,6 +3089,7 @@
|
|||||||
__tracepoint_android_vh_rwsem_write_finished
|
__tracepoint_android_vh_rwsem_write_finished
|
||||||
__tracepoint_android_vh_save_track_hash
|
__tracepoint_android_vh_save_track_hash
|
||||||
__tracepoint_android_vh_save_vmalloc_stack
|
__tracepoint_android_vh_save_vmalloc_stack
|
||||||
|
__tracepoint_android_vh_remove_vmalloc_stack
|
||||||
__tracepoint_android_vh_sched_stat_runtime_rt
|
__tracepoint_android_vh_sched_stat_runtime_rt
|
||||||
__tracepoint_android_vh_scheduler_tick
|
__tracepoint_android_vh_scheduler_tick
|
||||||
__tracepoint_android_vh_selinux_avc_insert
|
__tracepoint_android_vh_selinux_avc_insert
|
||||||
|
@@ -1965,7 +1965,6 @@
|
|||||||
register_kretprobe
|
register_kretprobe
|
||||||
register_memory_notifier
|
register_memory_notifier
|
||||||
register_module_notifier
|
register_module_notifier
|
||||||
register_qdisc
|
|
||||||
register_netdev
|
register_netdev
|
||||||
register_netdevice
|
register_netdevice
|
||||||
register_netdevice_notifier
|
register_netdevice_notifier
|
||||||
@@ -1973,6 +1972,7 @@
|
|||||||
register_oom_notifier
|
register_oom_notifier
|
||||||
register_pernet_device
|
register_pernet_device
|
||||||
register_pm_notifier
|
register_pm_notifier
|
||||||
|
register_qdisc
|
||||||
register_reboot_notifier
|
register_reboot_notifier
|
||||||
register_restart_handler
|
register_restart_handler
|
||||||
__register_rpmsg_driver
|
__register_rpmsg_driver
|
||||||
@@ -2194,6 +2194,7 @@
|
|||||||
sg_init_one
|
sg_init_one
|
||||||
sg_init_table
|
sg_init_table
|
||||||
sg_miter_next
|
sg_miter_next
|
||||||
|
sg_miter_skip
|
||||||
sg_miter_start
|
sg_miter_start
|
||||||
sg_miter_stop
|
sg_miter_stop
|
||||||
sg_next
|
sg_next
|
||||||
@@ -2233,6 +2234,7 @@
|
|||||||
skb_complete_wifi_ack
|
skb_complete_wifi_ack
|
||||||
skb_copy
|
skb_copy
|
||||||
skb_copy_bits
|
skb_copy_bits
|
||||||
|
skb_copy_datagram_from_iter
|
||||||
skb_copy_datagram_iter
|
skb_copy_datagram_iter
|
||||||
skb_copy_expand
|
skb_copy_expand
|
||||||
skb_dequeue
|
skb_dequeue
|
||||||
@@ -2321,6 +2323,7 @@
|
|||||||
snprintf
|
snprintf
|
||||||
soc_device_register
|
soc_device_register
|
||||||
soc_device_unregister
|
soc_device_unregister
|
||||||
|
sock_alloc_send_pskb
|
||||||
sock_alloc_send_skb
|
sock_alloc_send_skb
|
||||||
__sock_create
|
__sock_create
|
||||||
sock_create_kern
|
sock_create_kern
|
||||||
@@ -2682,6 +2685,7 @@
|
|||||||
__tracepoint_android_vh_cpu_idle_exit
|
__tracepoint_android_vh_cpu_idle_exit
|
||||||
__tracepoint_android_vh_cpuidle_psci_enter
|
__tracepoint_android_vh_cpuidle_psci_enter
|
||||||
__tracepoint_android_vh_cpuidle_psci_exit
|
__tracepoint_android_vh_cpuidle_psci_exit
|
||||||
|
__tracepoint_android_vh_disable_thermal_cooling_stats
|
||||||
__tracepoint_android_vh_dump_throttled_rt_tasks
|
__tracepoint_android_vh_dump_throttled_rt_tasks
|
||||||
__tracepoint_android_vh_freq_table_limits
|
__tracepoint_android_vh_freq_table_limits
|
||||||
__tracepoint_android_vh_ftrace_dump_buffer
|
__tracepoint_android_vh_ftrace_dump_buffer
|
||||||
|
@@ -57,6 +57,7 @@
|
|||||||
cancel_delayed_work
|
cancel_delayed_work
|
||||||
cancel_delayed_work_sync
|
cancel_delayed_work_sync
|
||||||
cancel_work_sync
|
cancel_work_sync
|
||||||
|
capable
|
||||||
cdev_add
|
cdev_add
|
||||||
cdev_del
|
cdev_del
|
||||||
cdev_device_add
|
cdev_device_add
|
||||||
@@ -92,6 +93,7 @@
|
|||||||
clk_gate_ops
|
clk_gate_ops
|
||||||
clk_get
|
clk_get
|
||||||
__clk_get_name
|
__clk_get_name
|
||||||
|
clk_get_parent
|
||||||
clk_get_rate
|
clk_get_rate
|
||||||
clk_hw_get_flags
|
clk_hw_get_flags
|
||||||
clk_hw_get_name
|
clk_hw_get_name
|
||||||
@@ -116,6 +118,7 @@
|
|||||||
completion_done
|
completion_done
|
||||||
__const_udelay
|
__const_udelay
|
||||||
consume_skb
|
consume_skb
|
||||||
|
cpu_bit_bitmap
|
||||||
__cpufreq_driver_target
|
__cpufreq_driver_target
|
||||||
cpufreq_generic_suspend
|
cpufreq_generic_suspend
|
||||||
cpufreq_register_governor
|
cpufreq_register_governor
|
||||||
@@ -188,6 +191,7 @@
|
|||||||
devfreq_suspend_device
|
devfreq_suspend_device
|
||||||
devfreq_unregister_opp_notifier
|
devfreq_unregister_opp_notifier
|
||||||
dev_fwnode
|
dev_fwnode
|
||||||
|
dev_get_regmap
|
||||||
device_add
|
device_add
|
||||||
device_add_disk
|
device_add_disk
|
||||||
device_create
|
device_create
|
||||||
@@ -241,6 +245,7 @@
|
|||||||
devm_input_allocate_device
|
devm_input_allocate_device
|
||||||
devm_ioremap
|
devm_ioremap
|
||||||
devm_ioremap_resource
|
devm_ioremap_resource
|
||||||
|
devm_kasprintf
|
||||||
devm_kfree
|
devm_kfree
|
||||||
devm_kmalloc
|
devm_kmalloc
|
||||||
devm_kmemdup
|
devm_kmemdup
|
||||||
@@ -256,6 +261,7 @@
|
|||||||
devm_phy_optional_get
|
devm_phy_optional_get
|
||||||
devm_pinctrl_get
|
devm_pinctrl_get
|
||||||
devm_pinctrl_register
|
devm_pinctrl_register
|
||||||
|
devm_pinctrl_register_and_init
|
||||||
devm_platform_get_and_ioremap_resource
|
devm_platform_get_and_ioremap_resource
|
||||||
devm_platform_ioremap_resource
|
devm_platform_ioremap_resource
|
||||||
devm_platform_ioremap_resource_byname
|
devm_platform_ioremap_resource_byname
|
||||||
@@ -315,7 +321,10 @@
|
|||||||
dma_buf_unmap_attachment
|
dma_buf_unmap_attachment
|
||||||
dma_buf_vmap
|
dma_buf_vmap
|
||||||
dma_buf_vunmap
|
dma_buf_vunmap
|
||||||
|
dma_contiguous_default_area
|
||||||
|
dma_fence_add_callback
|
||||||
dma_fence_context_alloc
|
dma_fence_context_alloc
|
||||||
|
dma_fence_get_status
|
||||||
dma_fence_init
|
dma_fence_init
|
||||||
dma_fence_release
|
dma_fence_release
|
||||||
dma_fence_signal
|
dma_fence_signal
|
||||||
@@ -345,15 +354,18 @@
|
|||||||
dma_unmap_page_attrs
|
dma_unmap_page_attrs
|
||||||
dma_unmap_resource
|
dma_unmap_resource
|
||||||
dma_unmap_sg_attrs
|
dma_unmap_sg_attrs
|
||||||
|
down
|
||||||
down_read
|
down_read
|
||||||
down_write
|
down_write
|
||||||
driver_register
|
driver_register
|
||||||
driver_unregister
|
driver_unregister
|
||||||
drm_add_edid_modes
|
drm_add_edid_modes
|
||||||
drm_atomic_get_crtc_state
|
drm_atomic_get_crtc_state
|
||||||
|
drm_atomic_get_new_bridge_state
|
||||||
drm_atomic_get_new_connector_for_encoder
|
drm_atomic_get_new_connector_for_encoder
|
||||||
drm_atomic_helper_bridge_destroy_state
|
drm_atomic_helper_bridge_destroy_state
|
||||||
drm_atomic_helper_bridge_duplicate_state
|
drm_atomic_helper_bridge_duplicate_state
|
||||||
|
drm_atomic_helper_bridge_propagate_bus_fmt
|
||||||
drm_atomic_helper_bridge_reset
|
drm_atomic_helper_bridge_reset
|
||||||
drm_atomic_helper_connector_destroy_state
|
drm_atomic_helper_connector_destroy_state
|
||||||
drm_atomic_helper_connector_duplicate_state
|
drm_atomic_helper_connector_duplicate_state
|
||||||
@@ -417,6 +429,7 @@
|
|||||||
drm_helper_probe_single_connector_modes
|
drm_helper_probe_single_connector_modes
|
||||||
drm_ioctl
|
drm_ioctl
|
||||||
drm_kms_helper_hotplug_event
|
drm_kms_helper_hotplug_event
|
||||||
|
drm_kms_helper_is_poll_worker
|
||||||
drm_match_cea_mode
|
drm_match_cea_mode
|
||||||
drm_mode_copy
|
drm_mode_copy
|
||||||
drm_mode_create
|
drm_mode_create
|
||||||
@@ -462,6 +475,7 @@
|
|||||||
extcon_get_state
|
extcon_get_state
|
||||||
extcon_register_notifier
|
extcon_register_notifier
|
||||||
extcon_set_property_capability
|
extcon_set_property_capability
|
||||||
|
extcon_set_state
|
||||||
extcon_set_state_sync
|
extcon_set_state_sync
|
||||||
extcon_unregister_notifier
|
extcon_unregister_notifier
|
||||||
failure_tracking
|
failure_tracking
|
||||||
@@ -476,8 +490,8 @@
|
|||||||
flush_workqueue
|
flush_workqueue
|
||||||
fpsimd_context_busy
|
fpsimd_context_busy
|
||||||
fput
|
fput
|
||||||
frame_vector_to_pages
|
|
||||||
free_irq
|
free_irq
|
||||||
|
free_netdev
|
||||||
__free_pages
|
__free_pages
|
||||||
free_pages
|
free_pages
|
||||||
free_percpu
|
free_percpu
|
||||||
@@ -490,6 +504,7 @@
|
|||||||
fwnode_property_read_string
|
fwnode_property_read_string
|
||||||
fwnode_property_read_u32_array
|
fwnode_property_read_u32_array
|
||||||
gcd
|
gcd
|
||||||
|
generic_file_llseek
|
||||||
generic_handle_irq
|
generic_handle_irq
|
||||||
generic_mii_ioctl
|
generic_mii_ioctl
|
||||||
__genphy_config_aneg
|
__genphy_config_aneg
|
||||||
@@ -507,6 +522,7 @@
|
|||||||
__get_free_pages
|
__get_free_pages
|
||||||
get_random_bytes
|
get_random_bytes
|
||||||
get_unused_fd_flags
|
get_unused_fd_flags
|
||||||
|
get_user_pages_remote
|
||||||
get_zeroed_page
|
get_zeroed_page
|
||||||
gic_nonsecure_priorities
|
gic_nonsecure_priorities
|
||||||
gpiochip_add_pin_range
|
gpiochip_add_pin_range
|
||||||
@@ -526,6 +542,8 @@
|
|||||||
gpiod_set_value
|
gpiod_set_value
|
||||||
gpiod_set_value_cansleep
|
gpiod_set_value_cansleep
|
||||||
gpiod_to_irq
|
gpiod_to_irq
|
||||||
|
gpio_free
|
||||||
|
gpio_request
|
||||||
gpio_to_desc
|
gpio_to_desc
|
||||||
handle_nested_irq
|
handle_nested_irq
|
||||||
handle_simple_irq
|
handle_simple_irq
|
||||||
@@ -555,8 +573,10 @@
|
|||||||
i2c_get_adapter
|
i2c_get_adapter
|
||||||
i2c_put_adapter
|
i2c_put_adapter
|
||||||
i2c_register_driver
|
i2c_register_driver
|
||||||
|
i2c_smbus_read_byte
|
||||||
i2c_smbus_read_byte_data
|
i2c_smbus_read_byte_data
|
||||||
i2c_smbus_read_i2c_block_data
|
i2c_smbus_read_i2c_block_data
|
||||||
|
i2c_smbus_read_word_data
|
||||||
i2c_smbus_write_byte_data
|
i2c_smbus_write_byte_data
|
||||||
i2c_smbus_write_i2c_block_data
|
i2c_smbus_write_i2c_block_data
|
||||||
__i2c_smbus_xfer
|
__i2c_smbus_xfer
|
||||||
@@ -575,6 +595,7 @@
|
|||||||
iio_device_attach_buffer
|
iio_device_attach_buffer
|
||||||
iio_push_to_buffers
|
iio_push_to_buffers
|
||||||
iio_read_channel_processed
|
iio_read_channel_processed
|
||||||
|
init_net
|
||||||
__init_rwsem
|
__init_rwsem
|
||||||
__init_swait_queue_head
|
__init_swait_queue_head
|
||||||
init_timer_key
|
init_timer_key
|
||||||
@@ -589,17 +610,22 @@
|
|||||||
input_register_device
|
input_register_device
|
||||||
input_set_abs_params
|
input_set_abs_params
|
||||||
input_set_capability
|
input_set_capability
|
||||||
|
input_unregister_device
|
||||||
iommu_attach_device
|
iommu_attach_device
|
||||||
|
iommu_attach_group
|
||||||
iommu_detach_device
|
iommu_detach_device
|
||||||
|
iommu_detach_group
|
||||||
iommu_device_register
|
iommu_device_register
|
||||||
iommu_device_sysfs_add
|
iommu_device_sysfs_add
|
||||||
iommu_device_sysfs_remove
|
iommu_device_sysfs_remove
|
||||||
iommu_get_dma_cookie
|
iommu_get_dma_cookie
|
||||||
iommu_get_domain_for_dev
|
iommu_get_domain_for_dev
|
||||||
iommu_group_alloc
|
iommu_group_alloc
|
||||||
|
iommu_group_get
|
||||||
iommu_group_put
|
iommu_group_put
|
||||||
iommu_group_ref_get
|
iommu_group_ref_get
|
||||||
iommu_map
|
iommu_map
|
||||||
|
iommu_map_sg
|
||||||
iommu_put_dma_cookie
|
iommu_put_dma_cookie
|
||||||
iommu_set_fault_handler
|
iommu_set_fault_handler
|
||||||
iommu_unmap
|
iommu_unmap
|
||||||
@@ -645,6 +671,7 @@
|
|||||||
kmem_cache_free
|
kmem_cache_free
|
||||||
kmemdup
|
kmemdup
|
||||||
kobject_create_and_add
|
kobject_create_and_add
|
||||||
|
kobject_init_and_add
|
||||||
kobject_put
|
kobject_put
|
||||||
kobject_uevent_env
|
kobject_uevent_env
|
||||||
kstrdup
|
kstrdup
|
||||||
@@ -670,6 +697,7 @@
|
|||||||
led_trigger_unregister
|
led_trigger_unregister
|
||||||
__list_add_valid
|
__list_add_valid
|
||||||
__list_del_entry_valid
|
__list_del_entry_valid
|
||||||
|
__local_bh_enable_ip
|
||||||
__log_post_read_mmio
|
__log_post_read_mmio
|
||||||
__log_read_mmio
|
__log_read_mmio
|
||||||
__log_write_mmio
|
__log_write_mmio
|
||||||
@@ -689,6 +717,7 @@
|
|||||||
media_pipeline_start
|
media_pipeline_start
|
||||||
media_pipeline_stop
|
media_pipeline_stop
|
||||||
memcpy
|
memcpy
|
||||||
|
__memcpy_fromio
|
||||||
memdup_user
|
memdup_user
|
||||||
memmove
|
memmove
|
||||||
memset
|
memset
|
||||||
@@ -701,11 +730,14 @@
|
|||||||
mipi_dsi_attach
|
mipi_dsi_attach
|
||||||
mipi_dsi_create_packet
|
mipi_dsi_create_packet
|
||||||
mipi_dsi_detach
|
mipi_dsi_detach
|
||||||
|
mipi_dsi_device_register_full
|
||||||
|
mipi_dsi_device_unregister
|
||||||
mipi_dsi_host_register
|
mipi_dsi_host_register
|
||||||
mipi_dsi_host_unregister
|
mipi_dsi_host_unregister
|
||||||
misc_deregister
|
misc_deregister
|
||||||
misc_register
|
misc_register
|
||||||
mmc_of_parse
|
mmc_of_parse
|
||||||
|
__mmdrop
|
||||||
mod_delayed_work_on
|
mod_delayed_work_on
|
||||||
mod_timer
|
mod_timer
|
||||||
__module_get
|
__module_get
|
||||||
@@ -724,6 +756,13 @@
|
|||||||
netdev_err
|
netdev_err
|
||||||
netdev_info
|
netdev_info
|
||||||
netdev_warn
|
netdev_warn
|
||||||
|
netif_rx
|
||||||
|
netif_rx_ni
|
||||||
|
netif_tx_wake_queue
|
||||||
|
netlink_unicast
|
||||||
|
nla_memcpy
|
||||||
|
nla_put
|
||||||
|
nla_reserve
|
||||||
no_llseek
|
no_llseek
|
||||||
nonseekable_open
|
nonseekable_open
|
||||||
noop_llseek
|
noop_llseek
|
||||||
@@ -753,6 +792,7 @@
|
|||||||
of_find_device_by_node
|
of_find_device_by_node
|
||||||
of_find_i2c_device_by_node
|
of_find_i2c_device_by_node
|
||||||
of_find_matching_node_and_match
|
of_find_matching_node_and_match
|
||||||
|
of_find_mipi_dsi_host_by_node
|
||||||
of_find_node_by_name
|
of_find_node_by_name
|
||||||
of_find_node_opts_by_path
|
of_find_node_opts_by_path
|
||||||
of_find_property
|
of_find_property
|
||||||
@@ -801,6 +841,9 @@
|
|||||||
param_ops_int
|
param_ops_int
|
||||||
param_ops_string
|
param_ops_string
|
||||||
param_ops_uint
|
param_ops_uint
|
||||||
|
pcie_capability_clear_and_set_word
|
||||||
|
pci_read_config_dword
|
||||||
|
pci_write_config_dword
|
||||||
PDE_DATA
|
PDE_DATA
|
||||||
__per_cpu_offset
|
__per_cpu_offset
|
||||||
perf_trace_buf_alloc
|
perf_trace_buf_alloc
|
||||||
@@ -814,8 +857,15 @@
|
|||||||
phy_power_off
|
phy_power_off
|
||||||
phy_power_on
|
phy_power_on
|
||||||
phy_set_mode_ext
|
phy_set_mode_ext
|
||||||
|
pinconf_generic_dt_free_map
|
||||||
pinconf_generic_dt_node_to_map
|
pinconf_generic_dt_node_to_map
|
||||||
pinctrl_dev_get_drvdata
|
pinctrl_dev_get_drvdata
|
||||||
|
pinctrl_enable
|
||||||
|
pinctrl_generic_add_group
|
||||||
|
pinctrl_generic_get_group
|
||||||
|
pinctrl_generic_get_group_count
|
||||||
|
pinctrl_generic_get_group_name
|
||||||
|
pinctrl_generic_get_group_pins
|
||||||
pinctrl_gpio_direction_input
|
pinctrl_gpio_direction_input
|
||||||
pinctrl_gpio_direction_output
|
pinctrl_gpio_direction_output
|
||||||
pinctrl_lookup_state
|
pinctrl_lookup_state
|
||||||
@@ -823,6 +873,11 @@
|
|||||||
pinctrl_pm_select_sleep_state
|
pinctrl_pm_select_sleep_state
|
||||||
pinctrl_select_state
|
pinctrl_select_state
|
||||||
pinctrl_utils_free_map
|
pinctrl_utils_free_map
|
||||||
|
pinmux_generic_add_function
|
||||||
|
pinmux_generic_get_function
|
||||||
|
pinmux_generic_get_function_count
|
||||||
|
pinmux_generic_get_function_groups
|
||||||
|
pinmux_generic_get_function_name
|
||||||
platform_bus_type
|
platform_bus_type
|
||||||
platform_device_put
|
platform_device_put
|
||||||
platform_device_register_full
|
platform_device_register_full
|
||||||
@@ -839,6 +894,7 @@
|
|||||||
pm_clk_destroy
|
pm_clk_destroy
|
||||||
pm_power_off
|
pm_power_off
|
||||||
__pm_relax
|
__pm_relax
|
||||||
|
pm_relax
|
||||||
__pm_runtime_disable
|
__pm_runtime_disable
|
||||||
pm_runtime_enable
|
pm_runtime_enable
|
||||||
pm_runtime_force_resume
|
pm_runtime_force_resume
|
||||||
@@ -851,6 +907,7 @@
|
|||||||
__pm_runtime_suspend
|
__pm_runtime_suspend
|
||||||
__pm_runtime_use_autosuspend
|
__pm_runtime_use_autosuspend
|
||||||
__pm_stay_awake
|
__pm_stay_awake
|
||||||
|
pm_stay_awake
|
||||||
pm_wakeup_ws_event
|
pm_wakeup_ws_event
|
||||||
power_supply_am_i_supplied
|
power_supply_am_i_supplied
|
||||||
power_supply_changed
|
power_supply_changed
|
||||||
@@ -863,6 +920,8 @@
|
|||||||
power_supply_register
|
power_supply_register
|
||||||
power_supply_reg_notifier
|
power_supply_reg_notifier
|
||||||
power_supply_unregister
|
power_supply_unregister
|
||||||
|
prandom_bytes
|
||||||
|
prandom_u32
|
||||||
preempt_schedule
|
preempt_schedule
|
||||||
preempt_schedule_notrace
|
preempt_schedule_notrace
|
||||||
prepare_to_wait_event
|
prepare_to_wait_event
|
||||||
@@ -904,6 +963,8 @@
|
|||||||
regcache_sync
|
regcache_sync
|
||||||
__register_chrdev
|
__register_chrdev
|
||||||
register_chrdev_region
|
register_chrdev_region
|
||||||
|
register_inetaddr_notifier
|
||||||
|
register_netdevice
|
||||||
register_netdevice_notifier
|
register_netdevice_notifier
|
||||||
register_pm_notifier
|
register_pm_notifier
|
||||||
register_reboot_notifier
|
register_reboot_notifier
|
||||||
@@ -958,6 +1019,7 @@
|
|||||||
round_jiffies_relative
|
round_jiffies_relative
|
||||||
rtc_class_open
|
rtc_class_open
|
||||||
rtc_read_time
|
rtc_read_time
|
||||||
|
rtc_time64_to_tm
|
||||||
rtc_tm_to_time64
|
rtc_tm_to_time64
|
||||||
rtc_valid_tm
|
rtc_valid_tm
|
||||||
rtnl_is_locked
|
rtnl_is_locked
|
||||||
@@ -1003,9 +1065,11 @@
|
|||||||
simple_attr_release
|
simple_attr_release
|
||||||
simple_read_from_buffer
|
simple_read_from_buffer
|
||||||
simple_strtol
|
simple_strtol
|
||||||
|
simple_strtoul
|
||||||
single_open
|
single_open
|
||||||
single_release
|
single_release
|
||||||
skb_clone
|
skb_clone
|
||||||
|
skb_copy
|
||||||
skb_copy_bits
|
skb_copy_bits
|
||||||
skb_copy_expand
|
skb_copy_expand
|
||||||
skb_pull
|
skb_pull
|
||||||
@@ -1054,27 +1118,33 @@
|
|||||||
snd_soc_put_volsw
|
snd_soc_put_volsw
|
||||||
snd_soc_unregister_component
|
snd_soc_unregister_component
|
||||||
snprintf
|
snprintf
|
||||||
|
sort
|
||||||
__spi_register_driver
|
__spi_register_driver
|
||||||
spi_sync
|
spi_sync
|
||||||
sprintf
|
sprintf
|
||||||
sscanf
|
sscanf
|
||||||
__stack_chk_fail
|
__stack_chk_fail
|
||||||
__stack_chk_guard
|
__stack_chk_guard
|
||||||
|
strchr
|
||||||
strcmp
|
strcmp
|
||||||
strcpy
|
strcpy
|
||||||
strlcpy
|
strlcpy
|
||||||
strlen
|
strlen
|
||||||
strncasecmp
|
strncasecmp
|
||||||
|
strncat
|
||||||
strncmp
|
strncmp
|
||||||
strncpy
|
strncpy
|
||||||
strnlen
|
strnlen
|
||||||
|
strrchr
|
||||||
strscpy
|
strscpy
|
||||||
|
strsep
|
||||||
strstr
|
strstr
|
||||||
__sw_hweight16
|
__sw_hweight16
|
||||||
__sw_hweight32
|
__sw_hweight32
|
||||||
__sw_hweight64
|
__sw_hweight64
|
||||||
__sw_hweight8
|
__sw_hweight8
|
||||||
sync_file_create
|
sync_file_create
|
||||||
|
sync_file_get_fence
|
||||||
synchronize_irq
|
synchronize_irq
|
||||||
synchronize_rcu
|
synchronize_rcu
|
||||||
syscon_node_to_regmap
|
syscon_node_to_regmap
|
||||||
@@ -1122,7 +1192,9 @@
|
|||||||
__udelay
|
__udelay
|
||||||
__unregister_chrdev
|
__unregister_chrdev
|
||||||
unregister_chrdev_region
|
unregister_chrdev_region
|
||||||
|
unregister_inetaddr_notifier
|
||||||
unregister_netdevice_notifier
|
unregister_netdevice_notifier
|
||||||
|
unregister_netdevice_queue
|
||||||
unregister_reboot_notifier
|
unregister_reboot_notifier
|
||||||
unregister_shrinker
|
unregister_shrinker
|
||||||
up
|
up
|
||||||
@@ -1221,6 +1293,7 @@
|
|||||||
v4l2_event_queue
|
v4l2_event_queue
|
||||||
v4l2_event_subdev_unsubscribe
|
v4l2_event_subdev_unsubscribe
|
||||||
v4l2_event_subscribe
|
v4l2_event_subscribe
|
||||||
|
v4l2_event_unsubscribe
|
||||||
v4l2_fh_open
|
v4l2_fh_open
|
||||||
v4l2_i2c_subdev_init
|
v4l2_i2c_subdev_init
|
||||||
v4l2_match_dv_timings
|
v4l2_match_dv_timings
|
||||||
@@ -1237,10 +1310,6 @@
|
|||||||
v4l2_valid_dv_timings
|
v4l2_valid_dv_timings
|
||||||
vabits_actual
|
vabits_actual
|
||||||
vb2_buffer_done
|
vb2_buffer_done
|
||||||
vb2_common_vm_ops
|
|
||||||
vb2_create_framevec
|
|
||||||
vb2_destroy_framevec
|
|
||||||
vb2_dma_contig_memops
|
|
||||||
vb2_fop_mmap
|
vb2_fop_mmap
|
||||||
vb2_fop_poll
|
vb2_fop_poll
|
||||||
vb2_fop_release
|
vb2_fop_release
|
||||||
@@ -1270,8 +1339,7 @@
|
|||||||
vmap
|
vmap
|
||||||
vm_get_page_prot
|
vm_get_page_prot
|
||||||
vm_map_pages
|
vm_map_pages
|
||||||
vm_map_ram
|
vsnprintf
|
||||||
vm_unmap_ram
|
|
||||||
vunmap
|
vunmap
|
||||||
vzalloc
|
vzalloc
|
||||||
wait_for_completion
|
wait_for_completion
|
||||||
@@ -1281,6 +1349,7 @@
|
|||||||
wakeup_source_add
|
wakeup_source_add
|
||||||
wakeup_source_remove
|
wakeup_source_remove
|
||||||
__warn_printk
|
__warn_printk
|
||||||
|
work_busy
|
||||||
|
|
||||||
# required by 8250_dw.ko
|
# required by 8250_dw.ko
|
||||||
of_device_is_big_endian
|
of_device_is_big_endian
|
||||||
@@ -1312,6 +1381,70 @@
|
|||||||
drm_dp_start_crc
|
drm_dp_start_crc
|
||||||
drm_dp_stop_crc
|
drm_dp_stop_crc
|
||||||
|
|
||||||
|
# required by aspm_ext.ko
|
||||||
|
pci_find_capability
|
||||||
|
pci_find_ext_capability
|
||||||
|
|
||||||
|
# required by bcmdhd.ko
|
||||||
|
alloc_etherdev_mqs
|
||||||
|
complete_and_exit
|
||||||
|
dev_open
|
||||||
|
down_interruptible
|
||||||
|
down_timeout
|
||||||
|
iwe_stream_add_event
|
||||||
|
iwe_stream_add_point
|
||||||
|
iwe_stream_add_value
|
||||||
|
__kfifo_init
|
||||||
|
kobject_uevent
|
||||||
|
mmc_set_data_timeout
|
||||||
|
mmc_sw_reset
|
||||||
|
mmc_wait_for_req
|
||||||
|
netdev_update_features
|
||||||
|
__netlink_kernel_create
|
||||||
|
netlink_kernel_release
|
||||||
|
nla_append
|
||||||
|
nla_put_nohdr
|
||||||
|
__nlmsg_put
|
||||||
|
_raw_read_lock_bh
|
||||||
|
_raw_read_unlock_bh
|
||||||
|
register_netdev
|
||||||
|
sched_set_fifo_low
|
||||||
|
sdio_claim_host
|
||||||
|
sdio_disable_func
|
||||||
|
sdio_enable_func
|
||||||
|
sdio_f0_readb
|
||||||
|
sdio_f0_writeb
|
||||||
|
sdio_get_host_pm_caps
|
||||||
|
sdio_memcpy_fromio
|
||||||
|
sdio_memcpy_toio
|
||||||
|
sdio_readb
|
||||||
|
sdio_readl
|
||||||
|
sdio_readsb
|
||||||
|
sdio_readw
|
||||||
|
sdio_register_driver
|
||||||
|
sdio_release_host
|
||||||
|
sdio_retune_crc_disable
|
||||||
|
sdio_retune_crc_enable
|
||||||
|
sdio_retune_hold_now
|
||||||
|
sdio_retune_release
|
||||||
|
sdio_set_block_size
|
||||||
|
sdio_set_host_pm_flags
|
||||||
|
sdio_unregister_driver
|
||||||
|
sdio_writeb
|
||||||
|
sdio_writel
|
||||||
|
sdio_writew
|
||||||
|
set_cpus_allowed_ptr
|
||||||
|
__skb_pad
|
||||||
|
skb_realloc_headroom
|
||||||
|
sock_wfree
|
||||||
|
sprint_symbol
|
||||||
|
strcat
|
||||||
|
strspn
|
||||||
|
sys_tz
|
||||||
|
unregister_netdev
|
||||||
|
unregister_pm_notifier
|
||||||
|
wireless_send_event
|
||||||
|
|
||||||
# required by bifrost_kbase.ko
|
# required by bifrost_kbase.ko
|
||||||
__arch_clear_user
|
__arch_clear_user
|
||||||
__bitmap_andnot
|
__bitmap_andnot
|
||||||
@@ -1326,28 +1459,23 @@
|
|||||||
devfreq_cooling_unregister
|
devfreq_cooling_unregister
|
||||||
devfreq_remove_device
|
devfreq_remove_device
|
||||||
dev_pm_opp_find_freq_exact
|
dev_pm_opp_find_freq_exact
|
||||||
dma_fence_add_callback
|
|
||||||
dma_fence_default_wait
|
dma_fence_default_wait
|
||||||
dma_fence_get_status
|
|
||||||
dma_fence_remove_callback
|
dma_fence_remove_callback
|
||||||
downgrade_write
|
downgrade_write
|
||||||
down_read_trylock
|
down_read_trylock
|
||||||
dump_stack
|
dump_stack
|
||||||
find_get_pid
|
find_get_pid
|
||||||
freezing_slow_path
|
freezing_slow_path
|
||||||
generic_file_llseek
|
|
||||||
get_user_pages
|
get_user_pages
|
||||||
get_user_pages_fast
|
get_user_pages_fast
|
||||||
hrtimer_active
|
hrtimer_active
|
||||||
iomem_resource
|
iomem_resource
|
||||||
kobject_del
|
kobject_del
|
||||||
kobject_init_and_add
|
|
||||||
kstrndup
|
kstrndup
|
||||||
kstrtobool_from_user
|
kstrtobool_from_user
|
||||||
ktime_get_raw
|
ktime_get_raw
|
||||||
ktime_get_raw_ts64
|
ktime_get_raw_ts64
|
||||||
memchr
|
memchr
|
||||||
__mmdrop
|
|
||||||
of_dma_is_coherent
|
of_dma_is_coherent
|
||||||
of_property_read_variable_u64_array
|
of_property_read_variable_u64_array
|
||||||
pid_task
|
pid_task
|
||||||
@@ -1371,7 +1499,6 @@
|
|||||||
shmem_file_setup
|
shmem_file_setup
|
||||||
simple_open
|
simple_open
|
||||||
strcspn
|
strcspn
|
||||||
sync_file_get_fence
|
|
||||||
system_freezing_cnt
|
system_freezing_cnt
|
||||||
system_highpri_wq
|
system_highpri_wq
|
||||||
_totalram_pages
|
_totalram_pages
|
||||||
@@ -1418,25 +1545,19 @@
|
|||||||
get_net_ns_by_fd
|
get_net_ns_by_fd
|
||||||
get_net_ns_by_pid
|
get_net_ns_by_pid
|
||||||
inet_csk_get_port
|
inet_csk_get_port
|
||||||
init_net
|
|
||||||
init_uts_ns
|
init_uts_ns
|
||||||
key_create_or_update
|
key_create_or_update
|
||||||
key_put
|
key_put
|
||||||
keyring_alloc
|
keyring_alloc
|
||||||
ktime_get_coarse_with_offset
|
ktime_get_coarse_with_offset
|
||||||
memcmp
|
memcmp
|
||||||
netif_rx_ni
|
|
||||||
netlink_broadcast
|
netlink_broadcast
|
||||||
netlink_register_notifier
|
netlink_register_notifier
|
||||||
netlink_unicast
|
|
||||||
netlink_unregister_notifier
|
netlink_unregister_notifier
|
||||||
net_ns_type_operations
|
net_ns_type_operations
|
||||||
nla_find
|
nla_find
|
||||||
nla_memcpy
|
|
||||||
__nla_parse
|
__nla_parse
|
||||||
nla_put_64bit
|
nla_put_64bit
|
||||||
nla_put
|
|
||||||
nla_reserve
|
|
||||||
__nla_validate
|
__nla_validate
|
||||||
of_prop_next_u32
|
of_prop_next_u32
|
||||||
__put_net
|
__put_net
|
||||||
@@ -1482,7 +1603,6 @@
|
|||||||
clk_fixed_factor_ops
|
clk_fixed_factor_ops
|
||||||
clk_fractional_divider_ops
|
clk_fractional_divider_ops
|
||||||
__clk_get_hw
|
__clk_get_hw
|
||||||
clk_get_parent
|
|
||||||
clk_hw_register_composite
|
clk_hw_register_composite
|
||||||
clk_hw_round_rate
|
clk_hw_round_rate
|
||||||
clk_mux_ops
|
clk_mux_ops
|
||||||
@@ -1501,9 +1621,11 @@
|
|||||||
scmi_driver_register
|
scmi_driver_register
|
||||||
scmi_driver_unregister
|
scmi_driver_unregister
|
||||||
|
|
||||||
|
# required by cm3218.ko
|
||||||
|
i2c_smbus_write_word_data
|
||||||
|
|
||||||
# required by cma_heap.ko
|
# required by cma_heap.ko
|
||||||
cma_get_name
|
cma_get_name
|
||||||
dma_contiguous_default_area
|
|
||||||
dma_heap_get_drvdata
|
dma_heap_get_drvdata
|
||||||
dma_heap_put
|
dma_heap_put
|
||||||
|
|
||||||
@@ -1544,10 +1666,8 @@
|
|||||||
mmc_cqe_request_done
|
mmc_cqe_request_done
|
||||||
|
|
||||||
# required by cryptodev.ko
|
# required by cryptodev.ko
|
||||||
__close_fd
|
|
||||||
crypto_ahash_final
|
crypto_ahash_final
|
||||||
crypto_alloc_akcipher
|
crypto_alloc_akcipher
|
||||||
get_user_pages_remote
|
|
||||||
krealloc
|
krealloc
|
||||||
proc_dointvec
|
proc_dointvec
|
||||||
register_sysctl_table
|
register_sysctl_table
|
||||||
@@ -1555,7 +1675,6 @@
|
|||||||
unregister_sysctl_table
|
unregister_sysctl_table
|
||||||
|
|
||||||
# required by display-connector.ko
|
# required by display-connector.ko
|
||||||
drm_atomic_get_new_bridge_state
|
|
||||||
drm_probe_ddc
|
drm_probe_ddc
|
||||||
|
|
||||||
# required by dm9601.ko
|
# required by dm9601.ko
|
||||||
@@ -1646,7 +1765,6 @@
|
|||||||
tcpm_register_port
|
tcpm_register_port
|
||||||
tcpm_unregister_port
|
tcpm_unregister_port
|
||||||
tcpm_vbus_change
|
tcpm_vbus_change
|
||||||
vsnprintf
|
|
||||||
|
|
||||||
# required by gc2145.ko
|
# required by gc2145.ko
|
||||||
v4l2_ctrl_subdev_log_status
|
v4l2_ctrl_subdev_log_status
|
||||||
@@ -1672,14 +1790,7 @@
|
|||||||
irq_get_domain_generic_chip
|
irq_get_domain_generic_chip
|
||||||
of_pinctrl_get
|
of_pinctrl_get
|
||||||
|
|
||||||
# required by grf.ko
|
|
||||||
of_find_matching_node_and_match
|
|
||||||
|
|
||||||
# required by gslx680-pad.ko
|
|
||||||
input_unregister_device
|
|
||||||
|
|
||||||
# required by hid-alps.ko
|
# required by hid-alps.ko
|
||||||
down
|
|
||||||
input_alloc_absinfo
|
input_alloc_absinfo
|
||||||
input_mt_sync_frame
|
input_mt_sync_frame
|
||||||
|
|
||||||
@@ -1706,7 +1817,6 @@
|
|||||||
hid_destroy_device
|
hid_destroy_device
|
||||||
hid_input_report
|
hid_input_report
|
||||||
hid_parse_report
|
hid_parse_report
|
||||||
i2c_smbus_read_byte
|
|
||||||
|
|
||||||
# required by i2c-mux.ko
|
# required by i2c-mux.ko
|
||||||
i2c_add_numbered_adapter
|
i2c_add_numbered_adapter
|
||||||
@@ -1768,7 +1878,6 @@
|
|||||||
dev_queue_xmit
|
dev_queue_xmit
|
||||||
ether_setup
|
ether_setup
|
||||||
ethtool_op_get_link
|
ethtool_op_get_link
|
||||||
free_netdev
|
|
||||||
get_random_u32
|
get_random_u32
|
||||||
__hw_addr_init
|
__hw_addr_init
|
||||||
__hw_addr_sync
|
__hw_addr_sync
|
||||||
@@ -1777,24 +1886,17 @@
|
|||||||
kernel_param_unlock
|
kernel_param_unlock
|
||||||
kfree_skb_list
|
kfree_skb_list
|
||||||
ktime_get_seconds
|
ktime_get_seconds
|
||||||
__local_bh_enable_ip
|
|
||||||
napi_gro_receive
|
napi_gro_receive
|
||||||
netdev_set_default_ethtool_ops
|
netdev_set_default_ethtool_ops
|
||||||
netif_carrier_off
|
netif_carrier_off
|
||||||
netif_carrier_on
|
netif_carrier_on
|
||||||
netif_receive_skb
|
netif_receive_skb
|
||||||
netif_receive_skb_list
|
netif_receive_skb_list
|
||||||
netif_rx
|
|
||||||
netif_tx_stop_all_queues
|
netif_tx_stop_all_queues
|
||||||
netif_tx_wake_queue
|
|
||||||
net_ratelimit
|
net_ratelimit
|
||||||
prandom_bytes
|
|
||||||
prandom_u32
|
|
||||||
___pskb_trim
|
___pskb_trim
|
||||||
rcu_barrier
|
rcu_barrier
|
||||||
register_inet6addr_notifier
|
register_inet6addr_notifier
|
||||||
register_inetaddr_notifier
|
|
||||||
register_netdevice
|
|
||||||
rhashtable_free_and_destroy
|
rhashtable_free_and_destroy
|
||||||
rhashtable_insert_slow
|
rhashtable_insert_slow
|
||||||
rhltable_init
|
rhltable_init
|
||||||
@@ -1806,7 +1908,6 @@
|
|||||||
skb_checksum_help
|
skb_checksum_help
|
||||||
skb_clone_sk
|
skb_clone_sk
|
||||||
skb_complete_wifi_ack
|
skb_complete_wifi_ack
|
||||||
skb_copy
|
|
||||||
skb_dequeue
|
skb_dequeue
|
||||||
skb_ensure_writable
|
skb_ensure_writable
|
||||||
__skb_get_hash
|
__skb_get_hash
|
||||||
@@ -1816,9 +1917,7 @@
|
|||||||
skb_queue_tail
|
skb_queue_tail
|
||||||
synchronize_net
|
synchronize_net
|
||||||
unregister_inet6addr_notifier
|
unregister_inet6addr_notifier
|
||||||
unregister_inetaddr_notifier
|
|
||||||
unregister_netdevice_many
|
unregister_netdevice_many
|
||||||
unregister_netdevice_queue
|
|
||||||
|
|
||||||
# required by nvme-core.ko
|
# required by nvme-core.ko
|
||||||
bd_set_nr_sectors
|
bd_set_nr_sectors
|
||||||
@@ -1848,7 +1947,6 @@
|
|||||||
blk_set_queue_dying
|
blk_set_queue_dying
|
||||||
blk_status_to_errno
|
blk_status_to_errno
|
||||||
blk_sync_queue
|
blk_sync_queue
|
||||||
capable
|
|
||||||
cleanup_srcu_struct
|
cleanup_srcu_struct
|
||||||
device_remove_file_self
|
device_remove_file_self
|
||||||
dev_pm_qos_expose_latency_tolerance
|
dev_pm_qos_expose_latency_tolerance
|
||||||
@@ -1974,7 +2072,6 @@
|
|||||||
videomode_from_timing
|
videomode_from_timing
|
||||||
|
|
||||||
# required by pcie-dw-rockchip.ko
|
# required by pcie-dw-rockchip.ko
|
||||||
cpu_bit_bitmap
|
|
||||||
cpumask_next_and
|
cpumask_next_and
|
||||||
dw_pcie_find_ext_capability
|
dw_pcie_find_ext_capability
|
||||||
dw_pcie_host_init
|
dw_pcie_host_init
|
||||||
@@ -1985,10 +2082,7 @@
|
|||||||
dw_pcie_write
|
dw_pcie_write
|
||||||
dw_pcie_write_dbi
|
dw_pcie_write_dbi
|
||||||
pci_disable_link_state
|
pci_disable_link_state
|
||||||
pcie_capability_clear_and_set_word
|
|
||||||
pci_read_config_dword
|
|
||||||
pci_set_power_state
|
pci_set_power_state
|
||||||
pci_write_config_dword
|
|
||||||
|
|
||||||
# required by pcierockchiphost.ko
|
# required by pcierockchiphost.ko
|
||||||
devm_pci_alloc_host_bridge
|
devm_pci_alloc_host_bridge
|
||||||
@@ -2006,7 +2100,6 @@
|
|||||||
|
|
||||||
# required by phy-rockchip-inno-usb2.ko
|
# required by phy-rockchip-inno-usb2.ko
|
||||||
devm_extcon_register_notifier
|
devm_extcon_register_notifier
|
||||||
extcon_set_state
|
|
||||||
extcon_sync
|
extcon_sync
|
||||||
|
|
||||||
# required by phy-rockchip-inno-usb3.ko
|
# required by phy-rockchip-inno-usb3.ko
|
||||||
@@ -2061,7 +2154,6 @@
|
|||||||
pm_genpd_add_subdomain
|
pm_genpd_add_subdomain
|
||||||
pm_genpd_init
|
pm_genpd_init
|
||||||
pm_genpd_remove
|
pm_genpd_remove
|
||||||
strrchr
|
|
||||||
|
|
||||||
# required by pwm-regulator.ko
|
# required by pwm-regulator.ko
|
||||||
regulator_map_voltage_iterate
|
regulator_map_voltage_iterate
|
||||||
@@ -2083,12 +2175,17 @@
|
|||||||
kernel_kobj
|
kernel_kobj
|
||||||
|
|
||||||
# required by rfkill-rk.ko
|
# required by rfkill-rk.ko
|
||||||
gpio_free
|
|
||||||
gpio_request
|
|
||||||
kstrtoll
|
kstrtoll
|
||||||
rfkill_init_sw_state
|
rfkill_init_sw_state
|
||||||
rfkill_set_sw_state
|
rfkill_set_sw_state
|
||||||
|
|
||||||
|
# required by rga3.ko
|
||||||
|
alloc_iova_fast
|
||||||
|
dma_fence_wait_timeout
|
||||||
|
free_iova_fast
|
||||||
|
kstrdup_quotable_cmdline
|
||||||
|
mmput
|
||||||
|
|
||||||
# required by rk628.ko
|
# required by rk628.ko
|
||||||
irq_dispose_mapping
|
irq_dispose_mapping
|
||||||
irq_domain_xlate_onetwocell
|
irq_domain_xlate_onetwocell
|
||||||
@@ -2118,11 +2215,6 @@
|
|||||||
regmap_del_irq_chip
|
regmap_del_irq_chip
|
||||||
unregister_syscore_ops
|
unregister_syscore_ops
|
||||||
|
|
||||||
# required by rk818_battery.ko
|
|
||||||
blocking_notifier_call_chain
|
|
||||||
blocking_notifier_chain_register
|
|
||||||
blocking_notifier_chain_unregister
|
|
||||||
|
|
||||||
# required by rk860x-regulator.ko
|
# required by rk860x-regulator.ko
|
||||||
regulator_suspend_enable
|
regulator_suspend_enable
|
||||||
|
|
||||||
@@ -2151,6 +2243,9 @@
|
|||||||
# required by rk_headset_irq_hook_adc.ko
|
# required by rk_headset_irq_hook_adc.ko
|
||||||
iio_read_channel_raw
|
iio_read_channel_raw
|
||||||
|
|
||||||
|
# required by rk_ircut.ko
|
||||||
|
drain_workqueue
|
||||||
|
|
||||||
# required by rk_vcodec.ko
|
# required by rk_vcodec.ko
|
||||||
devfreq_remove_governor
|
devfreq_remove_governor
|
||||||
devm_iounmap
|
devm_iounmap
|
||||||
@@ -2160,11 +2255,8 @@
|
|||||||
dma_buf_begin_cpu_access_partial
|
dma_buf_begin_cpu_access_partial
|
||||||
dma_buf_end_cpu_access_partial
|
dma_buf_end_cpu_access_partial
|
||||||
__fdget
|
__fdget
|
||||||
iommu_attach_group
|
|
||||||
iommu_detach_group
|
|
||||||
iommu_device_unregister
|
iommu_device_unregister
|
||||||
iommu_dma_reserve_iova
|
iommu_dma_reserve_iova
|
||||||
iommu_group_get
|
|
||||||
kthread_flush_worker
|
kthread_flush_worker
|
||||||
__kthread_init_worker
|
__kthread_init_worker
|
||||||
kthread_queue_work
|
kthread_queue_work
|
||||||
@@ -2174,15 +2266,11 @@
|
|||||||
platform_device_del
|
platform_device_del
|
||||||
pm_generic_runtime_resume
|
pm_generic_runtime_resume
|
||||||
pm_generic_runtime_suspend
|
pm_generic_runtime_suspend
|
||||||
pm_relax
|
|
||||||
pm_stay_awake
|
|
||||||
proc_create_single_data
|
proc_create_single_data
|
||||||
proc_remove
|
proc_remove
|
||||||
strncat
|
|
||||||
|
|
||||||
# required by rknpu.ko
|
# required by rknpu.ko
|
||||||
dev_pm_domain_attach_by_name
|
dev_pm_domain_attach_by_name
|
||||||
drm_gem_create_mmap_offset
|
|
||||||
drm_gem_dumb_destroy
|
drm_gem_dumb_destroy
|
||||||
drm_gem_handle_delete
|
drm_gem_handle_delete
|
||||||
drm_gem_prime_export
|
drm_gem_prime_export
|
||||||
@@ -2253,10 +2341,7 @@
|
|||||||
dev_pm_qos_add_request
|
dev_pm_qos_add_request
|
||||||
dev_pm_qos_remove_request
|
dev_pm_qos_remove_request
|
||||||
dev_pm_qos_update_request
|
dev_pm_qos_update_request
|
||||||
regulator_get
|
|
||||||
remove_cpu
|
remove_cpu
|
||||||
strchr
|
|
||||||
strsep
|
|
||||||
thermal_zone_get_temp
|
thermal_zone_get_temp
|
||||||
|
|
||||||
# required by rockchip_thermal.ko
|
# required by rockchip_thermal.ko
|
||||||
@@ -2280,7 +2365,6 @@
|
|||||||
drm_atomic_commit
|
drm_atomic_commit
|
||||||
drm_atomic_get_connector_state
|
drm_atomic_get_connector_state
|
||||||
drm_atomic_get_plane_state
|
drm_atomic_get_plane_state
|
||||||
drm_atomic_helper_bridge_propagate_bus_fmt
|
|
||||||
drm_atomic_helper_check
|
drm_atomic_helper_check
|
||||||
drm_atomic_helper_check_plane_state
|
drm_atomic_helper_check_plane_state
|
||||||
drm_atomic_helper_cleanup_planes
|
drm_atomic_helper_cleanup_planes
|
||||||
@@ -2421,7 +2505,6 @@
|
|||||||
drm_writeback_signal_completion
|
drm_writeback_signal_completion
|
||||||
iommu_domain_alloc
|
iommu_domain_alloc
|
||||||
iommu_domain_free
|
iommu_domain_free
|
||||||
iommu_map_sg
|
|
||||||
memblock_free
|
memblock_free
|
||||||
mipi_dsi_packet_format_is_short
|
mipi_dsi_packet_format_is_short
|
||||||
of_find_backlight_by_node
|
of_find_backlight_by_node
|
||||||
@@ -2432,21 +2515,14 @@
|
|||||||
platform_find_device_by_driver
|
platform_find_device_by_driver
|
||||||
__platform_register_drivers
|
__platform_register_drivers
|
||||||
platform_unregister_drivers
|
platform_unregister_drivers
|
||||||
sort
|
|
||||||
__vmalloc
|
__vmalloc
|
||||||
|
|
||||||
# required by rohm-bu18tl82.ko
|
|
||||||
mipi_dsi_device_register_full
|
|
||||||
mipi_dsi_device_unregister
|
|
||||||
of_find_mipi_dsi_host_by_node
|
|
||||||
|
|
||||||
# required by rtc-hym8563.ko
|
# required by rtc-hym8563.ko
|
||||||
devm_rtc_device_register
|
devm_rtc_device_register
|
||||||
|
|
||||||
# required by rtc-rk808.ko
|
# required by rtc-rk808.ko
|
||||||
devm_rtc_allocate_device
|
devm_rtc_allocate_device
|
||||||
__rtc_register_device
|
__rtc_register_device
|
||||||
rtc_time64_to_tm
|
|
||||||
rtc_update_irq
|
rtc_update_irq
|
||||||
|
|
||||||
# required by sdhci-of-arasan.ko
|
# required by sdhci-of-arasan.ko
|
||||||
@@ -2464,12 +2540,17 @@
|
|||||||
sdhci_setup_host
|
sdhci_setup_host
|
||||||
|
|
||||||
# required by sdhci-of-dwcmshc.ko
|
# required by sdhci-of-dwcmshc.ko
|
||||||
|
device_get_match_data
|
||||||
devm_clk_bulk_get_optional
|
devm_clk_bulk_get_optional
|
||||||
dma_get_required_mask
|
dma_get_required_mask
|
||||||
sdhci_adma_write_desc
|
sdhci_adma_write_desc
|
||||||
sdhci_remove_host
|
sdhci_remove_host
|
||||||
sdhci_request
|
sdhci_request
|
||||||
|
|
||||||
|
# required by sensor_dev.ko
|
||||||
|
class_create_file_ns
|
||||||
|
class_remove_file_ns
|
||||||
|
|
||||||
# required by sg.ko
|
# required by sg.ko
|
||||||
blk_get_request
|
blk_get_request
|
||||||
blk_put_request
|
blk_put_request
|
||||||
@@ -2498,9 +2579,6 @@
|
|||||||
sg_scsi_ioctl
|
sg_scsi_ioctl
|
||||||
__task_pid_nr_ns
|
__task_pid_nr_ns
|
||||||
|
|
||||||
# required by sgm41542_charger.ko
|
|
||||||
regulator_unregister
|
|
||||||
|
|
||||||
# required by sha1-ce.ko
|
# required by sha1-ce.ko
|
||||||
crypto_sha1_finup
|
crypto_sha1_finup
|
||||||
crypto_sha1_update
|
crypto_sha1_update
|
||||||
@@ -2534,6 +2612,9 @@
|
|||||||
# required by snd-soc-es8316.ko
|
# required by snd-soc-es8316.ko
|
||||||
snd_pcm_hw_constraint_list
|
snd_pcm_hw_constraint_list
|
||||||
|
|
||||||
|
# required by snd-soc-es8326.ko
|
||||||
|
snd_soc_register_component
|
||||||
|
|
||||||
# required by snd-soc-hdmi-codec.ko
|
# required by snd-soc-hdmi-codec.ko
|
||||||
snd_ctl_add
|
snd_ctl_add
|
||||||
snd_ctl_new1
|
snd_ctl_new1
|
||||||
@@ -2568,7 +2649,6 @@
|
|||||||
snd_soc_dapm_force_bias_level
|
snd_soc_dapm_force_bias_level
|
||||||
|
|
||||||
# required by snd-soc-simple-card-utils.ko
|
# required by snd-soc-simple-card-utils.ko
|
||||||
devm_kasprintf
|
|
||||||
devm_kvasprintf
|
devm_kvasprintf
|
||||||
snd_soc_dai_set_tdm_slot
|
snd_soc_dai_set_tdm_slot
|
||||||
snd_soc_of_parse_audio_simple_widgets
|
snd_soc_of_parse_audio_simple_widgets
|
||||||
@@ -2607,7 +2687,6 @@
|
|||||||
swiotlb_max_segment
|
swiotlb_max_segment
|
||||||
|
|
||||||
# required by tcpci_husb311.ko
|
# required by tcpci_husb311.ko
|
||||||
i2c_smbus_read_word_data
|
|
||||||
tcpci_get_tcpm_port
|
tcpci_get_tcpm_port
|
||||||
tcpci_irq
|
tcpci_irq
|
||||||
tcpci_register_port
|
tcpci_register_port
|
||||||
@@ -2706,18 +2785,21 @@
|
|||||||
|
|
||||||
# required by video_rkcif.ko
|
# required by video_rkcif.ko
|
||||||
media_entity_setup_link
|
media_entity_setup_link
|
||||||
work_busy
|
|
||||||
|
|
||||||
# required by video_rkisp.ko
|
# required by video_rkisp.ko
|
||||||
media_device_cleanup
|
media_device_cleanup
|
||||||
__memcpy_fromio
|
|
||||||
__memcpy_toio
|
__memcpy_toio
|
||||||
param_ops_ullong
|
param_ops_ullong
|
||||||
v4l2_event_unsubscribe
|
|
||||||
v4l2_pipeline_link_notify
|
v4l2_pipeline_link_notify
|
||||||
|
|
||||||
# required by videobuf2-dma-sg.ko
|
# required by videobuf2-cma-sg.ko
|
||||||
|
frame_vector_to_pages
|
||||||
split_page
|
split_page
|
||||||
|
vb2_common_vm_ops
|
||||||
|
vb2_create_framevec
|
||||||
|
vb2_destroy_framevec
|
||||||
|
vm_map_ram
|
||||||
|
vm_unmap_ram
|
||||||
|
|
||||||
# required by vl6180.ko
|
# required by vl6180.ko
|
||||||
iio_read_const_attr
|
iio_read_const_attr
|
||||||
|
@@ -6,3 +6,55 @@
|
|||||||
scan_swap_map_slots
|
scan_swap_map_slots
|
||||||
swap_alloc_cluster
|
swap_alloc_cluster
|
||||||
check_cache_active
|
check_cache_active
|
||||||
|
zero_pfn
|
||||||
|
nr_swap_pages
|
||||||
|
plist_requeue
|
||||||
|
plist_del
|
||||||
|
__traceiter_android_vh_handle_pte_fault_end
|
||||||
|
__traceiter_android_vh_cow_user_page
|
||||||
|
__traceiter_android_vh_swapin_add_anon_rmap
|
||||||
|
__traceiter_android_vh_waiting_for_page_migration
|
||||||
|
__traceiter_android_vh_migrate_page_states
|
||||||
|
__traceiter_android_vh_page_referenced_one_end
|
||||||
|
__traceiter_android_vh_count_pswpin
|
||||||
|
__traceiter_android_vh_count_pswpout
|
||||||
|
__traceiter_android_vh_count_swpout_vm_event
|
||||||
|
__traceiter_android_vh_swap_slot_cache_active
|
||||||
|
__traceiter_android_vh_drain_slots_cache_cpu
|
||||||
|
__traceiter_android_vh_alloc_swap_slot_cache
|
||||||
|
__traceiter_android_vh_free_swap_slot
|
||||||
|
__traceiter_android_vh_get_swap_page
|
||||||
|
__traceiter_android_vh_page_isolated_for_reclaim
|
||||||
|
__traceiter_android_vh_inactive_is_low
|
||||||
|
__traceiter_android_vh_snapshot_refaults
|
||||||
|
__traceiter_android_vh_account_swap_pages
|
||||||
|
__traceiter_android_vh_unuse_swap_page
|
||||||
|
__traceiter_android_vh_init_swap_info_struct
|
||||||
|
__traceiter_android_vh_si_swapinfo
|
||||||
|
__traceiter_android_vh_alloc_si
|
||||||
|
__traceiter_android_vh_free_pages
|
||||||
|
__traceiter_android_vh_set_shmem_page_flag
|
||||||
|
__tracepoint_android_vh_handle_pte_fault_end
|
||||||
|
__tracepoint_android_vh_cow_user_page
|
||||||
|
__tracepoint_android_vh_swapin_add_anon_rmap
|
||||||
|
__tracepoint_android_vh_waiting_for_page_migration
|
||||||
|
__tracepoint_android_vh_migrate_page_states
|
||||||
|
__tracepoint_android_vh_page_referenced_one_end
|
||||||
|
__tracepoint_android_vh_count_pswpin
|
||||||
|
__tracepoint_android_vh_count_pswpout
|
||||||
|
__tracepoint_android_vh_count_swpout_vm_event
|
||||||
|
__tracepoint_android_vh_swap_slot_cache_active
|
||||||
|
__tracepoint_android_vh_drain_slots_cache_cpu
|
||||||
|
__tracepoint_android_vh_alloc_swap_slot_cache
|
||||||
|
__tracepoint_android_vh_free_swap_slot
|
||||||
|
__tracepoint_android_vh_get_swap_page
|
||||||
|
__tracepoint_android_vh_page_isolated_for_reclaim
|
||||||
|
__tracepoint_android_vh_inactive_is_low
|
||||||
|
__tracepoint_android_vh_snapshot_refaults
|
||||||
|
__tracepoint_android_vh_account_swap_pages
|
||||||
|
__tracepoint_android_vh_unuse_swap_page
|
||||||
|
__tracepoint_android_vh_init_swap_info_struct
|
||||||
|
__tracepoint_android_vh_si_swapinfo
|
||||||
|
__tracepoint_android_vh_alloc_si
|
||||||
|
__tracepoint_android_vh_free_pages
|
||||||
|
__tracepoint_android_vh_set_shmem_page_flag
|
@@ -1,20 +1,24 @@
|
|||||||
|
CONFIG_AP6XXX=m
|
||||||
CONFIG_ARCH_ROCKCHIP=y
|
CONFIG_ARCH_ROCKCHIP=y
|
||||||
CONFIG_ARM_ROCKCHIP_BUS_DEVFREQ=m
|
CONFIG_ARM_ROCKCHIP_BUS_DEVFREQ=m
|
||||||
CONFIG_ARM_ROCKCHIP_CPUFREQ=m
|
CONFIG_ARM_ROCKCHIP_CPUFREQ=m
|
||||||
# CONFIG_ATA_SFF is not set
|
CONFIG_ARM_ROCKCHIP_DMC_DEVFREQ=m
|
||||||
CONFIG_BACKLIGHT_PWM=m
|
CONFIG_BACKLIGHT_PWM=m
|
||||||
CONFIG_BATTERY_CW2015=m
|
CONFIG_BATTERY_CW2015=m
|
||||||
|
CONFIG_BATTERY_CW2017=m
|
||||||
|
CONFIG_BATTERY_CW221X=m
|
||||||
CONFIG_BATTERY_RK817=m
|
CONFIG_BATTERY_RK817=m
|
||||||
CONFIG_BATTERY_RK818=m
|
CONFIG_BATTERY_RK818=m
|
||||||
CONFIG_BLK_DEV_NVME=m
|
CONFIG_BLK_DEV_NVME=m
|
||||||
CONFIG_BMA2XX_ACC=m
|
CONFIG_BMA2XX_ACC=m
|
||||||
CONFIG_CHARGER_BQ25700=m
|
CONFIG_CHARGER_BQ25700=m
|
||||||
|
CONFIG_CHARGER_BQ25890=m
|
||||||
CONFIG_CHARGER_RK817=m
|
CONFIG_CHARGER_RK817=m
|
||||||
CONFIG_CHARGER_RK818=m
|
CONFIG_CHARGER_RK818=m
|
||||||
|
CONFIG_CHARGER_SC89890=m
|
||||||
|
CONFIG_CHARGER_SGM41542=m
|
||||||
CONFIG_CHR_DEV_SCH=m
|
CONFIG_CHR_DEV_SCH=m
|
||||||
CONFIG_CHR_DEV_SG=m
|
CONFIG_CHR_DEV_SG=m
|
||||||
# CONFIG_CLK_RK1808 is not set
|
|
||||||
# CONFIG_CLK_RK3308 is not set
|
|
||||||
CONFIG_COMMON_CLK_PWM=m
|
CONFIG_COMMON_CLK_PWM=m
|
||||||
CONFIG_COMMON_CLK_RK808=m
|
CONFIG_COMMON_CLK_RK808=m
|
||||||
CONFIG_COMMON_CLK_ROCKCHIP=m
|
CONFIG_COMMON_CLK_ROCKCHIP=m
|
||||||
@@ -25,12 +29,10 @@ CONFIG_COMPASS_DEVICE=m
|
|||||||
CONFIG_CPUFREQ_DT=m
|
CONFIG_CPUFREQ_DT=m
|
||||||
CONFIG_CPU_FREQ_GOV_ONDEMAND=m
|
CONFIG_CPU_FREQ_GOV_ONDEMAND=m
|
||||||
CONFIG_CPU_FREQ_GOV_USERSPACE=m
|
CONFIG_CPU_FREQ_GOV_USERSPACE=m
|
||||||
CONFIG_CPU_PX30=y
|
CONFIG_CPU_RK3588=y
|
||||||
CONFIG_CPU_RK3328=y
|
|
||||||
CONFIG_CPU_RK3368=y
|
|
||||||
CONFIG_CPU_RK3399=y
|
|
||||||
CONFIG_CPU_RK3568=y
|
|
||||||
CONFIG_CRYPTO_AES_ARM64_CE_CCM=m
|
CONFIG_CRYPTO_AES_ARM64_CE_CCM=m
|
||||||
|
CONFIG_CRYPTO_DEV_ROCKCHIP=m
|
||||||
|
CONFIG_CRYPTO_DEV_ROCKCHIP_DEV=m
|
||||||
CONFIG_CRYPTO_GHASH_ARM64_CE=m
|
CONFIG_CRYPTO_GHASH_ARM64_CE=m
|
||||||
CONFIG_CRYPTO_SHA1_ARM64_CE=m
|
CONFIG_CRYPTO_SHA1_ARM64_CE=m
|
||||||
CONFIG_CRYPTO_TWOFISH=m
|
CONFIG_CRYPTO_TWOFISH=m
|
||||||
@@ -38,13 +40,20 @@ CONFIG_DEVFREQ_EVENT_ROCKCHIP_NOCP=m
|
|||||||
CONFIG_DMABUF_HEAPS_CMA=m
|
CONFIG_DMABUF_HEAPS_CMA=m
|
||||||
CONFIG_DMABUF_HEAPS_SYSTEM=m
|
CONFIG_DMABUF_HEAPS_SYSTEM=m
|
||||||
CONFIG_DRAGONRISE_FF=y
|
CONFIG_DRAGONRISE_FF=y
|
||||||
|
CONFIG_DRM_DISPLAY_CONNECTOR=m
|
||||||
CONFIG_DRM_DW_HDMI_CEC=m
|
CONFIG_DRM_DW_HDMI_CEC=m
|
||||||
CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
|
CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
|
||||||
|
CONFIG_DRM_MAXIM_MAX96745=m
|
||||||
|
CONFIG_DRM_MAXIM_MAX96752F=m
|
||||||
|
CONFIG_DRM_MAXIM_MAX96755F=m
|
||||||
CONFIG_DRM_PANEL_SIMPLE=m
|
CONFIG_DRM_PANEL_SIMPLE=m
|
||||||
|
CONFIG_DRM_RK1000_TVE=m
|
||||||
|
CONFIG_DRM_RK630_TVE=m
|
||||||
CONFIG_DRM_ROCKCHIP=m
|
CONFIG_DRM_ROCKCHIP=m
|
||||||
|
CONFIG_DRM_ROCKCHIP_RK628=m
|
||||||
|
CONFIG_DRM_ROHM_BU18XL82=m
|
||||||
CONFIG_DRM_SII902X=m
|
CONFIG_DRM_SII902X=m
|
||||||
CONFIG_DTC_SYMBOLS=y
|
CONFIG_DTC_SYMBOLS=y
|
||||||
# CONFIG_DWMAC_GENERIC is not set
|
|
||||||
CONFIG_DW_WATCHDOG=m
|
CONFIG_DW_WATCHDOG=m
|
||||||
CONFIG_GPIO_ROCKCHIP=m
|
CONFIG_GPIO_ROCKCHIP=m
|
||||||
CONFIG_GREENASIA_FF=y
|
CONFIG_GREENASIA_FF=y
|
||||||
@@ -116,13 +125,12 @@ CONFIG_I2C_CHARDEV=m
|
|||||||
CONFIG_I2C_GPIO=m
|
CONFIG_I2C_GPIO=m
|
||||||
CONFIG_I2C_HID=m
|
CONFIG_I2C_HID=m
|
||||||
CONFIG_I2C_RK3X=m
|
CONFIG_I2C_RK3X=m
|
||||||
|
CONFIG_IEP=m
|
||||||
CONFIG_IIO_BUFFER_CB=m
|
CONFIG_IIO_BUFFER_CB=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_ION=y
|
|
||||||
CONFIG_ION_SYSTEM_HEAP=y
|
|
||||||
CONFIG_JOLIET=y
|
|
||||||
CONFIG_KEYBOARD_ADC=m
|
CONFIG_KEYBOARD_ADC=m
|
||||||
CONFIG_LEDS_GPIO=m
|
CONFIG_LEDS_GPIO=m
|
||||||
|
CONFIG_LEDS_RGB13H=m
|
||||||
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
|
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
|
||||||
CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
|
CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
|
||||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=m
|
CONFIG_LEDS_TRIGGER_HEARTBEAT=m
|
||||||
@@ -131,7 +139,16 @@ CONFIG_LSM330_ACC=m
|
|||||||
CONFIG_LS_CM3217=m
|
CONFIG_LS_CM3217=m
|
||||||
CONFIG_LS_CM3218=m
|
CONFIG_LS_CM3218=m
|
||||||
CONFIG_LS_STK3410=m
|
CONFIG_LS_STK3410=m
|
||||||
# CONFIG_MALI400_PROFILING is not set
|
CONFIG_LS_UCS14620=m
|
||||||
|
CONFIG_MALI_BIFROST=m
|
||||||
|
CONFIG_MALI_BIFROST_DEBUG=y
|
||||||
|
CONFIG_MALI_BIFROST_EXPERT=y
|
||||||
|
CONFIG_MALI_CSF_SUPPORT=y
|
||||||
|
CONFIG_MALI_PLATFORM_NAME="rk"
|
||||||
|
CONFIG_MALI_PWRSOFT_765=y
|
||||||
|
CONFIG_MFD_RK628=m
|
||||||
|
CONFIG_MFD_RK630_I2C=m
|
||||||
|
CONFIG_MFD_RK806_SPI=m
|
||||||
CONFIG_MFD_RK808=m
|
CONFIG_MFD_RK808=m
|
||||||
CONFIG_MMC_DW=m
|
CONFIG_MMC_DW=m
|
||||||
CONFIG_MMC_DW_ROCKCHIP=m
|
CONFIG_MMC_DW_ROCKCHIP=m
|
||||||
@@ -141,22 +158,33 @@ CONFIG_MPU6500_ACC=m
|
|||||||
CONFIG_MPU6880_ACC=m
|
CONFIG_MPU6880_ACC=m
|
||||||
CONFIG_OPTEE=m
|
CONFIG_OPTEE=m
|
||||||
CONFIG_PANTHERLORD_FF=y
|
CONFIG_PANTHERLORD_FF=y
|
||||||
|
CONFIG_PCIEASPM_EXT=m
|
||||||
|
CONFIG_PCIE_DW_ROCKCHIP=m
|
||||||
|
CONFIG_PCIE_ROCKCHIP_HOST=m
|
||||||
|
CONFIG_PHY_ROCKCHIP_CSI2_DPHY=m
|
||||||
CONFIG_PHY_ROCKCHIP_DP=m
|
CONFIG_PHY_ROCKCHIP_DP=m
|
||||||
CONFIG_PHY_ROCKCHIP_EMMC=m
|
CONFIG_PHY_ROCKCHIP_EMMC=m
|
||||||
CONFIG_PHY_ROCKCHIP_INNO_DSIDPHY=m
|
CONFIG_PHY_ROCKCHIP_INNO_DSIDPHY=m
|
||||||
|
CONFIG_PHY_ROCKCHIP_INNO_HDMI=m
|
||||||
CONFIG_PHY_ROCKCHIP_INNO_USB2=m
|
CONFIG_PHY_ROCKCHIP_INNO_USB2=m
|
||||||
CONFIG_PHY_ROCKCHIP_INNO_USB3=m
|
CONFIG_PHY_ROCKCHIP_INNO_USB3=m
|
||||||
CONFIG_PHY_ROCKCHIP_NANENG_COMBO_PHY=m
|
CONFIG_PHY_ROCKCHIP_NANENG_COMBO_PHY=m
|
||||||
CONFIG_PHY_ROCKCHIP_NANENG_EDP=m
|
CONFIG_PHY_ROCKCHIP_NANENG_EDP=m
|
||||||
CONFIG_PHY_ROCKCHIP_PCIE=m
|
CONFIG_PHY_ROCKCHIP_PCIE=m
|
||||||
|
CONFIG_PHY_ROCKCHIP_SAMSUNG_DCPHY=m
|
||||||
|
CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX=m
|
||||||
|
CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX_HDMI=m
|
||||||
CONFIG_PHY_ROCKCHIP_SNPS_PCIE3=m
|
CONFIG_PHY_ROCKCHIP_SNPS_PCIE3=m
|
||||||
CONFIG_PHY_ROCKCHIP_TYPEC=m
|
CONFIG_PHY_ROCKCHIP_TYPEC=m
|
||||||
CONFIG_PHY_ROCKCHIP_USB=m
|
CONFIG_PHY_ROCKCHIP_USB=m
|
||||||
|
CONFIG_PHY_ROCKCHIP_USBDP=m
|
||||||
CONFIG_PINCTRL_RK805=m
|
CONFIG_PINCTRL_RK805=m
|
||||||
|
CONFIG_PINCTRL_RK806=m
|
||||||
CONFIG_PINCTRL_ROCKCHIP=m
|
CONFIG_PINCTRL_ROCKCHIP=m
|
||||||
CONFIG_PL330_DMA=m
|
CONFIG_PL330_DMA=m
|
||||||
CONFIG_PROXIMITY_DEVICE=m
|
CONFIG_PROXIMITY_DEVICE=m
|
||||||
CONFIG_PS_STK3410=m
|
CONFIG_PS_STK3410=m
|
||||||
|
CONFIG_PS_UCS14620=m
|
||||||
CONFIG_PWM_ROCKCHIP=m
|
CONFIG_PWM_ROCKCHIP=m
|
||||||
CONFIG_REGULATOR_ACT8865=m
|
CONFIG_REGULATOR_ACT8865=m
|
||||||
CONFIG_REGULATOR_FAN53555=m
|
CONFIG_REGULATOR_FAN53555=m
|
||||||
@@ -164,25 +192,43 @@ CONFIG_REGULATOR_GPIO=m
|
|||||||
CONFIG_REGULATOR_LP8752=m
|
CONFIG_REGULATOR_LP8752=m
|
||||||
CONFIG_REGULATOR_MP8865=m
|
CONFIG_REGULATOR_MP8865=m
|
||||||
CONFIG_REGULATOR_PWM=m
|
CONFIG_REGULATOR_PWM=m
|
||||||
|
CONFIG_REGULATOR_RK806=m
|
||||||
CONFIG_REGULATOR_RK808=m
|
CONFIG_REGULATOR_RK808=m
|
||||||
|
CONFIG_REGULATOR_RK860X=m
|
||||||
CONFIG_REGULATOR_TPS65132=m
|
CONFIG_REGULATOR_TPS65132=m
|
||||||
|
CONFIG_REGULATOR_WL2868C=m
|
||||||
CONFIG_REGULATOR_XZ3216=m
|
CONFIG_REGULATOR_XZ3216=m
|
||||||
|
CONFIG_RFKILL_RK=m
|
||||||
CONFIG_RK_CONSOLE_THREAD=y
|
CONFIG_RK_CONSOLE_THREAD=y
|
||||||
CONFIG_RK_NAND=m
|
CONFIG_RK_HEADSET=m
|
||||||
CONFIG_ROCKCHIP_ANALOGIX_DP=y
|
CONFIG_ROCKCHIP_ANALOGIX_DP=y
|
||||||
CONFIG_ROCKCHIP_CDN_DP=y
|
CONFIG_ROCKCHIP_CDN_DP=y
|
||||||
CONFIG_ROCKCHIP_CPUINFO=m
|
CONFIG_ROCKCHIP_CPUINFO=m
|
||||||
CONFIG_ROCKCHIP_DEBUG=m
|
CONFIG_ROCKCHIP_DEBUG=m
|
||||||
|
CONFIG_ROCKCHIP_DW_DP=y
|
||||||
|
CONFIG_ROCKCHIP_DW_HDCP2=m
|
||||||
CONFIG_ROCKCHIP_DW_HDMI=y
|
CONFIG_ROCKCHIP_DW_HDMI=y
|
||||||
CONFIG_ROCKCHIP_DW_MIPI_DSI=y
|
CONFIG_ROCKCHIP_DW_MIPI_DSI=y
|
||||||
CONFIG_ROCKCHIP_EFUSE=m
|
CONFIG_ROCKCHIP_EFUSE=m
|
||||||
CONFIG_ROCKCHIP_FIQ_DEBUGGER=m
|
|
||||||
CONFIG_ROCKCHIP_GRF=m
|
CONFIG_ROCKCHIP_GRF=m
|
||||||
CONFIG_ROCKCHIP_INNO_HDMI=y
|
CONFIG_ROCKCHIP_INNO_HDMI=y
|
||||||
CONFIG_ROCKCHIP_IODOMAIN=m
|
CONFIG_ROCKCHIP_IODOMAIN=m
|
||||||
CONFIG_ROCKCHIP_IOMMU=m
|
CONFIG_ROCKCHIP_IOMMU=m
|
||||||
CONFIG_ROCKCHIP_IPA=m
|
CONFIG_ROCKCHIP_IPA=m
|
||||||
CONFIG_ROCKCHIP_LVDS=y
|
CONFIG_ROCKCHIP_LVDS=y
|
||||||
|
CONFIG_ROCKCHIP_MPP_AV1DEC=y
|
||||||
|
CONFIG_ROCKCHIP_MPP_IEP2=y
|
||||||
|
CONFIG_ROCKCHIP_MPP_JPGDEC=y
|
||||||
|
CONFIG_ROCKCHIP_MPP_RKVDEC=y
|
||||||
|
CONFIG_ROCKCHIP_MPP_RKVDEC2=y
|
||||||
|
CONFIG_ROCKCHIP_MPP_RKVENC=y
|
||||||
|
CONFIG_ROCKCHIP_MPP_RKVENC2=y
|
||||||
|
CONFIG_ROCKCHIP_MPP_SERVICE=m
|
||||||
|
CONFIG_ROCKCHIP_MPP_VDPU1=y
|
||||||
|
CONFIG_ROCKCHIP_MPP_VDPU2=y
|
||||||
|
CONFIG_ROCKCHIP_MPP_VEPU1=y
|
||||||
|
CONFIG_ROCKCHIP_MPP_VEPU2=y
|
||||||
|
CONFIG_ROCKCHIP_MULTI_RGA=m
|
||||||
CONFIG_ROCKCHIP_OPP=m
|
CONFIG_ROCKCHIP_OPP=m
|
||||||
CONFIG_ROCKCHIP_OTP=m
|
CONFIG_ROCKCHIP_OTP=m
|
||||||
CONFIG_ROCKCHIP_PHY=m
|
CONFIG_ROCKCHIP_PHY=m
|
||||||
@@ -191,14 +237,19 @@ CONFIG_ROCKCHIP_PVTM=m
|
|||||||
CONFIG_ROCKCHIP_REMOTECTL=m
|
CONFIG_ROCKCHIP_REMOTECTL=m
|
||||||
CONFIG_ROCKCHIP_REMOTECTL_PWM=m
|
CONFIG_ROCKCHIP_REMOTECTL_PWM=m
|
||||||
CONFIG_ROCKCHIP_RGB=y
|
CONFIG_ROCKCHIP_RGB=y
|
||||||
|
CONFIG_ROCKCHIP_RKNPU=m
|
||||||
CONFIG_ROCKCHIP_SARADC=m
|
CONFIG_ROCKCHIP_SARADC=m
|
||||||
CONFIG_ROCKCHIP_SIP=m
|
CONFIG_ROCKCHIP_SIP=m
|
||||||
|
CONFIG_ROCKCHIP_SUSPEND_MODE=m
|
||||||
CONFIG_ROCKCHIP_SYSTEM_MONITOR=m
|
CONFIG_ROCKCHIP_SYSTEM_MONITOR=m
|
||||||
CONFIG_ROCKCHIP_THERMAL=m
|
CONFIG_ROCKCHIP_THERMAL=m
|
||||||
|
CONFIG_ROCKCHIP_TIMER=m
|
||||||
CONFIG_ROCKCHIP_VENDOR_STORAGE=m
|
CONFIG_ROCKCHIP_VENDOR_STORAGE=m
|
||||||
CONFIG_ROCKCHIP_VENDOR_STORAGE_UPDATE_LOADER=y
|
CONFIG_ROCKCHIP_VENDOR_STORAGE_UPDATE_LOADER=y
|
||||||
|
CONFIG_RTC_DRV_HYM8563=m
|
||||||
CONFIG_RTC_DRV_RK808=m
|
CONFIG_RTC_DRV_RK808=m
|
||||||
CONFIG_SENSOR_DEVICE=m
|
CONFIG_SENSOR_DEVICE=m
|
||||||
|
CONFIG_SERIAL_8250_DW=m
|
||||||
CONFIG_SMARTJOYPLUS_FF=y
|
CONFIG_SMARTJOYPLUS_FF=y
|
||||||
CONFIG_SND_SIMPLE_CARD=m
|
CONFIG_SND_SIMPLE_CARD=m
|
||||||
CONFIG_SND_SOC_BT_SCO=m
|
CONFIG_SND_SOC_BT_SCO=m
|
||||||
@@ -209,13 +260,20 @@ CONFIG_SND_SOC_ES7210=m
|
|||||||
CONFIG_SND_SOC_ES7243E=m
|
CONFIG_SND_SOC_ES7243E=m
|
||||||
CONFIG_SND_SOC_ES8311=m
|
CONFIG_SND_SOC_ES8311=m
|
||||||
CONFIG_SND_SOC_ES8316=m
|
CONFIG_SND_SOC_ES8316=m
|
||||||
|
CONFIG_SND_SOC_ES8323=m
|
||||||
|
CONFIG_SND_SOC_ES8326=m
|
||||||
CONFIG_SND_SOC_ES8396=m
|
CONFIG_SND_SOC_ES8396=m
|
||||||
CONFIG_SND_SOC_RK3328=m
|
CONFIG_SND_SOC_RK3328=m
|
||||||
CONFIG_SND_SOC_RK817=m
|
CONFIG_SND_SOC_RK817=m
|
||||||
CONFIG_SND_SOC_RK_CODEC_DIGITAL=m
|
CONFIG_SND_SOC_RK_CODEC_DIGITAL=m
|
||||||
CONFIG_SND_SOC_ROCKCHIP=m
|
CONFIG_SND_SOC_ROCKCHIP=m
|
||||||
|
CONFIG_SND_SOC_ROCKCHIP_HDMI=m
|
||||||
|
CONFIG_SND_SOC_ROCKCHIP_I2S=m
|
||||||
|
CONFIG_SND_SOC_ROCKCHIP_I2S_TDM=m
|
||||||
|
CONFIG_SND_SOC_ROCKCHIP_MULTICODECS=m
|
||||||
CONFIG_SND_SOC_ROCKCHIP_PDM=m
|
CONFIG_SND_SOC_ROCKCHIP_PDM=m
|
||||||
CONFIG_SND_SOC_ROCKCHIP_SPDIF=m
|
CONFIG_SND_SOC_ROCKCHIP_SPDIF=m
|
||||||
|
CONFIG_SND_SOC_ROCKCHIP_SPDIFRX=m
|
||||||
CONFIG_SND_SOC_RT5640=m
|
CONFIG_SND_SOC_RT5640=m
|
||||||
CONFIG_SND_SOC_SPDIF=m
|
CONFIG_SND_SOC_SPDIF=m
|
||||||
CONFIG_SPI_ROCKCHIP=m
|
CONFIG_SPI_ROCKCHIP=m
|
||||||
@@ -224,14 +282,61 @@ CONFIG_SW_SYNC=m
|
|||||||
CONFIG_SYSCON_REBOOT_MODE=m
|
CONFIG_SYSCON_REBOOT_MODE=m
|
||||||
CONFIG_TEE=m
|
CONFIG_TEE=m
|
||||||
CONFIG_TEST_POWER=m
|
CONFIG_TEST_POWER=m
|
||||||
|
CONFIG_TOUCHSCREEN_ELAN5515=m
|
||||||
|
CONFIG_TOUCHSCREEN_GSL3673=m
|
||||||
CONFIG_TOUCHSCREEN_GSLX680_PAD=m
|
CONFIG_TOUCHSCREEN_GSLX680_PAD=m
|
||||||
CONFIG_TOUCHSCREEN_GT1X=m
|
|
||||||
CONFIG_TYPEC_DP_ALTMODE=m
|
CONFIG_TYPEC_DP_ALTMODE=m
|
||||||
CONFIG_TYPEC_FUSB302=m
|
CONFIG_TYPEC_FUSB302=m
|
||||||
|
CONFIG_TYPEC_HUSB311=m
|
||||||
|
CONFIG_UCS12CM0=m
|
||||||
|
CONFIG_USB_DWC2=m
|
||||||
|
CONFIG_USB_NET_CDC_MBIM=m
|
||||||
|
CONFIG_USB_NET_DM9601=m
|
||||||
|
CONFIG_USB_NET_GL620A=m
|
||||||
|
CONFIG_USB_NET_KALMIA=m
|
||||||
|
CONFIG_USB_NET_MCS7830=m
|
||||||
|
CONFIG_USB_NET_PLUSB=m
|
||||||
|
CONFIG_USB_NET_SMSC75XX=m
|
||||||
|
CONFIG_USB_NET_SMSC95XX=m
|
||||||
|
CONFIG_USB_OHCI_HCD=m
|
||||||
|
# CONFIG_USB_OHCI_HCD_PCI is not set
|
||||||
|
CONFIG_USB_OHCI_HCD_PLATFORM=m
|
||||||
|
CONFIG_USB_PRINTER=m
|
||||||
|
CONFIG_USB_SERIAL=m
|
||||||
|
CONFIG_USB_SERIAL_GENERIC=y
|
||||||
|
CONFIG_USB_TRANCEVIBRATOR=m
|
||||||
|
CONFIG_VIDEO_AW36518=m
|
||||||
|
CONFIG_VIDEO_AW8601=m
|
||||||
|
CONFIG_VIDEO_CN3927V=m
|
||||||
CONFIG_VIDEO_DW9714=m
|
CONFIG_VIDEO_DW9714=m
|
||||||
CONFIG_VIDEO_OV2680=m
|
CONFIG_VIDEO_FP5510=m
|
||||||
|
CONFIG_VIDEO_GC2145=m
|
||||||
|
CONFIG_VIDEO_GC2385=m
|
||||||
|
CONFIG_VIDEO_GC4C33=m
|
||||||
|
CONFIG_VIDEO_GC8034=m
|
||||||
|
CONFIG_VIDEO_IMX415=m
|
||||||
|
CONFIG_VIDEO_LT6911UXC=m
|
||||||
|
CONFIG_VIDEO_LT7911D=m
|
||||||
|
CONFIG_VIDEO_NVP6188=m
|
||||||
|
CONFIG_VIDEO_OV02B10=m
|
||||||
|
CONFIG_VIDEO_OV13850=m
|
||||||
|
CONFIG_VIDEO_OV13855=m
|
||||||
|
CONFIG_VIDEO_OV50C40=m
|
||||||
CONFIG_VIDEO_OV5695=m
|
CONFIG_VIDEO_OV5695=m
|
||||||
CONFIG_ZISOFS=y
|
CONFIG_VIDEO_OV8858=m
|
||||||
|
CONFIG_VIDEO_RK628_BT1120=m
|
||||||
|
CONFIG_VIDEO_RK628_CSI=m
|
||||||
|
CONFIG_VIDEO_RK_IRCUT=m
|
||||||
|
CONFIG_VIDEO_ROCKCHIP_CIF=m
|
||||||
|
CONFIG_VIDEO_ROCKCHIP_ISP=m
|
||||||
|
CONFIG_VIDEO_ROCKCHIP_ISPP=m
|
||||||
|
CONFIG_VIDEO_S5K3L6XX=m
|
||||||
|
CONFIG_VIDEO_S5KJN1=m
|
||||||
|
CONFIG_VIDEO_SGM3784=m
|
||||||
|
CONFIG_VIDEO_THCV244=m
|
||||||
|
CONFIG_VL6180=m
|
||||||
|
CONFIG_WIFI_BUILD_MODULE=y
|
||||||
|
CONFIG_WL_ROCKCHIP=m
|
||||||
CONFIG_ZRAM=m
|
CONFIG_ZRAM=m
|
||||||
CONFIG_ZSMALLOC=m
|
CONFIG_ZSMALLOC=m
|
||||||
# CONFIG_USB_DUMMY_HCD is not set
|
# CONFIG_USB_DUMMY_HCD is not set
|
||||||
|
@@ -3,6 +3,6 @@
|
|||||||
|
|
||||||
DEFCONFIG=rockchip_aarch64_gki_defconfig
|
DEFCONFIG=rockchip_aarch64_gki_defconfig
|
||||||
KMI_SYMBOL_LIST=android/abi_gki_aarch64_rockchip
|
KMI_SYMBOL_LIST=android/abi_gki_aarch64_rockchip
|
||||||
PRE_DEFCONFIG_CMDS="KCONFIG_CONFIG=${ROOT_DIR}/common/arch/arm64/configs/${DEFCONFIG} ${ROOT_DIR}/common/scripts/kconfig/merge_config.sh -m -r ${ROOT_DIR}/common/arch/arm64/configs/gki_defconfig ${ROOT_DIR}/common/arch/arm64/configs/rockchip_gki.config"
|
PRE_DEFCONFIG_CMDS="KCONFIG_CONFIG=${ROOT_DIR}/common/arch/arm64/configs/${DEFCONFIG} ${ROOT_DIR}/common/scripts/kconfig/merge_config.sh -m -r ${ROOT_DIR}/common/arch/arm64/configs/gki_defconfig ${ROOT_DIR}/common/arch/arm64/configs/rockchip_gki.fragment"
|
||||||
POST_DEFCONFIG_CMDS="rm ${ROOT_DIR}/common/arch/arm64/configs/${DEFCONFIG}"
|
POST_DEFCONFIG_CMDS="rm ${ROOT_DIR}/common/arch/arm64/configs/${DEFCONFIG}"
|
||||||
|
|
||||||
|
@@ -2576,7 +2576,6 @@ static int binder_proc_transaction(struct binder_transaction *t,
|
|||||||
struct binder_priority node_prio;
|
struct binder_priority node_prio;
|
||||||
bool oneway = !!(t->flags & TF_ONE_WAY);
|
bool oneway = !!(t->flags & TF_ONE_WAY);
|
||||||
bool pending_async = false;
|
bool pending_async = false;
|
||||||
bool skip = false;
|
|
||||||
struct binder_transaction *t_outdated = NULL;
|
struct binder_transaction *t_outdated = NULL;
|
||||||
|
|
||||||
BUG_ON(!node);
|
BUG_ON(!node);
|
||||||
@@ -2605,10 +2604,7 @@ static int binder_proc_transaction(struct binder_transaction *t,
|
|||||||
return proc->is_frozen ? BR_FROZEN_REPLY : BR_DEAD_REPLY;
|
return proc->is_frozen ? BR_FROZEN_REPLY : BR_DEAD_REPLY;
|
||||||
}
|
}
|
||||||
|
|
||||||
trace_android_vh_binder_proc_transaction_entry(proc, t,
|
if (!thread && !pending_async)
|
||||||
&thread, node->debug_id, pending_async, !oneway, &skip);
|
|
||||||
|
|
||||||
if (!thread && !pending_async && !skip)
|
|
||||||
thread = binder_select_thread_ilocked(proc);
|
thread = binder_select_thread_ilocked(proc);
|
||||||
|
|
||||||
trace_android_vh_binder_proc_transaction(current, proc->tsk,
|
trace_android_vh_binder_proc_transaction(current, proc->tsk,
|
||||||
@@ -4150,10 +4146,6 @@ retry:
|
|||||||
size_t trsize = sizeof(*trd);
|
size_t trsize = sizeof(*trd);
|
||||||
|
|
||||||
binder_inner_proc_lock(proc);
|
binder_inner_proc_lock(proc);
|
||||||
trace_android_vh_binder_select_worklist_ilocked(&list, thread,
|
|
||||||
proc, wait_for_proc_work);
|
|
||||||
if (list)
|
|
||||||
goto skip;
|
|
||||||
if (!binder_worklist_empty_ilocked(&thread->todo))
|
if (!binder_worklist_empty_ilocked(&thread->todo))
|
||||||
list = &thread->todo;
|
list = &thread->todo;
|
||||||
else if (!binder_worklist_empty_ilocked(&proc->todo) &&
|
else if (!binder_worklist_empty_ilocked(&proc->todo) &&
|
||||||
@@ -4167,7 +4159,7 @@ retry:
|
|||||||
goto retry;
|
goto retry;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
skip:
|
|
||||||
if (end - ptr < sizeof(tr) + 4) {
|
if (end - ptr < sizeof(tr) + 4) {
|
||||||
binder_inner_proc_unlock(proc);
|
binder_inner_proc_unlock(proc);
|
||||||
break;
|
break;
|
||||||
|
@@ -106,6 +106,12 @@ 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_rwsem_list_add);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alter_futex_plist_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_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_mutex_wait_start);
|
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_wait_finish);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rtmutex_wait_start);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rtmutex_wait_start);
|
||||||
@@ -259,6 +265,10 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_commit_creds);
|
|||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_exit_creds);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_exit_creds);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_override_creds);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_override_creds);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_revert_creds);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_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_percpu_rwsem_lock_starttime);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_memory_x);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_memory_x);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_memory_nx);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_memory_nx);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_memory_ro);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_memory_ro);
|
||||||
@@ -290,10 +300,8 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_reply);
|
|||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_trans);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_trans);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_binder_transaction);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_binder_transaction);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_preset);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_preset);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_proc_transaction_entry);
|
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_proc_transaction);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_proc_transaction);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_proc_transaction_end);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_proc_transaction_end);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_select_worklist_ilocked);
|
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_new_ref);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_new_ref);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_del_ref);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_del_ref);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_post_init_entity_util_avg);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_post_init_entity_util_avg);
|
||||||
@@ -399,6 +407,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_udp_recvmsg);
|
|||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_tcp_recvmsg_stat);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_tcp_recvmsg_stat);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_pci_d3_sleep);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_pci_d3_sleep);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_kmalloc_slab);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_kmalloc_slab);
|
||||||
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_disable_thermal_cooling_stats);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmap_region);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmap_region);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_update_page_mapcount);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_update_page_mapcount);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_add_page_to_lrulist);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_add_page_to_lrulist);
|
||||||
@@ -446,6 +455,4 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_si_swapinfo);
|
|||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_si);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_si);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_free_pages);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_free_pages);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_shmem_page_flag);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_shmem_page_flag);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_pidfd_open);
|
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmput);
|
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sched_pelt_multiplier);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sched_pelt_multiplier);
|
||||||
|
@@ -1181,6 +1181,9 @@ int __init __weak early_init_dt_reserve_memory_arch(phys_addr_t base,
|
|||||||
if (memblock_is_region_reserved(base, size))
|
if (memblock_is_region_reserved(base, size))
|
||||||
return -EBUSY;
|
return -EBUSY;
|
||||||
|
|
||||||
|
if (memblock_is_nomap_remove())
|
||||||
|
return memblock_remove(base, size);
|
||||||
|
|
||||||
return memblock_mark_nomap(base, size);
|
return memblock_mark_nomap(base, size);
|
||||||
}
|
}
|
||||||
return memblock_reserve(base, size);
|
return memblock_reserve(base, size);
|
||||||
|
@@ -18,6 +18,7 @@
|
|||||||
#include <linux/slab.h>
|
#include <linux/slab.h>
|
||||||
#include <linux/string.h>
|
#include <linux/string.h>
|
||||||
#include <linux/jiffies.h>
|
#include <linux/jiffies.h>
|
||||||
|
#include <trace/hooks/thermal.h>
|
||||||
|
|
||||||
#include "thermal_core.h"
|
#include "thermal_core.h"
|
||||||
|
|
||||||
@@ -886,9 +887,22 @@ static struct attribute *cooling_device_stats_attrs[] = {
|
|||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static umode_t cooling_device_stats_is_visible(struct kobject *kobj,
|
||||||
|
struct attribute *attr, int attrno)
|
||||||
|
{
|
||||||
|
struct thermal_cooling_device *cdev = to_cooling_device(
|
||||||
|
kobj_to_dev(kobj));
|
||||||
|
|
||||||
|
if (!cdev->stats)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
return attr->mode;
|
||||||
|
}
|
||||||
|
|
||||||
static const struct attribute_group cooling_device_stats_attr_group = {
|
static const struct attribute_group cooling_device_stats_attr_group = {
|
||||||
.attrs = cooling_device_stats_attrs,
|
.attrs = cooling_device_stats_attrs,
|
||||||
.name = "stats"
|
.name = "stats",
|
||||||
|
.is_visible = cooling_device_stats_is_visible,
|
||||||
};
|
};
|
||||||
|
|
||||||
static void cooling_device_stats_setup(struct thermal_cooling_device *cdev)
|
static void cooling_device_stats_setup(struct thermal_cooling_device *cdev)
|
||||||
@@ -896,6 +910,12 @@ static void cooling_device_stats_setup(struct thermal_cooling_device *cdev)
|
|||||||
struct cooling_dev_stats *stats;
|
struct cooling_dev_stats *stats;
|
||||||
unsigned long states;
|
unsigned long states;
|
||||||
int var;
|
int var;
|
||||||
|
bool disable_cdev_stats = false;
|
||||||
|
|
||||||
|
trace_android_vh_disable_thermal_cooling_stats(cdev,
|
||||||
|
&disable_cdev_stats);
|
||||||
|
if (disable_cdev_stats)
|
||||||
|
return;
|
||||||
|
|
||||||
if (cdev->ops->get_max_state(cdev, &states))
|
if (cdev->ops->get_max_state(cdev, &states))
|
||||||
return;
|
return;
|
||||||
|
@@ -487,6 +487,7 @@ bool memblock_is_map_memory(phys_addr_t addr);
|
|||||||
bool memblock_is_region_memory(phys_addr_t base, phys_addr_t size);
|
bool memblock_is_region_memory(phys_addr_t base, phys_addr_t size);
|
||||||
bool memblock_is_reserved(phys_addr_t addr);
|
bool memblock_is_reserved(phys_addr_t addr);
|
||||||
bool memblock_is_region_reserved(phys_addr_t base, phys_addr_t size);
|
bool memblock_is_region_reserved(phys_addr_t base, phys_addr_t size);
|
||||||
|
bool memblock_is_nomap_remove(void);
|
||||||
|
|
||||||
void memblock_dump_all(void);
|
void memblock_dump_all(void);
|
||||||
|
|
||||||
|
@@ -9,6 +9,9 @@
|
|||||||
#include <linux/rcu_sync.h>
|
#include <linux/rcu_sync.h>
|
||||||
#include <linux/lockdep.h>
|
#include <linux/lockdep.h>
|
||||||
|
|
||||||
|
void _trace_android_vh_record_percpu_rwsem_lock_starttime(
|
||||||
|
struct task_struct *tsk, unsigned long settime);
|
||||||
|
|
||||||
struct percpu_rw_semaphore {
|
struct percpu_rw_semaphore {
|
||||||
struct rcu_sync rss;
|
struct rcu_sync rss;
|
||||||
unsigned int __percpu *read_count;
|
unsigned int __percpu *read_count;
|
||||||
@@ -73,6 +76,7 @@ static inline void percpu_down_read(struct percpu_rw_semaphore *sem)
|
|||||||
* bleeding the critical section out.
|
* bleeding the critical section out.
|
||||||
*/
|
*/
|
||||||
preempt_enable();
|
preempt_enable();
|
||||||
|
_trace_android_vh_record_percpu_rwsem_lock_starttime(current, jiffies);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline bool percpu_down_read_trylock(struct percpu_rw_semaphore *sem)
|
static inline bool percpu_down_read_trylock(struct percpu_rw_semaphore *sem)
|
||||||
@@ -93,14 +97,17 @@ static inline bool percpu_down_read_trylock(struct percpu_rw_semaphore *sem)
|
|||||||
* bleeding the critical section out.
|
* bleeding the critical section out.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (ret)
|
if (ret) {
|
||||||
|
_trace_android_vh_record_percpu_rwsem_lock_starttime(current, jiffies);
|
||||||
rwsem_acquire_read(&sem->dep_map, 0, 1, _RET_IP_);
|
rwsem_acquire_read(&sem->dep_map, 0, 1, _RET_IP_);
|
||||||
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void percpu_up_read(struct percpu_rw_semaphore *sem)
|
static inline void percpu_up_read(struct percpu_rw_semaphore *sem)
|
||||||
{
|
{
|
||||||
|
_trace_android_vh_record_percpu_rwsem_lock_starttime(current, 0);
|
||||||
rwsem_release(&sem->dep_map, _RET_IP_);
|
rwsem_release(&sem->dep_map, _RET_IP_);
|
||||||
|
|
||||||
preempt_disable();
|
preempt_disable();
|
||||||
|
@@ -75,11 +75,6 @@ DECLARE_RESTRICTED_HOOK(android_rvh_binder_transaction,
|
|||||||
DECLARE_HOOK(android_vh_binder_preset,
|
DECLARE_HOOK(android_vh_binder_preset,
|
||||||
TP_PROTO(struct hlist_head *hhead, struct mutex *lock),
|
TP_PROTO(struct hlist_head *hhead, struct mutex *lock),
|
||||||
TP_ARGS(hhead, lock));
|
TP_ARGS(hhead, lock));
|
||||||
DECLARE_HOOK(android_vh_binder_proc_transaction_entry,
|
|
||||||
TP_PROTO(struct binder_proc *proc, struct binder_transaction *t,
|
|
||||||
struct binder_thread **thread, int node_debug_id, bool pending_async,
|
|
||||||
bool sync, bool *skip),
|
|
||||||
TP_ARGS(proc, t, thread, node_debug_id, pending_async, sync, skip));
|
|
||||||
DECLARE_HOOK(android_vh_binder_proc_transaction,
|
DECLARE_HOOK(android_vh_binder_proc_transaction,
|
||||||
TP_PROTO(struct task_struct *caller_task, struct task_struct *binder_proc_task,
|
TP_PROTO(struct task_struct *caller_task, struct task_struct *binder_proc_task,
|
||||||
struct task_struct *binder_th_task, int node_debug_id,
|
struct task_struct *binder_th_task, int node_debug_id,
|
||||||
@@ -90,10 +85,6 @@ DECLARE_HOOK(android_vh_binder_proc_transaction_end,
|
|||||||
struct task_struct *binder_th_task, unsigned int code,
|
struct task_struct *binder_th_task, unsigned int code,
|
||||||
bool pending_async, bool sync),
|
bool pending_async, bool sync),
|
||||||
TP_ARGS(caller_task, binder_proc_task, binder_th_task, code, pending_async, sync));
|
TP_ARGS(caller_task, binder_proc_task, binder_th_task, code, pending_async, sync));
|
||||||
DECLARE_HOOK(android_vh_binder_select_worklist_ilocked,
|
|
||||||
TP_PROTO(struct list_head **list, struct binder_thread *thread, struct binder_proc *proc,
|
|
||||||
int wait_for_proc_work),
|
|
||||||
TP_ARGS(list, thread, proc, wait_for_proc_work));
|
|
||||||
DECLARE_HOOK(android_vh_binder_new_ref,
|
DECLARE_HOOK(android_vh_binder_new_ref,
|
||||||
TP_PROTO(struct task_struct *proc, uint32_t ref_desc, int node_debug_id),
|
TP_PROTO(struct task_struct *proc, uint32_t ref_desc, int node_debug_id),
|
||||||
TP_ARGS(proc, ref_desc, node_debug_id));
|
TP_ARGS(proc, ref_desc, node_debug_id));
|
||||||
|
@@ -71,7 +71,18 @@ DECLARE_HOOK(android_vh_mutex_unlock_slowpath_end,
|
|||||||
DECLARE_HOOK(android_vh_mutex_start_check_new_owner,
|
DECLARE_HOOK(android_vh_mutex_start_check_new_owner,
|
||||||
TP_PROTO(struct mutex *lock),
|
TP_PROTO(struct mutex *lock),
|
||||||
TP_ARGS(lock));
|
TP_ARGS(lock));
|
||||||
|
DECLARE_HOOK(android_vh_record_mutex_lock_starttime,
|
||||||
|
TP_PROTO(struct task_struct *tsk, unsigned long settime_jiffies),
|
||||||
|
TP_ARGS(tsk, settime_jiffies));
|
||||||
|
DECLARE_HOOK(android_vh_record_rtmutex_lock_starttime,
|
||||||
|
TP_PROTO(struct task_struct *tsk, unsigned long settime_jiffies),
|
||||||
|
TP_ARGS(tsk, settime_jiffies));
|
||||||
|
DECLARE_HOOK(android_vh_record_rwsem_lock_starttime,
|
||||||
|
TP_PROTO(struct task_struct *tsk, unsigned long settime_jiffies),
|
||||||
|
TP_ARGS(tsk, settime_jiffies));
|
||||||
|
DECLARE_HOOK(android_vh_record_percpu_rwsem_lock_starttime,
|
||||||
|
TP_PROTO(struct task_struct *tsk, unsigned long settime_jiffies),
|
||||||
|
TP_ARGS(tsk, settime_jiffies));
|
||||||
/* macro versions of hooks are no longer required */
|
/* macro versions of hooks are no longer required */
|
||||||
|
|
||||||
#endif /* _TRACE_HOOK_DTASK_H */
|
#endif /* _TRACE_HOOK_DTASK_H */
|
||||||
|
@@ -8,6 +8,10 @@
|
|||||||
#include <linux/tracepoint.h>
|
#include <linux/tracepoint.h>
|
||||||
#include <trace/hooks/vendor_hooks.h>
|
#include <trace/hooks/vendor_hooks.h>
|
||||||
#include <linux/plist.h>
|
#include <linux/plist.h>
|
||||||
|
#ifndef __GENKSYMS__
|
||||||
|
#include <linux/futex.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Following tracepoints are not exported in tracefs and provide a
|
* Following tracepoints are not exported in tracefs and provide a
|
||||||
* mechanism for vendor modules to hook and extend functionality
|
* mechanism for vendor modules to hook and extend functionality
|
||||||
@@ -22,6 +26,36 @@ DECLARE_HOOK(android_vh_futex_sleep_start,
|
|||||||
TP_PROTO(struct task_struct *p),
|
TP_PROTO(struct task_struct *p),
|
||||||
TP_ARGS(p));
|
TP_ARGS(p));
|
||||||
|
|
||||||
|
DECLARE_HOOK(android_vh_do_futex,
|
||||||
|
TP_PROTO(int cmd,
|
||||||
|
unsigned int *flags,
|
||||||
|
u32 __user *uaddr2),
|
||||||
|
TP_ARGS(cmd, flags, uaddr2));
|
||||||
|
|
||||||
|
DECLARE_HOOK(android_vh_futex_wait_start,
|
||||||
|
TP_PROTO(unsigned int flags,
|
||||||
|
u32 bitset),
|
||||||
|
TP_ARGS(flags, bitset));
|
||||||
|
|
||||||
|
DECLARE_HOOK(android_vh_futex_wait_end,
|
||||||
|
TP_PROTO(unsigned int flags,
|
||||||
|
u32 bitset),
|
||||||
|
TP_ARGS(flags, bitset));
|
||||||
|
|
||||||
|
DECLARE_HOOK(android_vh_futex_wake_traverse_plist,
|
||||||
|
TP_PROTO(struct plist_head *chain, int *target_nr,
|
||||||
|
union futex_key key, u32 bitset),
|
||||||
|
TP_ARGS(chain, target_nr, key, bitset));
|
||||||
|
|
||||||
|
DECLARE_HOOK(android_vh_futex_wake_this,
|
||||||
|
TP_PROTO(int ret, int nr_wake, int target_nr,
|
||||||
|
struct task_struct *p),
|
||||||
|
TP_ARGS(ret, nr_wake, target_nr, p));
|
||||||
|
|
||||||
|
DECLARE_HOOK(android_vh_futex_wake_up_q_finish,
|
||||||
|
TP_PROTO(int nr_wake, int target_nr),
|
||||||
|
TP_ARGS(nr_wake, target_nr));
|
||||||
|
|
||||||
/* macro versions of hooks are no longer required */
|
/* macro versions of hooks are no longer required */
|
||||||
|
|
||||||
#endif /* _TRACE_HOOK_FUTEX_H */
|
#endif /* _TRACE_HOOK_FUTEX_H */
|
||||||
|
@@ -391,14 +391,6 @@ DECLARE_HOOK(android_vh_setscheduler_uclamp,
|
|||||||
TP_PROTO(struct task_struct *tsk, int clamp_id, unsigned int value),
|
TP_PROTO(struct task_struct *tsk, int clamp_id, unsigned int value),
|
||||||
TP_ARGS(tsk, clamp_id, value));
|
TP_ARGS(tsk, clamp_id, value));
|
||||||
|
|
||||||
DECLARE_HOOK(android_vh_pidfd_open,
|
|
||||||
TP_PROTO(struct pid *p),
|
|
||||||
TP_ARGS(p));
|
|
||||||
|
|
||||||
DECLARE_HOOK(android_vh_mmput,
|
|
||||||
TP_PROTO(void *unused),
|
|
||||||
TP_ARGS(unused));
|
|
||||||
|
|
||||||
DECLARE_HOOK(android_vh_sched_pelt_multiplier,
|
DECLARE_HOOK(android_vh_sched_pelt_multiplier,
|
||||||
TP_PROTO(unsigned int old, unsigned int cur, int *ret),
|
TP_PROTO(unsigned int old, unsigned int cur, int *ret),
|
||||||
TP_ARGS(old, cur, ret));
|
TP_ARGS(old, cur, ret));
|
||||||
|
@@ -24,6 +24,11 @@ DECLARE_HOOK(android_vh_thermal_pm_notify_suspend,
|
|||||||
TP_PROTO(struct thermal_zone_device *tz, int *irq_wakeable),
|
TP_PROTO(struct thermal_zone_device *tz, int *irq_wakeable),
|
||||||
TP_ARGS(tz, irq_wakeable));
|
TP_ARGS(tz, irq_wakeable));
|
||||||
|
|
||||||
|
struct thermal_cooling_device;
|
||||||
|
DECLARE_HOOK(android_vh_disable_thermal_cooling_stats,
|
||||||
|
TP_PROTO(struct thermal_cooling_device *cdev, bool *disable_stats),
|
||||||
|
TP_ARGS(cdev, disable_stats));
|
||||||
|
|
||||||
#endif /* _TRACE_HOOK_THERMAL_H */
|
#endif /* _TRACE_HOOK_THERMAL_H */
|
||||||
/* This part must be outside protection */
|
/* This part must be outside protection */
|
||||||
#include <trace/define_trace.h>
|
#include <trace/define_trace.h>
|
||||||
|
@@ -2328,6 +2328,47 @@ int task_cgroup_path(struct task_struct *task, char *buf, size_t buflen)
|
|||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(task_cgroup_path);
|
EXPORT_SYMBOL_GPL(task_cgroup_path);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* cgroup_attach_lock - Lock for ->attach()
|
||||||
|
* @lock_threadgroup: whether to down_write cgroup_threadgroup_rwsem
|
||||||
|
*
|
||||||
|
* cgroup migration sometimes needs to stabilize threadgroups against forks and
|
||||||
|
* exits by write-locking cgroup_threadgroup_rwsem. However, some ->attach()
|
||||||
|
* implementations (e.g. cpuset), also need to disable CPU hotplug.
|
||||||
|
* Unfortunately, letting ->attach() operations acquire cpus_read_lock() can
|
||||||
|
* lead to deadlocks.
|
||||||
|
*
|
||||||
|
* Bringing up a CPU may involve creating new tasks which requires read-locking
|
||||||
|
* threadgroup_rwsem, so threadgroup_rwsem nests inside cpus_read_lock(). If we
|
||||||
|
* call an ->attach() which acquires the cpus lock while write-locking
|
||||||
|
* threadgroup_rwsem, the locking order is reversed and we end up waiting for an
|
||||||
|
* on-going CPU hotplug operation which in turn is waiting for the
|
||||||
|
* threadgroup_rwsem to be released to create new tasks. For more details:
|
||||||
|
*
|
||||||
|
* http://lkml.kernel.org/r/20220711174629.uehfmqegcwn2lqzu@wubuntu
|
||||||
|
*
|
||||||
|
* Resolve the situation by always acquiring cpus_read_lock() before optionally
|
||||||
|
* write-locking cgroup_threadgroup_rwsem. This allows ->attach() to assume that
|
||||||
|
* CPU hotplug is disabled on entry.
|
||||||
|
*/
|
||||||
|
static void cgroup_attach_lock(bool lock_threadgroup)
|
||||||
|
{
|
||||||
|
cpus_read_lock();
|
||||||
|
if (lock_threadgroup)
|
||||||
|
percpu_down_write(&cgroup_threadgroup_rwsem);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* cgroup_attach_unlock - Undo cgroup_attach_lock()
|
||||||
|
* @lock_threadgroup: whether to up_write cgroup_threadgroup_rwsem
|
||||||
|
*/
|
||||||
|
static void cgroup_attach_unlock(bool lock_threadgroup)
|
||||||
|
{
|
||||||
|
if (lock_threadgroup)
|
||||||
|
percpu_up_write(&cgroup_threadgroup_rwsem);
|
||||||
|
cpus_read_unlock();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* cgroup_migrate_add_task - add a migration target task to a migration context
|
* cgroup_migrate_add_task - add a migration target task to a migration context
|
||||||
* @task: target task
|
* @task: target task
|
||||||
@@ -2812,9 +2853,8 @@ int cgroup_attach_task(struct cgroup *dst_cgrp, struct task_struct *leader,
|
|||||||
}
|
}
|
||||||
|
|
||||||
struct task_struct *cgroup_procs_write_start(char *buf, bool threadgroup,
|
struct task_struct *cgroup_procs_write_start(char *buf, bool threadgroup,
|
||||||
bool *locked,
|
bool *threadgroup_locked,
|
||||||
struct cgroup *dst_cgrp)
|
struct cgroup *dst_cgrp)
|
||||||
__acquires(&cgroup_threadgroup_rwsem)
|
|
||||||
{
|
{
|
||||||
struct task_struct *tsk;
|
struct task_struct *tsk;
|
||||||
pid_t pid;
|
pid_t pid;
|
||||||
@@ -2832,12 +2872,8 @@ struct task_struct *cgroup_procs_write_start(char *buf, bool threadgroup,
|
|||||||
* Therefore, we can skip the global lock.
|
* Therefore, we can skip the global lock.
|
||||||
*/
|
*/
|
||||||
lockdep_assert_held(&cgroup_mutex);
|
lockdep_assert_held(&cgroup_mutex);
|
||||||
if (pid || threadgroup) {
|
*threadgroup_locked = pid || threadgroup;
|
||||||
percpu_down_write(&cgroup_threadgroup_rwsem);
|
cgroup_attach_lock(*threadgroup_locked);
|
||||||
*locked = true;
|
|
||||||
} else {
|
|
||||||
*locked = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
rcu_read_lock();
|
rcu_read_lock();
|
||||||
if (pid) {
|
if (pid) {
|
||||||
@@ -2871,17 +2907,14 @@ struct task_struct *cgroup_procs_write_start(char *buf, bool threadgroup,
|
|||||||
goto out_unlock_rcu;
|
goto out_unlock_rcu;
|
||||||
|
|
||||||
out_unlock_threadgroup:
|
out_unlock_threadgroup:
|
||||||
if (*locked) {
|
cgroup_attach_unlock(*threadgroup_locked);
|
||||||
percpu_up_write(&cgroup_threadgroup_rwsem);
|
*threadgroup_locked = false;
|
||||||
*locked = false;
|
|
||||||
}
|
|
||||||
out_unlock_rcu:
|
out_unlock_rcu:
|
||||||
rcu_read_unlock();
|
rcu_read_unlock();
|
||||||
return tsk;
|
return tsk;
|
||||||
}
|
}
|
||||||
|
|
||||||
void cgroup_procs_write_finish(struct task_struct *task, bool locked)
|
void cgroup_procs_write_finish(struct task_struct *task, bool threadgroup_locked)
|
||||||
__releases(&cgroup_threadgroup_rwsem)
|
|
||||||
{
|
{
|
||||||
struct cgroup_subsys *ss;
|
struct cgroup_subsys *ss;
|
||||||
int ssid;
|
int ssid;
|
||||||
@@ -2889,8 +2922,8 @@ void cgroup_procs_write_finish(struct task_struct *task, bool locked)
|
|||||||
/* release reference from cgroup_procs_write_start() */
|
/* release reference from cgroup_procs_write_start() */
|
||||||
put_task_struct(task);
|
put_task_struct(task);
|
||||||
|
|
||||||
if (locked)
|
cgroup_attach_unlock(threadgroup_locked);
|
||||||
percpu_up_write(&cgroup_threadgroup_rwsem);
|
|
||||||
for_each_subsys(ss, ssid)
|
for_each_subsys(ss, ssid)
|
||||||
if (ss->post_attach)
|
if (ss->post_attach)
|
||||||
ss->post_attach();
|
ss->post_attach();
|
||||||
@@ -2945,12 +2978,11 @@ static int cgroup_update_dfl_csses(struct cgroup *cgrp)
|
|||||||
struct cgroup_subsys_state *d_css;
|
struct cgroup_subsys_state *d_css;
|
||||||
struct cgroup *dsct;
|
struct cgroup *dsct;
|
||||||
struct ext_css_set *ext_src_set;
|
struct ext_css_set *ext_src_set;
|
||||||
|
bool has_tasks;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
lockdep_assert_held(&cgroup_mutex);
|
lockdep_assert_held(&cgroup_mutex);
|
||||||
|
|
||||||
percpu_down_write(&cgroup_threadgroup_rwsem);
|
|
||||||
|
|
||||||
/* look up all csses currently attached to @cgrp's subtree */
|
/* look up all csses currently attached to @cgrp's subtree */
|
||||||
spin_lock_irq(&css_set_lock);
|
spin_lock_irq(&css_set_lock);
|
||||||
cgroup_for_each_live_descendant_pre(dsct, d_css, cgrp) {
|
cgroup_for_each_live_descendant_pre(dsct, d_css, cgrp) {
|
||||||
@@ -2961,6 +2993,15 @@ static int cgroup_update_dfl_csses(struct cgroup *cgrp)
|
|||||||
}
|
}
|
||||||
spin_unlock_irq(&css_set_lock);
|
spin_unlock_irq(&css_set_lock);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* We need to write-lock threadgroup_rwsem while migrating tasks.
|
||||||
|
* However, if there are no source csets for @cgrp, changing its
|
||||||
|
* controllers isn't gonna produce any task migrations and the
|
||||||
|
* write-locking can be skipped safely.
|
||||||
|
*/
|
||||||
|
has_tasks = !list_empty(&mgctx.preloaded_src_csets);
|
||||||
|
cgroup_attach_lock(has_tasks);
|
||||||
|
|
||||||
/* NULL dst indicates self on default hierarchy */
|
/* NULL dst indicates self on default hierarchy */
|
||||||
ret = cgroup_migrate_prepare_dst(&mgctx);
|
ret = cgroup_migrate_prepare_dst(&mgctx);
|
||||||
if (ret)
|
if (ret)
|
||||||
@@ -2980,7 +3021,7 @@ static int cgroup_update_dfl_csses(struct cgroup *cgrp)
|
|||||||
ret = cgroup_migrate_execute(&mgctx);
|
ret = cgroup_migrate_execute(&mgctx);
|
||||||
out_finish:
|
out_finish:
|
||||||
cgroup_migrate_finish(&mgctx);
|
cgroup_migrate_finish(&mgctx);
|
||||||
percpu_up_write(&cgroup_threadgroup_rwsem);
|
cgroup_attach_unlock(has_tasks);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4855,13 +4896,13 @@ static ssize_t cgroup_procs_write(struct kernfs_open_file *of,
|
|||||||
struct task_struct *task;
|
struct task_struct *task;
|
||||||
const struct cred *saved_cred;
|
const struct cred *saved_cred;
|
||||||
ssize_t ret;
|
ssize_t ret;
|
||||||
bool locked;
|
bool threadgroup_locked;
|
||||||
|
|
||||||
dst_cgrp = cgroup_kn_lock_live(of->kn, false);
|
dst_cgrp = cgroup_kn_lock_live(of->kn, false);
|
||||||
if (!dst_cgrp)
|
if (!dst_cgrp)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
task = cgroup_procs_write_start(buf, true, &locked, dst_cgrp);
|
task = cgroup_procs_write_start(buf, true, &threadgroup_locked, dst_cgrp);
|
||||||
ret = PTR_ERR_OR_ZERO(task);
|
ret = PTR_ERR_OR_ZERO(task);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out_unlock;
|
goto out_unlock;
|
||||||
@@ -4887,7 +4928,7 @@ static ssize_t cgroup_procs_write(struct kernfs_open_file *of,
|
|||||||
ret = cgroup_attach_task(dst_cgrp, task, true);
|
ret = cgroup_attach_task(dst_cgrp, task, true);
|
||||||
|
|
||||||
out_finish:
|
out_finish:
|
||||||
cgroup_procs_write_finish(task, locked);
|
cgroup_procs_write_finish(task, threadgroup_locked);
|
||||||
out_unlock:
|
out_unlock:
|
||||||
cgroup_kn_unlock(of->kn);
|
cgroup_kn_unlock(of->kn);
|
||||||
|
|
||||||
@@ -4907,7 +4948,7 @@ static ssize_t cgroup_threads_write(struct kernfs_open_file *of,
|
|||||||
struct task_struct *task;
|
struct task_struct *task;
|
||||||
const struct cred *saved_cred;
|
const struct cred *saved_cred;
|
||||||
ssize_t ret;
|
ssize_t ret;
|
||||||
bool locked;
|
bool threadgroup_locked;
|
||||||
|
|
||||||
buf = strstrip(buf);
|
buf = strstrip(buf);
|
||||||
|
|
||||||
@@ -4915,7 +4956,7 @@ static ssize_t cgroup_threads_write(struct kernfs_open_file *of,
|
|||||||
if (!dst_cgrp)
|
if (!dst_cgrp)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
task = cgroup_procs_write_start(buf, false, &locked, dst_cgrp);
|
task = cgroup_procs_write_start(buf, false, &threadgroup_locked, dst_cgrp);
|
||||||
ret = PTR_ERR_OR_ZERO(task);
|
ret = PTR_ERR_OR_ZERO(task);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out_unlock;
|
goto out_unlock;
|
||||||
@@ -4941,7 +4982,7 @@ static ssize_t cgroup_threads_write(struct kernfs_open_file *of,
|
|||||||
ret = cgroup_attach_task(dst_cgrp, task, false);
|
ret = cgroup_attach_task(dst_cgrp, task, false);
|
||||||
|
|
||||||
out_finish:
|
out_finish:
|
||||||
cgroup_procs_write_finish(task, locked);
|
cgroup_procs_write_finish(task, threadgroup_locked);
|
||||||
out_unlock:
|
out_unlock:
|
||||||
cgroup_kn_unlock(of->kn);
|
cgroup_kn_unlock(of->kn);
|
||||||
|
|
||||||
|
@@ -2238,7 +2238,7 @@ static void cpuset_attach(struct cgroup_taskset *tset)
|
|||||||
cgroup_taskset_first(tset, &css);
|
cgroup_taskset_first(tset, &css);
|
||||||
cs = css_cs(css);
|
cs = css_cs(css);
|
||||||
|
|
||||||
cpus_read_lock();
|
lockdep_assert_cpus_held(); /* see cgroup_attach_lock() */
|
||||||
mutex_lock(&cpuset_mutex);
|
mutex_lock(&cpuset_mutex);
|
||||||
|
|
||||||
guarantee_online_mems(cs, &cpuset_attach_nodemask_to);
|
guarantee_online_mems(cs, &cpuset_attach_nodemask_to);
|
||||||
@@ -2292,7 +2292,6 @@ static void cpuset_attach(struct cgroup_taskset *tset)
|
|||||||
wake_up(&cpuset_attach_wq);
|
wake_up(&cpuset_attach_wq);
|
||||||
|
|
||||||
mutex_unlock(&cpuset_mutex);
|
mutex_unlock(&cpuset_mutex);
|
||||||
cpus_read_unlock();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* The various types of files and directories in a cpuset file system */
|
/* The various types of files and directories in a cpuset file system */
|
||||||
|
@@ -1150,10 +1150,8 @@ void mmput(struct mm_struct *mm)
|
|||||||
{
|
{
|
||||||
might_sleep();
|
might_sleep();
|
||||||
|
|
||||||
if (atomic_dec_and_test(&mm->mm_users)) {
|
if (atomic_dec_and_test(&mm->mm_users))
|
||||||
trace_android_vh_mmput(NULL);
|
|
||||||
__mmput(mm);
|
__mmput(mm);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(mmput);
|
EXPORT_SYMBOL_GPL(mmput);
|
||||||
|
|
||||||
|
@@ -1594,6 +1594,7 @@ futex_wake(u32 __user *uaddr, unsigned int flags, int nr_wake, u32 bitset)
|
|||||||
struct futex_q *this, *next;
|
struct futex_q *this, *next;
|
||||||
union futex_key key = FUTEX_KEY_INIT;
|
union futex_key key = FUTEX_KEY_INIT;
|
||||||
int ret;
|
int ret;
|
||||||
|
int target_nr;
|
||||||
DEFINE_WAKE_Q(wake_q);
|
DEFINE_WAKE_Q(wake_q);
|
||||||
|
|
||||||
if (!bitset)
|
if (!bitset)
|
||||||
@@ -1611,6 +1612,7 @@ futex_wake(u32 __user *uaddr, unsigned int flags, int nr_wake, u32 bitset)
|
|||||||
|
|
||||||
spin_lock(&hb->lock);
|
spin_lock(&hb->lock);
|
||||||
|
|
||||||
|
trace_android_vh_futex_wake_traverse_plist(&hb->chain, &target_nr, key, bitset);
|
||||||
plist_for_each_entry_safe(this, next, &hb->chain, list) {
|
plist_for_each_entry_safe(this, next, &hb->chain, list) {
|
||||||
if (match_futex (&this->key, &key)) {
|
if (match_futex (&this->key, &key)) {
|
||||||
if (this->pi_state || this->rt_waiter) {
|
if (this->pi_state || this->rt_waiter) {
|
||||||
@@ -1622,6 +1624,7 @@ futex_wake(u32 __user *uaddr, unsigned int flags, int nr_wake, u32 bitset)
|
|||||||
if (!(this->bitset & bitset))
|
if (!(this->bitset & bitset))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
trace_android_vh_futex_wake_this(ret, nr_wake, target_nr, this->task);
|
||||||
mark_wake_futex(&wake_q, this);
|
mark_wake_futex(&wake_q, this);
|
||||||
if (++ret >= nr_wake)
|
if (++ret >= nr_wake)
|
||||||
break;
|
break;
|
||||||
@@ -1630,6 +1633,7 @@ futex_wake(u32 __user *uaddr, unsigned int flags, int nr_wake, u32 bitset)
|
|||||||
|
|
||||||
spin_unlock(&hb->lock);
|
spin_unlock(&hb->lock);
|
||||||
wake_up_q(&wake_q);
|
wake_up_q(&wake_q);
|
||||||
|
trace_android_vh_futex_wake_up_q_finish(nr_wake, target_nr);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2699,6 +2703,7 @@ static int futex_wait(u32 __user *uaddr, unsigned int flags, u32 val,
|
|||||||
if (!bitset)
|
if (!bitset)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
q.bitset = bitset;
|
q.bitset = bitset;
|
||||||
|
trace_android_vh_futex_wait_start(flags, bitset);
|
||||||
|
|
||||||
to = futex_setup_timer(abs_time, &timeout, flags,
|
to = futex_setup_timer(abs_time, &timeout, flags,
|
||||||
current->timer_slack_ns);
|
current->timer_slack_ns);
|
||||||
@@ -2748,6 +2753,7 @@ out:
|
|||||||
hrtimer_cancel(&to->timer);
|
hrtimer_cancel(&to->timer);
|
||||||
destroy_hrtimer_on_stack(&to->timer);
|
destroy_hrtimer_on_stack(&to->timer);
|
||||||
}
|
}
|
||||||
|
trace_android_vh_futex_wait_end(flags, bitset);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3733,6 +3739,7 @@ long do_futex(u32 __user *uaddr, int op, u32 val, ktime_t *timeout,
|
|||||||
return -ENOSYS;
|
return -ENOSYS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
trace_android_vh_do_futex(cmd, &flags, uaddr2);
|
||||||
switch (cmd) {
|
switch (cmd) {
|
||||||
case FUTEX_WAIT:
|
case FUTEX_WAIT:
|
||||||
val3 = FUTEX_BITSET_MATCH_ANY;
|
val3 = FUTEX_BITSET_MATCH_ANY;
|
||||||
|
@@ -170,8 +170,10 @@ static __always_inline bool __mutex_trylock_fast(struct mutex *lock)
|
|||||||
unsigned long curr = (unsigned long)current;
|
unsigned long curr = (unsigned long)current;
|
||||||
unsigned long zero = 0UL;
|
unsigned long zero = 0UL;
|
||||||
|
|
||||||
if (atomic_long_try_cmpxchg_acquire(&lock->owner, &zero, curr))
|
if (atomic_long_try_cmpxchg_acquire(&lock->owner, &zero, curr)) {
|
||||||
|
trace_android_vh_record_mutex_lock_starttime(current, jiffies);
|
||||||
return true;
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -748,6 +750,7 @@ static noinline void __sched __mutex_unlock_slowpath(struct mutex *lock, unsigne
|
|||||||
*/
|
*/
|
||||||
void __sched mutex_unlock(struct mutex *lock)
|
void __sched mutex_unlock(struct mutex *lock)
|
||||||
{
|
{
|
||||||
|
trace_android_vh_record_mutex_lock_starttime(current, 0);
|
||||||
#ifndef CONFIG_DEBUG_LOCK_ALLOC
|
#ifndef CONFIG_DEBUG_LOCK_ALLOC
|
||||||
if (__mutex_unlock_fast(lock))
|
if (__mutex_unlock_fast(lock))
|
||||||
return;
|
return;
|
||||||
@@ -978,6 +981,7 @@ __mutex_lock_common(struct mutex *lock, long state, unsigned int subclass,
|
|||||||
lock_acquired(&lock->dep_map, ip);
|
lock_acquired(&lock->dep_map, ip);
|
||||||
if (ww_ctx)
|
if (ww_ctx)
|
||||||
ww_mutex_set_context_fastpath(ww, ww_ctx);
|
ww_mutex_set_context_fastpath(ww, ww_ctx);
|
||||||
|
trace_android_vh_record_mutex_lock_starttime(current, jiffies);
|
||||||
preempt_enable();
|
preempt_enable();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -1097,6 +1101,7 @@ skip_wait:
|
|||||||
|
|
||||||
spin_unlock(&lock->wait_lock);
|
spin_unlock(&lock->wait_lock);
|
||||||
preempt_enable();
|
preempt_enable();
|
||||||
|
trace_android_vh_record_mutex_lock_starttime(current, jiffies);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err:
|
err:
|
||||||
@@ -1433,8 +1438,10 @@ int __sched mutex_trylock(struct mutex *lock)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
locked = __mutex_trylock(lock);
|
locked = __mutex_trylock(lock);
|
||||||
if (locked)
|
if (locked) {
|
||||||
|
trace_android_vh_record_mutex_lock_starttime(current, jiffies);
|
||||||
mutex_acquire(&lock->dep_map, 0, 1, _RET_IP_);
|
mutex_acquire(&lock->dep_map, 0, 1, _RET_IP_);
|
||||||
|
}
|
||||||
|
|
||||||
return locked;
|
return locked;
|
||||||
}
|
}
|
||||||
|
@@ -10,6 +10,21 @@
|
|||||||
#include <linux/slab.h>
|
#include <linux/slab.h>
|
||||||
#include <linux/errno.h>
|
#include <linux/errno.h>
|
||||||
|
|
||||||
|
#include <trace/hooks/dtask.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* trace_android_vh_record_percpu_rwsem_lock_starttime is called in
|
||||||
|
* include/linux/percpu-rwsem.h by including include/hooks/dtask.h, which
|
||||||
|
* will result to build-err. So we create
|
||||||
|
* func:_trace_android_vh_record_percpu_rwsem_lock_starttime for percpu-rwsem.h to call.
|
||||||
|
*/
|
||||||
|
void _trace_android_vh_record_percpu_rwsem_lock_starttime(struct task_struct *tsk,
|
||||||
|
unsigned long settime)
|
||||||
|
{
|
||||||
|
trace_android_vh_record_percpu_rwsem_lock_starttime(tsk, settime);
|
||||||
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(_trace_android_vh_record_percpu_rwsem_lock_starttime);
|
||||||
|
|
||||||
int __percpu_init_rwsem(struct percpu_rw_semaphore *sem,
|
int __percpu_init_rwsem(struct percpu_rw_semaphore *sem,
|
||||||
const char *name, struct lock_class_key *key)
|
const char *name, struct lock_class_key *key)
|
||||||
{
|
{
|
||||||
@@ -237,11 +252,13 @@ void percpu_down_write(struct percpu_rw_semaphore *sem)
|
|||||||
|
|
||||||
/* Wait for all active readers to complete. */
|
/* Wait for all active readers to complete. */
|
||||||
rcuwait_wait_event(&sem->writer, readers_active_check(sem), TASK_UNINTERRUPTIBLE);
|
rcuwait_wait_event(&sem->writer, readers_active_check(sem), TASK_UNINTERRUPTIBLE);
|
||||||
|
trace_android_vh_record_percpu_rwsem_lock_starttime(current, jiffies);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(percpu_down_write);
|
EXPORT_SYMBOL_GPL(percpu_down_write);
|
||||||
|
|
||||||
void percpu_up_write(struct percpu_rw_semaphore *sem)
|
void percpu_up_write(struct percpu_rw_semaphore *sem)
|
||||||
{
|
{
|
||||||
|
trace_android_vh_record_percpu_rwsem_lock_starttime(current, 0);
|
||||||
rwsem_release(&sem->dep_map, _RET_IP_);
|
rwsem_release(&sem->dep_map, _RET_IP_);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -1471,6 +1471,7 @@ static inline void __rt_mutex_lock(struct rt_mutex *lock, unsigned int subclass)
|
|||||||
|
|
||||||
mutex_acquire(&lock->dep_map, subclass, 0, _RET_IP_);
|
mutex_acquire(&lock->dep_map, subclass, 0, _RET_IP_);
|
||||||
rt_mutex_fastlock(lock, TASK_UNINTERRUPTIBLE, rt_mutex_slowlock);
|
rt_mutex_fastlock(lock, TASK_UNINTERRUPTIBLE, rt_mutex_slowlock);
|
||||||
|
trace_android_vh_record_rtmutex_lock_starttime(current, jiffies);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_DEBUG_LOCK_ALLOC
|
#ifdef CONFIG_DEBUG_LOCK_ALLOC
|
||||||
@@ -1519,6 +1520,8 @@ int __sched rt_mutex_lock_interruptible(struct rt_mutex *lock)
|
|||||||
ret = rt_mutex_fastlock(lock, TASK_INTERRUPTIBLE, rt_mutex_slowlock);
|
ret = rt_mutex_fastlock(lock, TASK_INTERRUPTIBLE, rt_mutex_slowlock);
|
||||||
if (ret)
|
if (ret)
|
||||||
mutex_release(&lock->dep_map, _RET_IP_);
|
mutex_release(&lock->dep_map, _RET_IP_);
|
||||||
|
else
|
||||||
|
trace_android_vh_record_rtmutex_lock_starttime(current, jiffies);
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@@ -1563,6 +1566,8 @@ rt_mutex_timed_lock(struct rt_mutex *lock, struct hrtimer_sleeper *timeout)
|
|||||||
rt_mutex_slowlock);
|
rt_mutex_slowlock);
|
||||||
if (ret)
|
if (ret)
|
||||||
mutex_release(&lock->dep_map, _RET_IP_);
|
mutex_release(&lock->dep_map, _RET_IP_);
|
||||||
|
else
|
||||||
|
trace_android_vh_record_rtmutex_lock_starttime(current, jiffies);
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@@ -1589,6 +1594,8 @@ int __sched rt_mutex_trylock(struct rt_mutex *lock)
|
|||||||
ret = rt_mutex_fasttrylock(lock, rt_mutex_slowtrylock);
|
ret = rt_mutex_fasttrylock(lock, rt_mutex_slowtrylock);
|
||||||
if (ret)
|
if (ret)
|
||||||
mutex_acquire(&lock->dep_map, 0, 1, _RET_IP_);
|
mutex_acquire(&lock->dep_map, 0, 1, _RET_IP_);
|
||||||
|
else
|
||||||
|
trace_android_vh_record_rtmutex_lock_starttime(current, jiffies);
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@@ -1603,6 +1610,7 @@ void __sched rt_mutex_unlock(struct rt_mutex *lock)
|
|||||||
{
|
{
|
||||||
mutex_release(&lock->dep_map, _RET_IP_);
|
mutex_release(&lock->dep_map, _RET_IP_);
|
||||||
rt_mutex_fastunlock(lock, rt_mutex_slowunlock);
|
rt_mutex_fastunlock(lock, rt_mutex_slowunlock);
|
||||||
|
trace_android_vh_record_rtmutex_lock_starttime(current, 0);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(rt_mutex_unlock);
|
EXPORT_SYMBOL_GPL(rt_mutex_unlock);
|
||||||
|
|
||||||
|
@@ -279,6 +279,10 @@ static inline bool rwsem_read_trylock(struct rw_semaphore *sem)
|
|||||||
long cnt = atomic_long_add_return_acquire(RWSEM_READER_BIAS, &sem->count);
|
long cnt = atomic_long_add_return_acquire(RWSEM_READER_BIAS, &sem->count);
|
||||||
if (WARN_ON_ONCE(cnt < 0))
|
if (WARN_ON_ONCE(cnt < 0))
|
||||||
rwsem_set_nonspinnable(sem);
|
rwsem_set_nonspinnable(sem);
|
||||||
|
|
||||||
|
if ((cnt & RWSEM_READ_FAILED_MASK) == 0)
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, jiffies);
|
||||||
|
|
||||||
return !(cnt & RWSEM_READ_FAILED_MASK);
|
return !(cnt & RWSEM_READ_FAILED_MASK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1021,9 +1025,11 @@ rwsem_down_read_slowpath(struct rw_semaphore *sem, int state)
|
|||||||
raw_spin_unlock_irq(&sem->wait_lock);
|
raw_spin_unlock_irq(&sem->wait_lock);
|
||||||
wake_up_q(&wake_q);
|
wake_up_q(&wake_q);
|
||||||
}
|
}
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, jiffies);
|
||||||
return sem;
|
return sem;
|
||||||
} else if (rwsem_reader_phase_trylock(sem, waiter.last_rowner)) {
|
} else if (rwsem_reader_phase_trylock(sem, waiter.last_rowner)) {
|
||||||
/* rwsem_reader_phase_trylock() implies ACQUIRE on success */
|
/* rwsem_reader_phase_trylock() implies ACQUIRE on success */
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, jiffies);
|
||||||
return sem;
|
return sem;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1104,6 +1110,7 @@ queue:
|
|||||||
__set_current_state(TASK_RUNNING);
|
__set_current_state(TASK_RUNNING);
|
||||||
trace_android_vh_rwsem_read_wait_finish(sem);
|
trace_android_vh_rwsem_read_wait_finish(sem);
|
||||||
lockevent_inc(rwsem_rlock);
|
lockevent_inc(rwsem_rlock);
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, jiffies);
|
||||||
return sem;
|
return sem;
|
||||||
|
|
||||||
out_nolock:
|
out_nolock:
|
||||||
@@ -1150,6 +1157,7 @@ rwsem_down_write_slowpath(struct rw_semaphore *sem, int state)
|
|||||||
if (rwsem_can_spin_on_owner(sem, RWSEM_WR_NONSPINNABLE) &&
|
if (rwsem_can_spin_on_owner(sem, RWSEM_WR_NONSPINNABLE) &&
|
||||||
rwsem_optimistic_spin(sem, true)) {
|
rwsem_optimistic_spin(sem, true)) {
|
||||||
/* rwsem_optimistic_spin() implies ACQUIRE on success */
|
/* rwsem_optimistic_spin() implies ACQUIRE on success */
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, jiffies);
|
||||||
return sem;
|
return sem;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1280,7 +1288,7 @@ trylock_again:
|
|||||||
rwsem_disable_reader_optspin(sem, disable_rspin);
|
rwsem_disable_reader_optspin(sem, disable_rspin);
|
||||||
raw_spin_unlock_irq(&sem->wait_lock);
|
raw_spin_unlock_irq(&sem->wait_lock);
|
||||||
lockevent_inc(rwsem_wlock);
|
lockevent_inc(rwsem_wlock);
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, jiffies);
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
out_nolock:
|
out_nolock:
|
||||||
@@ -1396,6 +1404,7 @@ static inline int __down_read_trylock(struct rw_semaphore *sem)
|
|||||||
if (atomic_long_try_cmpxchg_acquire(&sem->count, &tmp,
|
if (atomic_long_try_cmpxchg_acquire(&sem->count, &tmp,
|
||||||
tmp + RWSEM_READER_BIAS)) {
|
tmp + RWSEM_READER_BIAS)) {
|
||||||
rwsem_set_reader_owned(sem);
|
rwsem_set_reader_owned(sem);
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, jiffies);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
} while (!(tmp & RWSEM_READ_FAILED_MASK));
|
} while (!(tmp & RWSEM_READ_FAILED_MASK));
|
||||||
@@ -1410,10 +1419,12 @@ static inline void __down_write(struct rw_semaphore *sem)
|
|||||||
long tmp = RWSEM_UNLOCKED_VALUE;
|
long tmp = RWSEM_UNLOCKED_VALUE;
|
||||||
|
|
||||||
if (unlikely(!atomic_long_try_cmpxchg_acquire(&sem->count, &tmp,
|
if (unlikely(!atomic_long_try_cmpxchg_acquire(&sem->count, &tmp,
|
||||||
RWSEM_WRITER_LOCKED)))
|
RWSEM_WRITER_LOCKED))) {
|
||||||
rwsem_down_write_slowpath(sem, TASK_UNINTERRUPTIBLE);
|
rwsem_down_write_slowpath(sem, TASK_UNINTERRUPTIBLE);
|
||||||
else
|
} else {
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, jiffies);
|
||||||
rwsem_set_owner(sem);
|
rwsem_set_owner(sem);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline int __down_write_killable(struct rw_semaphore *sem)
|
static inline int __down_write_killable(struct rw_semaphore *sem)
|
||||||
@@ -1425,6 +1436,7 @@ static inline int __down_write_killable(struct rw_semaphore *sem)
|
|||||||
if (IS_ERR(rwsem_down_write_slowpath(sem, TASK_KILLABLE)))
|
if (IS_ERR(rwsem_down_write_slowpath(sem, TASK_KILLABLE)))
|
||||||
return -EINTR;
|
return -EINTR;
|
||||||
} else {
|
} else {
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, jiffies);
|
||||||
rwsem_set_owner(sem);
|
rwsem_set_owner(sem);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
@@ -1440,6 +1452,7 @@ static inline int __down_write_trylock(struct rw_semaphore *sem)
|
|||||||
if (atomic_long_try_cmpxchg_acquire(&sem->count, &tmp,
|
if (atomic_long_try_cmpxchg_acquire(&sem->count, &tmp,
|
||||||
RWSEM_WRITER_LOCKED)) {
|
RWSEM_WRITER_LOCKED)) {
|
||||||
rwsem_set_owner(sem);
|
rwsem_set_owner(sem);
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, jiffies);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@@ -1455,6 +1468,7 @@ static inline void __up_read(struct rw_semaphore *sem)
|
|||||||
DEBUG_RWSEMS_WARN_ON(sem->magic != sem, sem);
|
DEBUG_RWSEMS_WARN_ON(sem->magic != sem, sem);
|
||||||
DEBUG_RWSEMS_WARN_ON(!is_rwsem_reader_owned(sem), sem);
|
DEBUG_RWSEMS_WARN_ON(!is_rwsem_reader_owned(sem), sem);
|
||||||
|
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, 0);
|
||||||
rwsem_clear_reader_owned(sem);
|
rwsem_clear_reader_owned(sem);
|
||||||
tmp = atomic_long_add_return_release(-RWSEM_READER_BIAS, &sem->count);
|
tmp = atomic_long_add_return_release(-RWSEM_READER_BIAS, &sem->count);
|
||||||
DEBUG_RWSEMS_WARN_ON(tmp < 0, sem);
|
DEBUG_RWSEMS_WARN_ON(tmp < 0, sem);
|
||||||
@@ -1481,6 +1495,7 @@ static inline void __up_write(struct rw_semaphore *sem)
|
|||||||
DEBUG_RWSEMS_WARN_ON((rwsem_owner(sem) != current) &&
|
DEBUG_RWSEMS_WARN_ON((rwsem_owner(sem) != current) &&
|
||||||
!rwsem_test_oflags(sem, RWSEM_NONSPINNABLE), sem);
|
!rwsem_test_oflags(sem, RWSEM_NONSPINNABLE), sem);
|
||||||
|
|
||||||
|
trace_android_vh_record_rwsem_lock_starttime(current, 0);
|
||||||
rwsem_clear_owner(sem);
|
rwsem_clear_owner(sem);
|
||||||
tmp = atomic_long_fetch_add_release(-RWSEM_WRITER_LOCKED, &sem->count);
|
tmp = atomic_long_fetch_add_release(-RWSEM_WRITER_LOCKED, &sem->count);
|
||||||
if (unlikely(tmp & RWSEM_FLAG_WAITERS))
|
if (unlikely(tmp & RWSEM_FLAG_WAITERS))
|
||||||
|
@@ -45,9 +45,6 @@
|
|||||||
#include <net/sock.h>
|
#include <net/sock.h>
|
||||||
#include <uapi/linux/pidfd.h>
|
#include <uapi/linux/pidfd.h>
|
||||||
|
|
||||||
#undef CREATE_TRACE_POINTS
|
|
||||||
#include <trace/hooks/sched.h>
|
|
||||||
|
|
||||||
struct pid init_struct_pid = {
|
struct pid init_struct_pid = {
|
||||||
.count = REFCOUNT_INIT(1),
|
.count = REFCOUNT_INIT(1),
|
||||||
.tasks = {
|
.tasks = {
|
||||||
@@ -605,7 +602,6 @@ SYSCALL_DEFINE2(pidfd_open, pid_t, pid, unsigned int, flags)
|
|||||||
else
|
else
|
||||||
fd = -EINVAL;
|
fd = -EINVAL;
|
||||||
|
|
||||||
trace_android_vh_pidfd_open(p);
|
|
||||||
put_pid(p);
|
put_pid(p);
|
||||||
return fd;
|
return fd;
|
||||||
}
|
}
|
||||||
|
@@ -1193,6 +1193,7 @@ static inline u64 rq_clock_task(struct rq *rq)
|
|||||||
return rq->clock_task;
|
return rq->clock_task;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_SMP
|
||||||
DECLARE_PER_CPU(u64, clock_task_mult);
|
DECLARE_PER_CPU(u64, clock_task_mult);
|
||||||
|
|
||||||
static inline u64 rq_clock_task_mult(struct rq *rq)
|
static inline u64 rq_clock_task_mult(struct rq *rq)
|
||||||
@@ -1202,6 +1203,12 @@ static inline u64 rq_clock_task_mult(struct rq *rq)
|
|||||||
|
|
||||||
return per_cpu(clock_task_mult, cpu_of(rq));
|
return per_cpu(clock_task_mult, cpu_of(rq));
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
static inline u64 rq_clock_task_mult(struct rq *rq)
|
||||||
|
{
|
||||||
|
return rq_clock_task(rq);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* By default the decay is the default pelt decay period.
|
* By default the decay is the default pelt decay period.
|
||||||
|
@@ -152,6 +152,7 @@ static __refdata struct memblock_type *memblock_memory = &memblock.memory;
|
|||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
static int memblock_debug __initdata_memblock;
|
static int memblock_debug __initdata_memblock;
|
||||||
|
static bool memblock_nomap_remove __initdata_memblock;
|
||||||
static bool system_has_some_mirror __initdata_memblock = false;
|
static bool system_has_some_mirror __initdata_memblock = false;
|
||||||
static int memblock_can_resize __initdata_memblock;
|
static int memblock_can_resize __initdata_memblock;
|
||||||
static int memblock_memory_in_slab __initdata_memblock = 0;
|
static int memblock_memory_in_slab __initdata_memblock = 0;
|
||||||
@@ -1904,6 +1905,18 @@ static int __init early_memblock(char *p)
|
|||||||
}
|
}
|
||||||
early_param("memblock", early_memblock);
|
early_param("memblock", early_memblock);
|
||||||
|
|
||||||
|
static int __init early_memblock_nomap(char *str)
|
||||||
|
{
|
||||||
|
kstrtobool(str, &memblock_nomap_remove);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
early_param("android12_only.will_be_removed_soon.memblock_nomap_remove", early_memblock_nomap);
|
||||||
|
|
||||||
|
bool __init memblock_is_nomap_remove(void)
|
||||||
|
{
|
||||||
|
return memblock_nomap_remove;
|
||||||
|
}
|
||||||
|
|
||||||
static void __init __free_pages_memory(unsigned long start, unsigned long end)
|
static void __init __free_pages_memory(unsigned long start, unsigned long end)
|
||||||
{
|
{
|
||||||
int order;
|
int order;
|
||||||
|
@@ -1490,12 +1490,11 @@ free_it:
|
|||||||
* Is there need to periodically free_page_list? It would
|
* Is there need to periodically free_page_list? It would
|
||||||
* appear not as the counts should be low
|
* appear not as the counts should be low
|
||||||
*/
|
*/
|
||||||
|
trace_android_vh_page_trylock_clear(page);
|
||||||
if (unlikely(PageTransHuge(page)))
|
if (unlikely(PageTransHuge(page)))
|
||||||
destroy_compound_page(page);
|
destroy_compound_page(page);
|
||||||
else {
|
else
|
||||||
trace_android_vh_page_trylock_clear(page);
|
|
||||||
list_add(&page->lru, &free_pages);
|
list_add(&page->lru, &free_pages);
|
||||||
}
|
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
activate_locked_split:
|
activate_locked_split:
|
||||||
|
Reference in New Issue
Block a user