diff --git a/android/abi_gki_aarch64.xml b/android/abi_gki_aarch64.xml index 7df9cac0fd66..7142911bdc25 100644 --- a/android/abi_gki_aarch64.xml +++ b/android/abi_gki_aarch64.xml @@ -913,6 +913,7 @@ + @@ -1862,6 +1863,8 @@ + + @@ -2008,6 +2011,7 @@ + @@ -2044,6 +2048,7 @@ + @@ -2080,6 +2085,7 @@ + @@ -2987,6 +2993,7 @@ + @@ -4307,6 +4314,7 @@ + @@ -80957,9 +80965,6 @@ - - - @@ -89740,9 +89745,6 @@ - - - @@ -102793,20 +102795,7 @@ - - - - - - - - - - - - - - + @@ -118462,6 +118451,12 @@ + + + + + + @@ -123489,6 +123484,15 @@ + + + + + + + + + @@ -124225,6 +124229,11 @@ + + + + + @@ -124404,6 +124413,10 @@ + + + + @@ -124602,6 +124615,15 @@ + + + + + + + + + @@ -129310,6 +129332,11 @@ + + + + + @@ -135956,6 +135983,10 @@ + + + + diff --git a/android/abi_gki_aarch64_rockchip b/android/abi_gki_aarch64_rockchip index 6c4930b55133..d2a2cad1d6cf 100644 --- a/android/abi_gki_aarch64_rockchip +++ b/android/abi_gki_aarch64_rockchip @@ -12,7 +12,9 @@ arm64_const_caps_ready arm64_use_ng_mappings __arm_smccc_smc + atomic_notifier_call_chain atomic_notifier_chain_register + atomic_notifier_chain_unregister bdget_disk bdput __bitmap_set @@ -222,22 +224,34 @@ down_write driver_unregister drm_add_edid_modes + drm_atomic_get_crtc_state + drm_atomic_get_new_connector_for_encoder + drm_atomic_helper_bridge_destroy_state + drm_atomic_helper_bridge_duplicate_state + drm_atomic_helper_bridge_reset drm_atomic_helper_connector_destroy_state drm_atomic_helper_connector_duplicate_state drm_atomic_helper_connector_reset + drm_bridge_add + drm_bridge_attach + drm_bridge_remove drm_compat_ioctl drm_connector_attach_encoder drm_connector_cleanup drm_connector_init + drm_connector_init_with_ddc drm_connector_update_edid_property __drm_dbg drm_detect_hdmi_monitor + drm_detect_monitor_audio drm_dev_alloc drm_dev_dbg + drm_dev_printk drm_dev_put drm_dev_register drm_dev_unregister drm_display_info_set_bus_formats + drm_dp_bw_code_to_link_rate __drm_err drm_gem_dumb_map_offset drm_gem_handle_create @@ -252,17 +266,24 @@ drm_gem_vm_close drm_get_edid drm_hdmi_avi_infoframe_from_display_mode + drm_hdmi_vendor_infoframe_from_display_mode drm_helper_hpd_irq_event drm_helper_probe_single_connector_modes drm_ioctl + drm_match_cea_mode drm_mode_copy drm_mode_create drm_mode_duplicate drm_mode_probed_add drm_mode_set_name drm_mode_vrefresh + drm_object_attach_property + drm_of_find_panel_or_bridge drm_open drm_panel_disable + drm_panel_enable + drm_panel_get_modes + drm_panel_prepare drm_panel_unprepare drm_poll drm_prime_gem_destroy @@ -381,6 +402,7 @@ __kfifo_alloc __kfifo_free __kfifo_in + __kfifo_out kfree kfree_const __kmalloc @@ -412,8 +434,17 @@ __log_write_mmio lzo1x_decompress_safe media_create_pad_link + media_device_init + __media_device_register + media_device_unregister media_entity_pads_init media_entity_remote_pad + media_graph_walk_cleanup + media_graph_walk_init + media_graph_walk_next + media_graph_walk_start + media_pipeline_start + media_pipeline_stop memcpy memdup_user memset @@ -456,6 +487,8 @@ of_get_parent of_get_property of_get_regulator_init_data + of_graph_get_remote_node + of_graph_parse_endpoint of_iomap of_irq_get_byname of_machine_is_compatible @@ -478,9 +511,12 @@ panic_notifier_list param_ops_bool param_ops_int + param_ops_string param_ops_uint + PDE_DATA __per_cpu_offset pfn_valid + phy_configure phy_exit phy_init phy_power_off @@ -525,6 +561,7 @@ prepare_to_wait_event print_hex_dump printk + proc_create_data put_device put_disk __put_page @@ -536,9 +573,11 @@ ___ratelimit rational_best_approximation _raw_spin_lock + _raw_spin_lock_bh _raw_spin_lock_irq _raw_spin_lock_irqsave _raw_spin_unlock + _raw_spin_unlock_bh _raw_spin_unlock_irq _raw_spin_unlock_irqrestore rdev_get_drvdata @@ -576,6 +615,7 @@ regulator_set_voltage_sel_regmap regulator_set_voltage_time_sel remap_pfn_range + remove_proc_entry reset_control_assert reset_control_deassert revalidate_disk_size @@ -644,6 +684,7 @@ strlcpy strlen strncmp + strncpy strnlen strscpy strstr @@ -677,6 +718,7 @@ uuid_null v4l2_async_notifier_cleanup v4l2_async_notifier_init + v4l2_async_notifier_register v4l2_async_register_subdev v4l2_async_subdev_notifier_register v4l2_async_unregister_subdev @@ -687,15 +729,54 @@ v4l2_ctrl_handler_setup v4l2_ctrl_new_std v4l2_ctrl_new_std_menu_items + v4l2_device_register + v4l2_device_register_subdev + __v4l2_device_register_subdev_nodes + v4l2_device_unregister + v4l2_device_unregister_subdev + v4l2_event_queue + v4l2_event_subdev_unsubscribe + v4l2_event_subscribe + v4l2_fh_open v4l2_i2c_subdev_init + v4l2_pipeline_pm_get + v4l2_pipeline_pm_put v4l2_querymenu v4l2_subdev_call_wrappers v4l2_subdev_init + v4l2_subdev_link_validate + v4l2_type_names vabits_actual + vb2_buffer_done vb2_common_vm_ops vb2_create_framevec vb2_destroy_framevec + vb2_dma_contig_memops + vb2_fop_mmap + vb2_fop_poll + vb2_fop_release + vb2_ioctl_create_bufs + vb2_ioctl_dqbuf + vb2_ioctl_expbuf + vb2_ioctl_prepare_buf + vb2_ioctl_qbuf + vb2_ioctl_querybuf + vb2_ioctl_reqbufs + vb2_ioctl_streamoff + vb2_ioctl_streamon + vb2_ops_wait_finish + vb2_ops_wait_prepare + vb2_plane_cookie + vb2_plane_vaddr + vb2_queue_init + vb2_queue_release + vb2_vmalloc_memops vfree + video_devdata + video_device_release_empty + video_ioctl2 + __video_register_device + video_unregister_device vmalloc vmap vm_get_page_prot @@ -738,6 +819,15 @@ # required by aes-ce-ccm.ko ce_aes_expandkey +# required by analogix_dp.ko + drm_dp_aux_register + drm_dp_aux_unregister + drm_dp_dpcd_read + drm_dp_dpcd_write + drm_dp_start_crc + drm_dp_stop_crc + irq_modify_status + # required by ch.ko param_array_ops scsi_device_lookup @@ -834,6 +924,66 @@ regmap_raw_read regmap_raw_write +# required by dw-hdmi-cec.ko + cec_allocate_adapter + cec_delete_adapter + cec_notifier_cec_adap_register + cec_notifier_cec_adap_unregister + cec_received_msg_ts + cec_register_adapter + cec_transmit_attempt_done_ts + cec_unregister_adapter + devm_remove_action + +# required by dw-hdmi-hdcp.ko + device_create_file + device_remove_file + kstrtobool + misc_deregister + misc_register + sha1_init + sha1_transform + +# required by dw-hdmi.ko + bcmp + cancel_delayed_work + cec_fill_conn_info_from_drm + cec_notifier_conn_register + cec_notifier_conn_unregister + cec_notifier_set_phys_addr + cec_notifier_set_phys_addr_from_edid + cec_queue_pin_hpd_event + drm_bridge_hpd_notify + drm_connector_attach_max_bpc_property + drm_default_rgb_quant_range + drm_hdmi_avi_infoframe_quant_range + drm_hdmi_infoframe_set_hdr_metadata + drm_mode_is_420_also + drm_mode_is_420_only + drm_property_replace_global_blob + drm_scdc_read + drm_scdc_set_high_tmds_clock_ratio + drm_scdc_set_scrambling + drm_scdc_write + extcon_set_property_capability + hdmi_drm_infoframe_pack + hdmi_vendor_infoframe_pack + mod_delayed_work_on + of_get_i2c_adapter_by_node + +# required by dw-mipi-dsi.ko + debugfs_attr_read + debugfs_attr_write + drm_panel_bridge_add_typed + drm_panel_bridge_connector + drm_panel_bridge_remove + mipi_dsi_create_packet + mipi_dsi_host_register + mipi_dsi_host_unregister + of_drm_find_bridge + simple_attr_open + simple_attr_release + # required by dw_mmc-rockchip.ko clk_get_phase mmc_send_tuning @@ -854,8 +1004,6 @@ mmc_regulator_set_vqmmc mmc_remove_host mmc_request_done - _raw_spin_lock_bh - _raw_spin_unlock_bh sdio_signal_irq sg_miter_next sg_miter_start @@ -1015,7 +1163,6 @@ devm_gpio_request_one # required by ledtrig-heartbeat.ko - atomic_notifier_chain_unregister avenrun # required by lzo-rle.ko @@ -1239,13 +1386,9 @@ wakeup_source_remove # required by phy-rockchip-inno-usb3.ko - atomic_notifier_call_chain strcasecmp usb_add_phy -# required by phy-rockchip-mipi-rx.ko - of_graph_get_remote_node - # required by phy-rockchip-usb.ko __of_reset_control_get @@ -1453,7 +1596,6 @@ drm_add_modes_noedid drm_atomic_commit drm_atomic_get_connector_state - drm_atomic_get_crtc_state drm_atomic_get_plane_state drm_atomic_helper_check drm_atomic_helper_check_plane_state @@ -1485,8 +1627,6 @@ drm_atomic_set_mode_for_crtc drm_atomic_state_alloc __drm_atomic_state_free - drm_bridge_attach - drm_connector_init_with_ddc drm_connector_list_iter_begin drm_connector_list_iter_end drm_connector_list_iter_next @@ -1503,10 +1643,7 @@ drm_crtc_vblank_on drm_crtc_vblank_put drm_debugfs_create_files - drm_detect_monitor_audio - drm_dev_printk drm_do_get_edid - drm_dp_bw_code_to_link_rate drm_dp_channel_eq_ok drm_encoder_cleanup drm_encoder_init @@ -1537,13 +1674,11 @@ drm_gem_unmap_dma_buf drm_get_format_info drm_get_format_name - drm_hdmi_vendor_infoframe_from_display_mode drm_helper_mode_fill_fb_struct drm_kms_helper_hotplug_event drm_kms_helper_poll_enable drm_kms_helper_poll_fini drm_kms_helper_poll_init - drm_match_cea_mode drm_mm_init drm_mm_insert_node_in_range drmm_mode_config_init @@ -1557,6 +1692,7 @@ drm_mode_create_tv_properties drm_mode_crtc_set_gamma_size drm_mode_debug_printmodeline + drm_mode_is_420 drm_mode_object_get drm_mode_object_put drm_mode_prune_invalid @@ -1567,13 +1703,8 @@ drm_mode_validate_driver drm_mode_validate_size drm_mode_validate_ycbcr420 - drm_object_attach_property drm_of_crtc_port_mask drm_of_encoder_active_endpoint - drm_of_find_panel_or_bridge - drm_panel_enable - drm_panel_get_modes - drm_panel_prepare drm_plane_cleanup drm_plane_create_alpha_property drm_plane_create_blend_mode_property @@ -1581,9 +1712,12 @@ drm_plane_create_zpos_property drm_prime_get_contiguous_size __drm_printfn_seq_file + drm_property_create drm_property_create_bitmask + drm_property_create_enum drm_property_create_object drm_property_create_range + drm_property_destroy __drm_puts_seq_file drm_send_event_locked drm_simple_encoder_init @@ -1604,6 +1738,7 @@ of_graph_get_port_by_id of_graph_get_remote_port of_graph_get_remote_port_parent + phy_mipi_dphy_get_default_config platform_find_device_by_driver __platform_register_drivers platform_unregister_drivers @@ -1681,12 +1816,9 @@ irq_stat # required by sii902x.ko - drm_bridge_add - drm_bridge_remove drm_display_mode_to_videomode hdmi_audio_infoframe_pack hdmi_avi_infoframe_pack - of_graph_parse_endpoint of_property_read_variable_u8_array # required by snd-soc-cx2072x.ko @@ -1777,7 +1909,6 @@ power_supply_register power_supply_unregister strncasecmp - strncpy # required by tps65132-regulator.ko regulator_set_active_discharge_regmap @@ -1796,70 +1927,19 @@ v4l2_async_notifier_add_subdev v4l2_async_notifier_unregister +# required by video_rkcif.ko + media_entity_setup_link + # required by video_rkisp.ko - __kfifo_out kmalloc_order_trace media_device_cleanup - media_device_init - __media_device_register - media_device_unregister - media_graph_walk_cleanup - media_graph_walk_init - media_graph_walk_next - media_graph_walk_start - media_pipeline_start - media_pipeline_stop __memcpy_fromio __memcpy_toio of_property_read_u64 - param_ops_string param_ops_ullong - PDE_DATA - proc_create_data - remove_proc_entry - v4l2_async_notifier_register v4l2_ctrl_g_ctrl_int64 - v4l2_device_register - v4l2_device_register_subdev - __v4l2_device_register_subdev_nodes - v4l2_device_unregister - v4l2_device_unregister_subdev - v4l2_event_queue - v4l2_event_subdev_unsubscribe - v4l2_event_subscribe v4l2_event_unsubscribe - v4l2_fh_open v4l2_pipeline_link_notify - v4l2_pipeline_pm_get - v4l2_pipeline_pm_put - v4l2_subdev_link_validate - v4l2_type_names - vb2_buffer_done - vb2_dma_contig_memops - vb2_fop_mmap - vb2_fop_poll - vb2_fop_release - vb2_ioctl_create_bufs - vb2_ioctl_dqbuf - vb2_ioctl_expbuf - vb2_ioctl_prepare_buf - vb2_ioctl_qbuf - vb2_ioctl_querybuf - vb2_ioctl_reqbufs - vb2_ioctl_streamoff - vb2_ioctl_streamon - vb2_ops_wait_finish - vb2_ops_wait_prepare - vb2_plane_cookie - vb2_plane_vaddr - vb2_queue_init - vb2_queue_release - vb2_vmalloc_memops - video_devdata - video_device_release_empty - video_ioctl2 - __video_register_device - video_unregister_device # required by videobuf2-dma-sg.ko split_page diff --git a/drivers/android/vendor_hooks.c b/drivers/android/vendor_hooks.c index 07c97e495629..423219ac6989 100644 --- a/drivers/android/vendor_hooks.c +++ b/drivers/android/vendor_hooks.c @@ -386,3 +386,8 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_pci_d3_sleep); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_kmalloc_slab); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmap_region); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_try_to_unmap_one); +EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mem_cgroup_id_remove); +EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mem_cgroup_css_offline); +EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mem_cgroup_css_online); +EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mem_cgroup_free); +EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mem_cgroup_alloc); diff --git a/kernel/sched/core.c b/kernel/sched/core.c index adac9409fb2e..eaa1bc9adf1a 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -3116,6 +3116,9 @@ try_to_wake_up(struct task_struct *p, unsigned int state, int wake_flags) if (READ_ONCE(p->on_rq) && ttwu_runnable(p, wake_flags)) goto unlock; + if (p->state & TASK_UNINTERRUPTIBLE) + trace_sched_blocked_reason(p); + #ifdef CONFIG_SMP /* * Ensure we load p->on_cpu _after_ p->on_rq, otherwise it would be diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 6d004a085089..29f84c11acf9 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -999,7 +999,6 @@ update_stats_enqueue_sleeper(struct cfs_rq *cfs_rq, struct sched_entity *se) } trace_sched_stat_blocked(tsk, delta); - trace_sched_blocked_reason(tsk); /* * Blocking time is in units of nanosecs, so shift by