mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 02:50:49 +09:00
471dfd69fb39b630acd3d62ef90a136341040ac7
1055037 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
471dfd69fb |
ANDROID: clang: update to 14.0.7
Bug: 219872481 Change-Id: I3a3883547751ea2d52045e9a431f3e13f4755b1a Signed-off-by: Yi Kong <yikong@google.com> |
||
|
|
f5216880de |
FROMGIT: KVM: arm64: Handle host stage-2 faults from 32-bit EL0
When pKVM is enabled, host memory accesses are translated by an identity
mapping at stage-2, which is populated lazily in response to synchronous
exceptions from 64-bit EL1 and EL0.
Extend this handling to cover exceptions originating from 32-bit EL0 as
well. Although these are very unlikely to occur in practice, as the
kernel typically ensures that user pages are initialised before mapping
them in, drivers could still map previously untouched device pages into
userspace and expect things to work rather than panic the system.
Cc: Quentin Perret <qperret@google.com>
Cc: Marc Zyngier <maz@kernel.org>
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20220427171332.13635-1-will@kernel.org
(cherry picked from commit
|
||
|
|
98ab6de28b |
ANDROID: abi_gki_aarch64_qcom: Update qcom abi symbol list
Functions changes summary: 0 Removed, 0 Changed, 1 Added function Variables changes summary: 0 Removed, 0 Changed, 0 Added variable 1 Added function: [A] 'function extcon_dev* extcon_get_extcon_dev(const char*)' Bug: 211744078 Change-Id: Ibe85507feee78b71e89c06a009bc3b80787e58f5 Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com> |
||
|
|
fa81585b5d |
ANDROID: GKI: update exynosauto symbol list
This adds to update symbol list of Exynos Auto SoC after enabling android kernel on top of type-1 hypervisor. Leaf changes summary: 3 artifacts changed Changed leaf types summary: 0 leaf type changed Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 3 Added functions Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable 3 Added functions: [A] 'function unsigned long int devm_get_free_pages(device*, gfp_t, unsigned int)' [A] 'function int sigprocmask(int, sigset_t*, sigset_t*)' [A] 'function void uuid_gen(uuid_t*)' Bug: 230822114 Signed-off-by: Chanho Park <chanho61.park@samsung.com> Change-Id: Ibe58e693e2230a7adda07d48a7446a50a40f322f |
||
|
|
4b7d638447 |
ANDROID: ABI: Update symbols to unisoc whitelist for the 3th
Update whitelist for the symbols used by the unisoc device and update the ABI representation accordingly. Leaf changes summary: 11 artifacts changed Changed leaf types summary: 0 leaf type changed Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 2 Added functions Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 9 Added variables 2 Added functions: [A] 'function int __traceiter_android_rvh_tk_based_time_sync(void*, timekeeper*)' [A] 'function block_device* blkdev_get_by_dev(dev_t, fmode_t, void*)' 9 Added variables: [A] 'tracepoint __tracepoint_android_rvh_effective_cpu_util' [A] 'tracepoint __tracepoint_android_vh_dma_buf_release' [A] 'tracepoint __tracepoint_android_vh_get_thermal_zone_device' [A] 'tracepoint __tracepoint_android_vh_psci_cpu_suspend' [A] 'tracepoint __tracepoint_android_vh_psci_tos_resident_on' [A] 'tracepoint __tracepoint_android_vh_regmap_update' [A] 'tracepoint __tracepoint_android_vh_thermal_register' [A] 'tracepoint __tracepoint_android_vh_thermal_unregister' [A] 'tracepoint __tracepoint_android_vh_usb_new_device_added' Bug: 230843855 Change-Id: Ia507bb71b23a303140ddf979b692ce51bccacc92 Signed-off-by: Jian Gong <Jian.Gong@unisoc.com> |
||
|
|
d7355d4294 |
ANDROID: fix kernelci build issue for configfs module
This fixes the kernelci error:
"ERROR: modpost: module configfs uses symbol kern_path from namespace
VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver, but does not import it."
Fixes:
|
||
|
|
fbfc5c68b6 |
ANDROID: GKI: Disable CONFIG_KUNIT
Disabling KUNIT (and KUNIT_DEBUGFS) due to unresolved concerns. Bug: 228892853 Signed-off-by: Joe Fradley <joefradley@google.com> Change-Id: I6e2cabb6e86326f0da664f7e36cd73fcb0ecfd25 |
||
|
|
7a68c2c451 |
ANDROID: fix KCFLAGS override by __ANDROID_COMMON_KERNEL__
Our test build is broken by KCFLAGS overrided in build.config.comm.
Since Linux Makefile supports 'export KCFLAGS=XXX' to customize the
KCFLAGS, and we should keep this functionality.
Bug: 230818006
Fixes:
|
||
|
|
dd97c0f284 |
ANDROID: abi_gki_aarch64_qcom: Update qcom abi symbol list
Leaf changes summary: 54 artifacts changed Changed leaf types summary: 0 leaf type changed Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 54 Added functions Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable 54 Added functions: [A] 'function dentry* debugfs_rename(dentry*, dentry*, dentry*, const char*)' [A] 'function int device_get_phy_mode(device*)' [A] 'function net_device* devm_alloc_etherdev_mqs(device*, int, unsigned int, unsigned int)' [A] 'function int flow_block_cb_setup_simple(flow_block_offload*, list_head*, flow_setup_cb_t*, void*, void*, bool)' [A] 'function void flow_rule_match_basic(const flow_rule*, flow_match_basic*)' [A] 'function void flow_rule_match_ipv4_addrs(const flow_rule*, flow_match_ipv4_addrs*)' [A] 'function void flow_rule_match_ports(const flow_rule*, flow_match_ports*)' [A] 'function void flow_rule_match_vlan(const flow_rule*, flow_match_vlan*)' [A] 'function int inet6_ioctl(socket*, unsigned int, unsigned long int)' [A] 'function int inet_ioctl(socket*, unsigned int, unsigned long int)' [A] 'function mdio_device* mdio_device_create(mii_bus*, int)' [A] 'function void mdio_device_free(mdio_device*)' [A] 'function void netdev_rss_key_fill(void*, size_t)' [A] 'function void page_pool_destroy(page_pool*)' [A] 'function void page_pool_release_page(page_pool*, page*)' [A] 'function void phy_ethtool_get_wol(phy_device*, ethtool_wolinfo*)' [A] 'function int phy_ethtool_set_wol(phy_device*, ethtool_wolinfo*)' [A] 'function void phylink_disconnect_phy(phylink*)' [A] 'function int phylink_ethtool_get_eee(phylink*, ethtool_eee*)' [A] 'function void phylink_ethtool_get_pauseparam(phylink*, ethtool_pauseparam*)' [A] 'function void phylink_ethtool_get_wol(phylink*, ethtool_wolinfo*)' [A] 'function int phylink_ethtool_ksettings_get(phylink*, ethtool_link_ksettings*)' [A] 'function int phylink_ethtool_ksettings_set(phylink*, const ethtool_link_ksettings*)' [A] 'function int phylink_ethtool_nway_reset(phylink*)' [A] 'function int phylink_ethtool_set_eee(phylink*, ethtool_eee*)' [A] 'function int phylink_ethtool_set_pauseparam(phylink*, ethtool_pauseparam*)' [A] 'function int phylink_ethtool_set_wol(phylink*, ethtool_wolinfo*)' [A] 'function int phylink_get_eee_err(phylink*)' [A] 'function void phylink_mac_change(phylink*, bool)' [A] 'function int phylink_mii_ioctl(phylink*, ifreq*, int)' [A] 'function void phylink_resume(phylink*)' [A] 'function void phylink_set_pcs(phylink*, phylink_pcs*)' [A] 'function int phylink_speed_down(phylink*, bool)' [A] 'function int phylink_speed_up(phylink*)' [A] 'function void phylink_stop(phylink*)' [A] 'function void phylink_suspend(phylink*, bool)' [A] 'function bool xdp_rxq_info_is_reg(xdp_rxq_info*)' [A] 'function void xdp_rxq_info_unreg_mem_model(xdp_rxq_info*)' [A] 'function xdp_buff* xp_alloc(xsk_buff_pool*)' [A] 'function int xp_dma_map(xsk_buff_pool*, device*, unsigned long int, page**, u32)' [A] 'function void xp_dma_sync_for_cpu_slow(xdp_buff_xsk*)' [A] 'function void xp_dma_sync_for_device_slow(xsk_buff_pool*, dma_addr_t, size_t)' [A] 'function void xp_dma_unmap(xsk_buff_pool*, unsigned long int)' [A] 'function void xp_free(xdp_buff_xsk*)' [A] 'function dma_addr_t xp_raw_get_dma(xsk_buff_pool*, u64)' [A] 'function void xp_set_rxq_info(xsk_buff_pool*, xdp_rxq_info*)' [A] 'function void xsk_clear_rx_need_wakeup(xsk_buff_pool*)' [A] 'function xsk_buff_pool* xsk_get_pool_from_qid(net_device*, u16)' [A] 'function void xsk_set_rx_need_wakeup(xsk_buff_pool*)' [A] 'function void xsk_set_tx_need_wakeup(xsk_buff_pool*)' [A] 'function void xsk_tx_completed(xsk_buff_pool*, u32)' [A] 'function bool xsk_tx_peek_desc(xsk_buff_pool*, xdp_desc*)' [A] 'function void xsk_tx_release(xsk_buff_pool*)' [A] 'function bool xsk_uses_need_wakeup(xsk_buff_pool*)' Bug: 211744078 Change-Id: Ibe62ced922b992c56c6457fdf2c4ba20dfe874b4 Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com> |
||
|
|
7ec90fc9de |
FROMGIT: scsi: ufs: core: scsi_get_lba() error fix
When ufs initializes without scmd->device->sector_size set, scsi_get_lba()
will get a wrong shift number and trigger an ubsan error. The shift
exponent 4294967286 is too large for the 64-bit type 'sector_t' (aka
'unsigned long long').
Call scsi_get_lba() only when opcode is READ_10/WRITE_10/UNMAP.
Link: https://lore.kernel.org/r/20220307111752.10465-1-peter.wang@mediatek.com
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Peter Wang <peter.wang@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
(cherry picked from commit
|
||
|
|
6c55ca2cae |
ANDROID: Add flag to indicate compiling against ACK
Add a flag: __ANDROID_COMMON_KERNEL__ which out-of-tree vendor drivers can use to check if they are compiling against an Android Common Kernel. These out-of-tree vendor drivers can use this flag + LINUX_KERNEL_VERSION to determine if a feature has been backported. Bug: 229953929 Change-Id: I832344d63f3639479784753edfb7ac405068312f Signed-off-by: Elliot Berman <quic_eberman@quicinc.com> |
||
|
|
a322e22ea7 |
ANDROID: GKI: Update abi_gki_aarch64_qcom with symbols for mem-offline
Add the symbols that are needed for the mem-offline driver. Leaf changes summary: 5 artifacts changed Changed leaf types summary: 0 leaf type changed Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 5 Added functions Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable 5 Added functions: [A] 'function unsigned long int get_pfnblock_flags_mask(const page*, unsigned long int, unsigned long int)' [A] 'function unsigned long int isolate_and_split_free_page(page*, list_head*)' [A] 'function int isolate_anon_lru_page(page*)' [A] 'function int migrate_pages(list_head*, new_page_t*, free_page_t*, unsigned long int, migrate_mode, int, unsigned int*)' [A] 'function void putback_movable_pages(list_head*)' Bug: 201263307 Change-Id: Ia6c5c617f004dec5e7ca2df9aac2a50714c48b22 Signed-off-by: Georgi Djakov <quic_c_gdjako@quicinc.com> |
||
|
|
b6eb5c7512 |
ANDROID: GKI: Add symbol list for exynos
- Add Initial ABI Symbol list for Exynos SOC BUILD_CONFIG=common/build.config.gki.aarch64 build/build_abi.sh --update Leaf changes summary: 170 artifacts changed Changed leaf types summary: 0 leaf type changed Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 159 Added functions Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 11 Added variables 159 Added functions: [A] 'function void __do_once_done(bool*, static_key_true*, unsigned long int*, module*)' [A] 'function bool __do_once_start(bool*, unsigned long int*)' [A] 'function void __rb_erase_color(rb_node*, rb_root*, void (rb_node*, rb_node*)*)' [A] 'function void __rb_insert_augmented(rb_node*, rb_root*, void (rb_node*, rb_node*)*)' [A] 'function int __traceiter_android_rvh_can_migrate_task(void*, task_struct*, int, int*)' [A] 'function int __traceiter_android_rvh_cpu_cgroup_can_attach(void*, cgroup_taskset*, int*)' [A] 'function int __traceiter_android_rvh_cpufreq_transition(void*, cpufreq_policy*)' [A] 'function int __traceiter_android_rvh_find_lowest_rq(void*, task_struct*, cpumask*, int, int*)' [A] 'function int __traceiter_android_rvh_find_new_ilb(void*, cpumask*, int*)' [A] 'function int __traceiter_android_rvh_replace_next_task_fair(void*, rq*, task_struct**, sched_entity**, bool*, bool, task_struct*)' [A] 'function int __traceiter_android_rvh_sched_fork_init(void*, task_struct*)' [A] 'function int __traceiter_android_rvh_sched_nohz_balancer_kick(void*, rq*, unsigned int*, int*)' [A] 'function int __traceiter_android_rvh_sched_rebalance_domains(void*, rq*, int*)' [A] 'function int __traceiter_android_rvh_schedule(void*, task_struct*, task_struct*, rq*)' [A] 'function int __traceiter_android_rvh_select_fallback_rq(void*, int, task_struct*, int*)' [A] 'function int __traceiter_android_rvh_set_task_cpu(void*, task_struct*, unsigned int)' [A] 'function int __traceiter_android_vh_gic_set_affinity(void*, irq_data*, const cpumask*, bool, u8*, void*)' [A] 'function int __traceiter_android_vh_gic_v3_set_affinity(void*, irq_data*, const cpumask*, u64*, bool, void*)' [A] 'function int __traceiter_android_vh_logbuf_pr_cont(void*, printk_record*, size_t)' [A] 'function int __traceiter_ipi_entry(void*, const char*)' [A] 'function int __traceiter_ipi_exit(void*, const char*)' [A] 'function int __traceiter_ipi_raise(void*, const cpumask*, const char*)' [A] 'function void __wake_up_locked_key(wait_queue_head*, unsigned int, void*)' [A] 'function void* __xa_erase(xarray*, unsigned long int)' [A] 'function void* __xa_store(xarray*, unsigned long int, void*, gfp_t)' [A] 'function void _dev_alert(const device*, const char*, ...)' [A] 'function int _raw_write_trylock(rwlock_t*)' [A] 'function int class_create_file_ns(class*, const class_attribute*, void*)' [A] 'function cpuidle_driver* cpuidle_get_cpu_driver(cpuidle_device*)' [A] 'function int dapm_pinctrl_event(snd_soc_dapm_widget*, snd_kcontrol*, int)' [A] 'function void debugfs_create_file_size(const char*, umode_t, dentry*, void*, const file_operations*, loff_t)' [A] 'function ssize_t device_show_int(device*, device_attribute*, char*)' [A] 'function ssize_t device_store_int(device*, device_attribute*, const char*, size_t)' [A] 'function dma_buf_attachment* dma_buf_dynamic_attach(dma_buf*, device*, const dma_buf_attach_ops*, void*)' [A] 'function int dma_buf_get_flags(dma_buf*, unsigned long int*)' [A] 'function void dma_buf_move_notify(dma_buf*)' [A] 'function int dma_buf_pin(dma_buf_attachment*)' [A] 'function void dma_buf_unpin(dma_buf_attachment*)' [A] 'function void dma_fence_chain_init(dma_fence_chain*, dma_fence*, dma_fence*, uint64_t)' [A] 'function dma_fence* dma_fence_chain_walk(dma_fence*)' [A] 'function dma_fence* dma_fence_get_stub()' [A] 'function long int dma_fence_wait_any_timeout(dma_fence**, uint32_t, bool, long int, uint32_t*)' [A] 'function u64 dma_get_required_mask(device*)' [A] 'function int dma_resv_get_fences(dma_resv*, dma_fence**, unsigned int*, dma_fence***)' [A] 'function int do_wait_intr(wait_queue_head_t*, wait_queue_entry_t*)' [A] 'function int down_read_killable(rw_semaphore*)' [A] 'function int down_write_trylock(rw_semaphore*)' [A] 'function bool drm_any_plane_has_format(drm_device*, u32, u64)' [A] 'function void drm_atomic_bridge_chain_disable(drm_bridge*, drm_atomic_state*)' [A] 'function void drm_connector_attach_dp_subconnector_property(drm_connector*)' [A] 'function int drm_crtc_helper_set_config(drm_mode_set*, drm_modeset_acquire_ctx*)' [A] 'function bool drm_crtc_helper_set_mode(drm_crtc*, drm_display_mode*, int, int, drm_framebuffer*)' [A] 'function int drm_crtc_init(drm_device*, drm_crtc*, const drm_crtc_funcs*)' [A] 'function void drm_dp_set_subconnector_property(drm_connector*, drm_connector_status, const u8*, const u8*)' [A] 'function int drm_edid_header_is_valid(const u8*)' [A] 'function bool drm_edid_is_valid(edid*)' [A] 'function int drm_edid_to_speaker_allocation(edid*, u8**)' [A] 'function void drm_framebuffer_unregister_private(drm_framebuffer*)' [A] 'function void drm_helper_disable_unused_functions(drm_device*)' [A] 'function int drm_helper_force_disable_all(drm_device*)' [A] 'function void drm_helper_resume_force_mode(drm_device*)' [A] 'function bool drm_kms_helper_is_poll_worker()' [A] 'function int drm_mm_reserve_node(drm_mm*, drm_mm_node*)' [A] 'function int drm_mode_create_scaling_mode_property(drm_device*)' [A] 'function bool drm_mode_match(const drm_display_mode*, const drm_display_mode*, unsigned int)' [A] 'function int drm_prime_sg_to_dma_addr_array(sg_table*, dma_addr_t*, int)' [A] 'function void drm_print_bits(drm_printer*, unsigned long int, const char* const*, unsigned int)' [A] 'function int drm_syncobj_create(drm_syncobj**, uint32_t, dma_fence*)' [A] 'function int drm_syncobj_get_fd(drm_syncobj*, int*)' [A] 'function int drm_syncobj_get_handle(drm_file*, drm_syncobj*, u32*)' [A] 'function void drm_wait_one_vblank(drm_device*, unsigned int)' [A] 'function char* get_options(const char*, int, int*)' [A] 'function ssize_t hdmi_drm_infoframe_pack_only(const hdmi_drm_infoframe*, void*, size_t)' [A] 'function int i2c_bit_add_bus(i2c_adapter*)' [A] 'function int i3c_master_defslvs_locked(i3c_master_controller*)' [A] 'function int irq_force_affinity(unsigned int, const cpumask*)' [A] 'function int irq_set_handler_data(unsigned int, void*)' [A] 'function kobject* kobject_get(kobject*)' [A] 'function bool mem_encrypt_active()' [A] 'function void mmu_notifier_synchronize()' [A] 'function resource* pci_bus_resource_n(const pci_bus*, int)' [A] 'function int pci_enable_atomic_ops_to_root(pci_dev*, u32)' [A] 'function void* pci_map_rom(pci_dev*, size_t*)' [A] 'function int pci_msix_vec_count(pci_dev*)' [A] 'function u32 pci_rebar_get_possible_sizes(pci_dev*, int)' [A] 'function void pci_release_resource(pci_dev*, int)' [A] 'function int pci_resize_resource(pci_dev*, int, int)' [A] 'function void pci_unmap_rom(pci_dev*, void*)' [A] 'function int pci_wait_for_pending_transaction(pci_dev*)' [A] 'function pinctrl* pinctrl_get(device*)' [A] 'function bool printk_timed_ratelimit(unsigned long int*, unsigned int)' [A] 'function void proc_set_size(proc_dir_entry*, loff_t)' [A] 'function proc_dir_entry* proc_symlink(const char*, proc_dir_entry*, const char*)' [A] 'function rb_node* rb_first_postorder(const rb_root*)' [A] 'function rb_node* rb_next_postorder(const rb_node*)' [A] 'function reciprocal_value reciprocal_value(u32)' [A] 'function void refresh_frequency_limits(cpufreq_policy*)' [A] 'function int rtc_set_time(rtc_device*, rtc_time*)' [A] 'function void scsi_dma_unmap(scsi_cmnd*)' [A] 'function void scsi_eh_ready_devs(Scsi_Host*, list_head*, list_head*)' [A] 'function void smp_call_function_many(const cpumask*, smp_call_func_t, void*, bool)' [A] 'function int snd_hwdep_new(snd_card*, char*, int, snd_hwdep**)' [A] 'function unsigned int snd_pcm_rate_range_to_bits(unsigned int, unsigned int)' [A] 'function void snd_soc_component_async_complete(snd_soc_component*)' [A] 'function int snd_soc_component_update_bits_async(snd_soc_component*, unsigned int, unsigned int, unsigned int)' [A] 'function int snd_soc_dapm_get_pin_status(snd_soc_dapm_context*, const char*)' [A] 'function int snd_soc_dapm_weak_routes(snd_soc_dapm_context*, const snd_soc_dapm_route*, int)' [A] 'function snd_soc_dai* snd_soc_find_dai_with_mutex(const snd_soc_dai_link_component*)' [A] 'function int snd_soc_get_xr_sx(snd_kcontrol*, snd_ctl_elem_value*)' [A] 'function int snd_soc_put_xr_sx(snd_kcontrol*, snd_ctl_elem_value*)' [A] 'function const cpumask* system_32bit_el0_cpumask()' [A] 'function int tcp_register_congestion_control(tcp_congestion_ops*)' [A] 'function void tcp_reno_cong_avoid(sock*, u32, u32)' [A] 'function u32 tcp_reno_ssthresh(sock*)' [A] 'function u32 tcp_reno_undo_cwnd(sock*)' [A] 'function u32 tcp_slow_start(tcp_sock*, u32)' [A] 'function void tcp_unregister_congestion_control(tcp_congestion_ops*)' [A] 'function void ttm_bo_bulk_move_lru_tail(ttm_lru_bulk_move*)' [A] 'function bool ttm_bo_eviction_valuable(ttm_buffer_object*, const ttm_place*)' [A] 'function int ttm_bo_init_reserved(ttm_device*, ttm_buffer_object*, size_t, ttm_bo_type, ttm_placement*, uint32_t, ttm_operation_ctx*, sg_table*, dma_resv*, void (ttm_buffer_object*)*)' [A] 'function int ttm_bo_kmap(ttm_buffer_object*, unsigned long int, unsigned long int, ttm_bo_kmap_obj*)' [A] 'function void ttm_bo_kunmap(ttm_bo_kmap_obj*)' [A] 'function int ttm_bo_lock_delayed_workqueue(ttm_device*)' [A] 'function int ttm_bo_mem_space(ttm_buffer_object*, ttm_placement*, ttm_resource**, ttm_operation_ctx*)' [A] 'function int ttm_bo_mmap_obj(vm_area_struct*, ttm_buffer_object*)' [A] 'function int ttm_bo_move_accel_cleanup(ttm_buffer_object*, dma_fence*, bool, bool, ttm_resource*)' [A] 'function int ttm_bo_move_memcpy(ttm_buffer_object*, ttm_operation_ctx*, ttm_resource*)' [A] 'function void ttm_bo_move_to_lru_tail(ttm_buffer_object*, ttm_resource*, ttm_lru_bulk_move*)' [A] 'function void ttm_bo_put(ttm_buffer_object*)' [A] 'function void ttm_bo_unlock_delayed_workqueue(ttm_device*, int)' [A] 'function int ttm_bo_validate(ttm_buffer_object*, ttm_placement*, ttm_operation_ctx*)' [A] 'function int ttm_bo_vm_access(vm_area_struct*, unsigned long int, void*, int, int)' [A] 'function void ttm_bo_vm_close(vm_area_struct*)' [A] 'function vm_fault_t ttm_bo_vm_dummy_page(vm_fault*, pgprot_t)' [A] 'function vm_fault_t ttm_bo_vm_fault_reserved(vm_fault*, pgprot_t, unsigned long int)' [A] 'function void ttm_bo_vm_open(vm_area_struct*)' [A] 'function vm_fault_t ttm_bo_vm_reserve(ttm_buffer_object*, vm_fault*)' [A] 'function int ttm_bo_vmap(ttm_buffer_object*, dma_buf_map*)' [A] 'function void ttm_bo_vunmap(ttm_buffer_object*, dma_buf_map*)' [A] 'function int ttm_bo_wait(ttm_buffer_object*, bool, bool)' [A] 'function void ttm_device_fini(ttm_device*)' [A] 'function int ttm_device_init(ttm_device*, ttm_device_funcs*, device*, address_space*, drm_vma_offset_manager*, bool, bool)' [A] 'function void ttm_eu_backoff_reservation(ww_acquire_ctx*, list_head*)' [A] 'function void ttm_eu_fence_buffer_objects(ww_acquire_ctx*, list_head*, dma_fence*)' [A] 'function int ttm_eu_reserve_buffers(ww_acquire_ctx*, list_head*, bool, list_head*)' [A] 'function int ttm_pool_alloc(ttm_pool*, ttm_tt*, ttm_operation_ctx*)' [A] 'function int ttm_pool_debugfs(ttm_pool*, seq_file*)' [A] 'function void ttm_pool_free(ttm_pool*, ttm_tt*)' [A] 'function int ttm_range_man_fini(ttm_device*, unsigned int)' [A] 'function int ttm_range_man_init(ttm_device*, unsigned int, bool, unsigned long int)' [A] 'function void ttm_resource_free(ttm_buffer_object*, ttm_resource**)' [A] 'function void ttm_resource_init(ttm_buffer_object*, const ttm_place*, ttm_resource*)' [A] 'function int ttm_resource_manager_evict_all(ttm_device*, ttm_resource_manager*)' [A] 'function void ttm_resource_manager_init(ttm_resource_manager*, unsigned long int)' [A] 'function int ttm_sg_tt_init(ttm_tt*, ttm_buffer_object*, uint32_t, ttm_caching)' [A] 'function void ttm_tt_destroy_common(ttm_device*, ttm_tt*)' [A] 'function void ttm_tt_fini(ttm_tt*)' [A] 'function int usb_choose_configuration(usb_device*)' [A] 'function bool v4l2_match_dv_timings(const v4l2_dv_timings*, const v4l2_dv_timings*, unsigned int, bool)' 11 Added variables: [A] 'tracepoint __tracepoint_android_rvh_cpu_cgroup_can_attach' [A] 'tracepoint __tracepoint_android_rvh_cpufreq_transition' [A] 'tracepoint __tracepoint_android_rvh_find_new_ilb' [A] 'tracepoint __tracepoint_android_rvh_sched_rebalance_domains' [A] 'tracepoint __tracepoint_android_rvh_select_fallback_rq' [A] 'tracepoint __tracepoint_android_vh_gic_set_affinity' [A] 'tracepoint __tracepoint_android_vh_gic_v3_set_affinity' [A] 'tracepoint __tracepoint_ipi_exit' [A] 'const dma_fence_ops dma_fence_chain_ops' [A] 'const kernel_param_ops param_ops_hexint' [A] 'ttm_global ttm_glob' Bug: 230443745 Signed-off-by: Hajun Sung <hajun.sung@samsung.com> Change-Id: I427fbcedbaaaf87f11d8f104d6140ee4a69fb5f7 |
||
|
|
d49a012b57 |
ANDROID: abi_gki_aarch64_qcom: Update qcom abi symbol list
Leaf changes summary: 8 artifacts changed Changed leaf types summary: 0 leaf type changed Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 6 Added functions Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 2 Added variables 6 Added functions: [A] 'function int extcon_set_state(extcon_dev*, unsigned int, bool)' [A] 'function bool kmsg_dump_get_buffer(kmsg_dump_iter*, bool, char*, size_t, size_t*)' [A] 'function int kmsg_dump_register(kmsg_dumper*)' [A] 'function void kmsg_dump_rewind(kmsg_dump_iter*)' [A] 'function int kmsg_dump_unregister(kmsg_dumper*)' [A] 'function const cpumask* system_32bit_el0_cpumask()' 2 Added variables: [A] 'tracepoint __tracepoint_android_vh_check_uninterruptible_tasks' [A] 'tracepoint __tracepoint_android_vh_check_uninterruptible_tasks_dn' Bug: 211744078 Change-Id: I575f1fef5c40a9622a3468bb7ca70eddbfc4d73f Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com> |
||
|
|
a6ebc737af |
ANDROID: usb: export tracepoint for usb gadget connect/disconnect
There are two tracepoints in usb_gadget_connect() and
usb_gadget_disconnect(). This patch will export the tracepoints so that
vendor modules can use them.
Bug: 189130101
Change-Id: I73ace6ad7a29a835431879162cb5e5ff3d6b2239
Signed-off-by: fengmingli <mingli.feng@vivo.com>
(cherry picked from commit
|
||
|
|
def3ff8c55 |
ANDROID: sched/rt: Only enable RT sync for SMP targets
The rt sync wakeup support has a condition which relies on a field that
exists only when CONFIG_SMP is defined, causing a compilation issue.
Since sync wakeup has no real meaning on a non-SMP system, we can just
drop the CONFIG_RT_GROUP_SCHED part of the #ifdef.
Fixes:
|
||
|
|
a7133dd750 |
ANDROID: sched/rt: Add support for rt sync wakeups
Some rt tasks undergo sync wakeup. Currently, these tasks will be placed on other, often sleeping or otherwise idle CPUs, which can lead to unnecessary power hits. Bug: 157906395 Change-Id: I48864d0847bbe4f7813c842032880ad3f3b8b06b Signed-off-by: J. Avila <elavila@google.com> [quic_dickey@quicinc.com: Port to 5.15] Signed-off-by: Stephen Dickey <quic_dickey@quicinc.com> |
||
|
|
9f7014a6d2 |
ANDROID: irq: manage: Export irq_do_set_affinity symbol
Vendor kernel modules may implement irq balancers, which could
take irq desc lock of an irq and then based on current affinity
mask or affinity hint, reconfigure the affinity of that irq.
For example : For an irq, for which affinity is broken i.e. all
the cpus in its affinity mask have gone offline. For such irqs,
we might want to reset the affinity, when the original set of
affined cpus, come back online. desc->affinity_hint can be used
for figuring out the original affinity. So, the sequence for doing
this becomes:
desc = irq_to_desc(i);
raw_spin_lock(&desc->lock);
affinity = desc->affinity_hint;
raw_spin_unlock(&desc->lock);
irq_set_affinity_hint(i, affinity);
Here, we need to release the desc lock before calling the exported
api irq_set_affinity_hint(). This creates a window where, after
unlocking desc lock and before calling irq_set_affinity_hint(),
where this setting can race with other irq_set_affinity_hint()
callers. So, export irq_do_set_affinity() symbol to provide an
api, which can be called with desc lock held.
Bug: 187157600
Change-Id: Ifad88bfaa1e7eec09c3fe5a9dd7d1d421362b41e
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
(cherry picked from commit
|
||
|
|
fdb0133879 |
ANDROID: gic-v3: Update vendor hook to set affinity in GIC v3
GIC provides implementation specific registers, to configure
affinity of a SPI. Update the existing affinity hook to allow
vendors to configure those implementation defined settings.
Bug: 180471389
Change-Id: I273035da65eaeb346c0d8b303a722f4d8d7918d6
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
(cherry picked from commit
|
||
|
|
3ccc4b2705 |
FROMGIT: scsi: ufs: core: Exclude UECxx from SFR dump list
Some devices may return invalid or zeroed data during an UIC error condition. In addition, reading these SFRs will clear them. This means the subsequent error handling will not be able to see them and therefore no error handling will be scheduled. Skip reading these SFRs in ufshcd_dump_regs(). Bug: 230521674 Change-Id: Idc62842c79f948580107f95c65a14e34630a0017 (cherry picked from commit |
||
|
|
94816d9fd6 |
ANDROID: GKI: add initial symbol list for Exynos Auto SoC
This adds initial symbol list for Exynos Auto SoC. Below functions / variables are newly added. Leaf changes summary: 93 artifacts changed Changed leaf types summary: 0 leaf type changed Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 84 Added functions Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 9 Added variables 84 Added functions: [A] 'function int __traceiter_cpu_idle(void*, unsigned int, unsigned int)' [A] 'function int __traceiter_hrtimer_expire_entry(void*, hrtimer*, ktime_t*)' [A] 'function int __traceiter_hrtimer_expire_exit(void*, hrtimer*)' [A] 'function int __traceiter_irq_handler_entry(void*, int, irqaction*)' [A] 'function int __traceiter_irq_handler_exit(void*, int, irqaction*, int)' [A] 'function int __traceiter_rwmmio_post_read(void*, unsigned long int, u64, u8, const volatile void*)' [A] 'function int __traceiter_rwmmio_read(void*, unsigned long int, u8, const volatile void*)' [A] 'function int __traceiter_rwmmio_write(void*, unsigned long int, u64, u8, volatile void*)' [A] 'function int __traceiter_workqueue_execute_end(void*, work_struct*, work_func_t)' [A] 'function int __traceiter_workqueue_execute_start(void*, work_struct*)' [A] 'function void blk_ksm_init_passthrough(blk_keyslot_manager*)' [A] 'function long int copy_from_user_nofault(void*, void*, size_t)' [A] 'function int device_property_read_u8_array(device*, const char*, u8*, size_t)' [A] 'function void display_timings_release(display_timings*)' [A] 'function dma_status dma_sync_wait(dma_chan*, dma_cookie_t)' [A] 'function dmaengine_unmap_data* dmaengine_get_unmap_data(device*, int, gfp_t)' [A] 'function void drm_atomic_bridge_chain_enable(drm_bridge*, drm_atomic_state*)' [A] 'function void drm_atomic_bridge_chain_pre_enable(drm_bridge*, drm_atomic_state*)' [A] 'function int drm_connector_set_path_property(drm_connector*, const char*)' [A] 'function u64 drm_crtc_vblank_count(drm_crtc*)' [A] 'function wait_queue_head_t* drm_crtc_vblank_waitqueue(drm_crtc*)' [A] 'function int drm_dp_check_act_status(drm_dp_mst_topology_mgr*)' [A] 'function void drm_dp_downstream_debug(seq_file*, const u8*, const u8*, const edid*, drm_dp_aux*)' [A] 'function u8 drm_dp_dsc_sink_line_buf_depth(const u8*)' [A] 'function u8 drm_dp_dsc_sink_max_slice_count(const u8*, bool)' [A] 'function int drm_dp_find_vcpi_slots(drm_dp_mst_topology_mgr*, int)' [A] 'function bool drm_dp_mst_allocate_vcpi(drm_dp_mst_topology_mgr*, drm_dp_mst_port*, int, int)' [A] 'function void drm_dp_mst_deallocate_vcpi(drm_dp_mst_topology_mgr*, drm_dp_mst_port*)' [A] 'function int drm_dp_mst_detect_port(drm_connector*, drm_modeset_acquire_ctx*, drm_dp_mst_topology_mgr*, drm_dp_mst_port*)' [A] 'function int drm_dp_mst_hpd_irq(drm_dp_mst_topology_mgr*, u8*, bool*)' [A] 'function void drm_dp_mst_reset_vcpi_slots(drm_dp_mst_topology_mgr*, drm_dp_mst_port*)' [A] 'function int drm_dp_mst_topology_mgr_init(drm_dp_mst_topology_mgr*, drm_device*, drm_dp_aux*, int, int, int, int, int)' [A] 'function int drm_dp_mst_topology_mgr_set_mst(drm_dp_mst_topology_mgr*, bool)' [A] 'function int drm_dp_update_payload_part1(drm_dp_mst_topology_mgr*)' [A] 'function int drm_dp_update_payload_part2(drm_dp_mst_topology_mgr*)' [A] 'function int drm_dsc_compute_rc_parameters(drm_dsc_config*)' [A] 'function void drm_dsc_pps_payload_pack(drm_dsc_picture_parameter_set*, const drm_dsc_config*)' [A] 'function int drm_helper_connector_dpms(drm_connector*, int)' [A] 'function int drm_helper_probe_detect(drm_connector*, drm_modeset_acquire_ctx*, bool)' [A] 'function uint32_t drm_of_crtc_port_mask(drm_device*, device_node*)' [A] 'function int dw_pcie_ep_init(dw_pcie_ep*)' [A] 'function void* dw_pcie_own_conf_map_bus(pci_bus*, unsigned int, int)' [A] 'function pid* get_task_pid(task_struct*, pid_type)' [A] 'function bool kmsg_dump_get_line(kmsg_dump_iter*, bool, char*, size_t, size_t*)' [A] 'function void kmsg_dump_rewind(kmsg_dump_iter*)' [A] 'function phy_device* mdiobus_get_phy(mii_bus*, int)' [A] 'function void netdev_alert(const net_device*, const char*, ...)' [A] 'function display_timings* of_get_display_timings(const device_node*)' [A] 'function int of_graph_get_endpoint_count(const device_node*)' [A] 'function device_node* of_graph_get_remote_port(const device_node*)' [A] 'function int param_get_string(char*, const kernel_param*)' [A] 'function int param_set_copystring(const char*, const kernel_param*)' [A] 'function int pci_epc_map_addr(pci_epc*, u8, u8, phys_addr_t, u64, size_t)' [A] 'function void* pci_epc_mem_alloc_addr(pci_epc*, phys_addr_t*, size_t)' [A] 'function void pci_epc_mem_free_addr(pci_epc*, phys_addr_t, void*, size_t)' [A] 'function int pci_epc_set_bar(pci_epc*, u8, u8, pci_epf_bar*)' [A] 'function void pci_epc_unmap_addr(pci_epc*, u8, u8, phys_addr_t)' [A] 'function int pci_generic_config_read(pci_bus*, unsigned int, int, int, u32*)' [A] 'function int pci_generic_config_write(pci_bus*, unsigned int, int, int, u32)' [A] 'function int pci_num_vf(pci_dev*)' [A] 'function int pcie_get_mps(pci_dev*)' [A] 'function int pcie_set_mps(pci_dev*, int)' [A] 'function void phy_ethtool_ksettings_get(phy_device*, ethtool_link_ksettings*)' [A] 'function int phy_ethtool_ksettings_set(phy_device*, const ethtool_link_ksettings*)' [A] 'function int phy_get_eee_err(phy_device*)' [A] 'function void phy_mac_interrupt(phy_device*)' [A] 'function int phy_resume(phy_device*)' [A] 'function int phylink_connect_phy(phylink*, phy_device*)' [A] 'function phylink* phylink_create(phylink_config*, fwnode_handle*, phy_interface_t, const phylink_mac_ops*)' [A] 'function void phylink_destroy(phylink*)' [A] 'function int phylink_of_phy_connect(phylink*, device_node*, u32)' [A] 'function void phylink_set_port_modes(unsigned long int*)' [A] 'function void phylink_start(phylink*)' [A] 'function void prandom_bytes(void*, size_t)' [A] 'function void* pwm_get_chip_data(pwm_device*)' [A] 'function int pwm_set_chip_data(pwm_device*, void*)' [A] 'function void scsi_schedule_eh(Scsi_Host*)' [A] 'function int snd_soc_dai_set_tristate(snd_soc_dai*, int)' [A] 'function snd_soc_dapm_widget* snd_soc_dapm_new_control(snd_soc_dapm_context*, const snd_soc_dapm_widget*)' [A] 'function void snd_soc_of_put_dai_link_codecs(snd_soc_dai_link*)' [A] 'function void start_backtrace(stackframe*, unsigned long int, unsigned long int)' [A] 'function int v4l2_m2m_mmap(file*, v4l2_m2m_ctx*, vm_area_struct*)' [A] 'function __poll_t v4l2_m2m_poll(file*, v4l2_m2m_ctx*, poll_table_struct*)' [A] 'function int videomode_from_timings(const display_timings*, videomode*, unsigned int)' 9 Added variables: [A] 'tracepoint __tracepoint_hrtimer_expire_entry' [A] 'tracepoint __tracepoint_hrtimer_expire_exit' [A] 'tracepoint __tracepoint_irq_handler_entry' [A] 'tracepoint __tracepoint_irq_handler_exit' [A] 'tracepoint __tracepoint_rwmmio_post_read' [A] 'tracepoint __tracepoint_rwmmio_read' [A] 'tracepoint __tracepoint_rwmmio_write' [A] 'tracepoint __tracepoint_workqueue_execute_end' [A] 'tracepoint __tracepoint_workqueue_execute_start' Bug: 230559582 Signed-off-by: Chanho Park <chanho61.park@samsung.com> Change-Id: I75ef1594d3cdb6769ce23dc2774d4e821f5e81a9 |
||
|
|
6f741e863c |
ANDROID: arm64: Auto-enroll MMIO guard on protected vms
Set the MMIO guard flag for protected vms prior to entering the guest for the first time. Bug: 216798684 Signed-off-by: Sebastian Ene <sebastianene@google.com> Change-Id: I1448102ae85176d495ae7f8d6d20de4092049f0d |
||
|
|
898049a684 |
ANDROID: mm: Export vmalloc_nr_pages
Export vmalloc_nr_pages which is used as part of meminfo collection from minidump module. Bug: 199236943 Change-Id: I4c80fe2a0712658ec46b49064fda670da84b3732 Signed-off-by: Vijayanand Jitta <quic_vjitta@quicinc.com> |
||
|
|
d48a14d37f |
ANDROID: mm: Export pcpu_nr_pages
Export pcpu_nr_pages symbol which is used as part of meminfo collection from minidump module. Bug: 199236943 Change-Id: I08262ec95a3f1be8322b9b8d2d9c4098518fc408 Signed-off-by: Vijayanand Jitta <quic_vjitta@quicinc.com> |
||
|
|
c978fa20fd |
UPSTREAM: f2fs: should not truncate blocks during roll-forward recovery
If the file preallocated blocks and fsync'ed, we should not truncate them during roll-forward recovery which will recover i_size correctly back. Bug: 223740163 Fixes: |
||
|
|
d7f3794b34 |
ANDROID: add gki_module headers to .gitignore file
In commit |
||
|
|
4b7b7a96e4 |
ANDROID: usb: add EXPORT_TRACE_SYMBOL to export tracepoint
To use the tracepoint in kernel module, add EXPORT_TRACE_SYMBOL_GPL to
export the dwc3_ctrl_req tracepoint
Bug: 189130101
Change-Id: Ie3245474fbd0cc18c6d41036dcf17c7bbe460814
Signed-off-by: fengmingli <mingli.feng@vivo.com>
(cherry picked from commit
|
||
|
|
455b1ae0b4 |
ANDROID: abi_gki_aarch64_qcom: Update qcom abi symbol list
Leaf changes summary: 2 artifacts changed Changed leaf types summary: 0 leaf type changed Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 1 Added function Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 1 Added variable 1 Added function: [A] 'function int kswapd(void*)' 1 Added variable: [A] 'tracepoint __tracepoint_android_vh_kswapd_per_node' Bug: 184707700 Change-Id: Ia5d5bd08f81ec4d9a957636d7fc580b79ce9fba2 Signed-off-by: Vijayanand Jitta <quic_vjitta@quicinc.com> |
||
|
|
61b109251b |
ANDROID: usb: add EXPORT_TRACE_SYMBOL to export tracepoint
To use the tracepoint in kernel module, add EXPORT_TRACE_SYMBOL_GPL to
export the dwc3_event tracepoint.
Bug: 189130101
Change-Id: I3a917af82c9d8c19a085c5fc1a30c1b9af4b6885
Signed-off-by: fengmingli <mingli.feng@vivo.com>
(cherry picked from commit
|
||
|
|
ec1a28c7c0 |
Merge 5.15.35 into android13-5.15
Changes in 5.15.35
drm/amd/display: Add pstate verification and recovery for DCN31
drm/amd/display: Fix p-state allow debug index on dcn31
hamradio: defer 6pack kfree after unregister_netdev
hamradio: remove needs_free_netdev to avoid UAF
cpuidle: PSCI: Move the `has_lpi` check to the beginning of the function
ACPI: processor idle: Check for architectural support for LPI
ACPI: processor idle: Allow playing dead in C3 state
ACPI: processor: idle: fix lockup regression on 32-bit ThinkPad T40
btrfs: remove unused parameter nr_pages in add_ra_bio_pages()
btrfs: remove no longer used counter when reading data page
btrfs: remove unused variable in btrfs_{start,write}_dirty_block_groups()
soc: qcom: aoss: Expose send for generic usecase
dt-bindings: net: qcom,ipa: add optional qcom,qmp property
net: ipa: request IPA register values be retained
btrfs: release correct delalloc amount in direct IO write path
ALSA: core: Add snd_card_free_on_error() helper
ALSA: sis7019: Fix the missing error handling
ALSA: ali5451: Fix the missing snd_card_free() call at probe error
ALSA: als300: Fix the missing snd_card_free() call at probe error
ALSA: als4000: Fix the missing snd_card_free() call at probe error
ALSA: atiixp: Fix the missing snd_card_free() call at probe error
ALSA: au88x0: Fix the missing snd_card_free() call at probe error
ALSA: aw2: Fix the missing snd_card_free() call at probe error
ALSA: azt3328: Fix the missing snd_card_free() call at probe error
ALSA: bt87x: Fix the missing snd_card_free() call at probe error
ALSA: ca0106: Fix the missing snd_card_free() call at probe error
ALSA: cmipci: Fix the missing snd_card_free() call at probe error
ALSA: cs4281: Fix the missing snd_card_free() call at probe error
ALSA: cs5535audio: Fix the missing snd_card_free() call at probe error
ALSA: echoaudio: Fix the missing snd_card_free() call at probe error
ALSA: emu10k1x: Fix the missing snd_card_free() call at probe error
ALSA: ens137x: Fix the missing snd_card_free() call at probe error
ALSA: es1938: Fix the missing snd_card_free() call at probe error
ALSA: es1968: Fix the missing snd_card_free() call at probe error
ALSA: fm801: Fix the missing snd_card_free() call at probe error
ALSA: galaxy: Fix the missing snd_card_free() call at probe error
ALSA: hdsp: Fix the missing snd_card_free() call at probe error
ALSA: hdspm: Fix the missing snd_card_free() call at probe error
ALSA: ice1724: Fix the missing snd_card_free() call at probe error
ALSA: intel8x0: Fix the missing snd_card_free() call at probe error
ALSA: intel_hdmi: Fix the missing snd_card_free() call at probe error
ALSA: korg1212: Fix the missing snd_card_free() call at probe error
ALSA: lola: Fix the missing snd_card_free() call at probe error
ALSA: lx6464es: Fix the missing snd_card_free() call at probe error
ALSA: maestro3: Fix the missing snd_card_free() call at probe error
ALSA: oxygen: Fix the missing snd_card_free() call at probe error
ALSA: riptide: Fix the missing snd_card_free() call at probe error
ALSA: rme32: Fix the missing snd_card_free() call at probe error
ALSA: rme9652: Fix the missing snd_card_free() call at probe error
ALSA: rme96: Fix the missing snd_card_free() call at probe error
ALSA: sc6000: Fix the missing snd_card_free() call at probe error
ALSA: sonicvibes: Fix the missing snd_card_free() call at probe error
ALSA: via82xx: Fix the missing snd_card_free() call at probe error
ALSA: usb-audio: Cap upper limits of buffer/period bytes for implicit fb
ALSA: nm256: Don't call card private_free at probe error path
drm/msm: Add missing put_task_struct() in debugfs path
firmware: arm_scmi: Remove clear channel call on the TX channel
memory: atmel-ebi: Fix missing of_node_put in atmel_ebi_probe
Revert "ath11k: mesh: add support for 256 bitmap in blockack frames in 11ax"
firmware: arm_scmi: Fix sorting of retrieved clock rates
media: rockchip/rga: do proper error checking in probe
SUNRPC: Fix the svc_deferred_event trace class
net/sched: flower: fix parsing of ethertype following VLAN header
veth: Ensure eth header is in skb's linear part
gpiolib: acpi: use correct format characters
cifs: release cached dentries only if mount is complete
net: mdio: don't defer probe forever if PHY IRQ provider is missing
mlxsw: i2c: Fix initialization error flow
net/sched: fix initialization order when updating chain 0 head
net: dsa: felix: suppress -EPROBE_DEFER errors
net: ethernet: stmmac: fix altr_tse_pcs function when using a fixed-link
net/sched: taprio: Check if socket flags are valid
cfg80211: hold bss_lock while updating nontrans_list
netfilter: nft_socket: make cgroup match work in input too
drm/msm: Fix range size vs end confusion
drm/msm/dsi: Use connector directly in msm_dsi_manager_connector_init()
drm/msm/dp: add fail safe mode outside of event_mutex context
net/smc: Fix NULL pointer dereference in smc_pnet_find_ib()
scsi: pm80xx: Mask and unmask upper interrupt vectors 32-63
scsi: pm80xx: Enable upper inbound, outbound queues
scsi: iscsi: Move iscsi_ep_disconnect()
scsi: iscsi: Fix offload conn cleanup when iscsid restarts
scsi: iscsi: Fix endpoint reuse regression
scsi: iscsi: Fix conn cleanup and stop race during iscsid restart
scsi: iscsi: Fix unbound endpoint error handling
sctp: Initialize daddr on peeled off socket
netfilter: nf_tables: nft_parse_register can return a negative value
ALSA: ad1889: Fix the missing snd_card_free() call at probe error
ALSA: mtpav: Don't call card private_free at probe error path
io_uring: move io_uring_rsrc_update2 validation
io_uring: verify that resv2 is 0 in io_uring_rsrc_update2
io_uring: verify pad field is 0 in io_get_ext_arg
testing/selftests/mqueue: Fix mq_perf_tests to free the allocated cpu set
ALSA: usb-audio: Increase max buffer size
ALSA: usb-audio: Limit max buffer and period sizes per time
perf tools: Fix misleading add event PMU debug message
macvlan: Fix leaking skb in source mode with nodst option
net: ftgmac100: access hardware register after clock ready
nfc: nci: add flush_workqueue to prevent uaf
cifs: potential buffer overflow in handling symlinks
dm mpath: only use ktime_get_ns() in historical selector
vfio/pci: Fix vf_token mechanism when device-specific VF drivers are used
net: bcmgenet: Revert "Use stronger register read/writes to assure ordering"
block: fix offset/size check in bio_trim()
drm/amd: Add USBC connector ID
btrfs: fix fallocate to use file_modified to update permissions consistently
btrfs: do not warn for free space inode in cow_file_range
drm/amdgpu: conduct a proper cleanup of PDB bo
drm/amdgpu/gmc: use PCI BARs for APUs in passthrough
drm/amd/display: fix audio format not updated after edid updated
drm/amd/display: FEC check in timing validation
drm/amd/display: Update VTEM Infopacket definition
drm/amdkfd: Fix Incorrect VMIDs passed to HWS
drm/amdgpu/vcn: improve vcn dpg stop procedure
drm/amdkfd: Check for potential null return of kmalloc_array()
Drivers: hv: vmbus: Deactivate sysctl_record_panic_msg by default in isolated guests
PCI: hv: Propagate coherence from VMbus device to PCI device
Drivers: hv: vmbus: Prevent load re-ordering when reading ring buffer
scsi: target: tcmu: Fix possible page UAF
scsi: lpfc: Fix queue failures when recovering from PCI parity error
scsi: ibmvscsis: Increase INITIAL_SRP_LIMIT to 1024
net: micrel: fix KS8851_MLL Kconfig
ata: libata-core: Disable READ LOG DMA EXT for Samsung 840 EVOs
gpu: ipu-v3: Fix dev_dbg frequency output
regulator: wm8994: Add an off-on delay for WM8994 variant
arm64: alternatives: mark patch_alternative() as `noinstr`
tlb: hugetlb: Add more sizes to tlb_remove_huge_tlb_entry
net: axienet: setup mdio unconditionally
Drivers: hv: balloon: Disable balloon and hot-add accordingly
net: usb: aqc111: Fix out-of-bounds accesses in RX fixup
myri10ge: fix an incorrect free for skb in myri10ge_sw_tso
spi: cadence-quadspi: fix protocol setup for non-1-1-X operations
drm/amd/display: Enable power gating before init_pipes
drm/amd/display: Revert FEC check in validation
drm/amd/display: Fix allocate_mst_payload assert on resume
drbd: set QUEUE_FLAG_STABLE_WRITES
scsi: mpt3sas: Fail reset operation if config request timed out
scsi: mvsas: Add PCI ID of RocketRaid 2640
scsi: megaraid_sas: Target with invalid LUN ID is deleted during scan
drivers: net: slip: fix NPD bug in sl_tx_timeout()
io_uring: zero tag on rsrc removal
io_uring: use nospec annotation for more indexes
perf/imx_ddr: Fix undefined behavior due to shift overflowing the constant
mm/secretmem: fix panic when growing a memfd_secret
mm, page_alloc: fix build_zonerefs_node()
mm: fix unexpected zeroed page mapping with zram swap
mm: kmemleak: take a full lowmem check in kmemleak_*_phys()
KVM: x86/mmu: Resolve nx_huge_pages when kvm.ko is loaded
SUNRPC: Fix NFSD's request deferral on RDMA transports
memory: renesas-rpc-if: fix platform-device leak in error path
gcc-plugins: latent_entropy: use /dev/urandom
cifs: verify that tcon is valid before dereference in cifs_kill_sb
ath9k: Properly clear TX status area before reporting to mac80211
ath9k: Fix usage of driver-private space in tx_info
btrfs: fix root ref counts in error handling in btrfs_get_root_ref
btrfs: mark resumed async balance as writing
ALSA: hda/realtek: Add quirk for Clevo PD50PNT
ALSA: hda/realtek: add quirk for Lenovo Thinkpad X12 speakers
ALSA: pcm: Test for "silence" field in struct "pcm_format_data"
nl80211: correctly check NL80211_ATTR_REG_ALPHA2 size
ipv6: fix panic when forwarding a pkt with no in6 dev
drm/amd/display: don't ignore alpha property on pre-multiplied mode
drm/amdgpu: Enable gfxoff quirk on MacBook Pro
x86/tsx: Use MSR_TSX_CTRL to clear CPUID bits
x86/tsx: Disable TSX development mode at boot
genirq/affinity: Consider that CPUs on nodes can be unbalanced
tick/nohz: Use WARN_ON_ONCE() to prevent console saturation
ARM: davinci: da850-evm: Avoid NULL pointer dereference
dm integrity: fix memory corruption when tag_size is less than digest size
i2c: dev: check return value when calling dev_set_name()
smp: Fix offline cpu check in flush_smp_call_function_queue()
i2c: pasemi: Wait for write xfers to finish
dt-bindings: net: snps: remove duplicate name
timers: Fix warning condition in __run_timers()
dma-direct: avoid redundant memory sync for swiotlb
drm/i915: Sunset igpu legacy mmap support based on GRAPHICS_VER_FULL
cpu/hotplug: Remove the 'cpu' member of cpuhp_cpu_state
soc: qcom: aoss: Fix missing put_device call in qmp_get
net: ipa: fix a build dependency
cpufreq: intel_pstate: ITMT support for overclocked system
ax25: add refcount in ax25_dev to avoid UAF bugs
ax25: fix reference count leaks of ax25_dev
ax25: fix UAF bugs of net_device caused by rebinding operation
ax25: Fix refcount leaks caused by ax25_cb_del()
ax25: fix UAF bug in ax25_send_control()
ax25: fix NPD bug in ax25_disconnect
ax25: Fix NULL pointer dereferences in ax25 timers
ax25: Fix UAF bugs in ax25 timers
Linux 5.15.35
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I0dd9eaea7f977df42b0a5b9cb9043c879f62718b
|
||
|
|
34c16f1a20 |
Revert "gpio: Restrict usage of GPIO chip irq members before initialization"
This reverts commit
|
||
|
|
ee5fed1cef |
Revert "opp: Expose of-node's name in debugfs"
This reverts commit
|
||
|
|
fa4df40307 |
ANDROID: GKI: remove CONFIG_UBSAN_OBJECT_SIZE from gki_defconfig
In commit |
||
|
|
33f5d1daec |
Merge 5.15.34 into android13-5.15
Changes in 5.15.34
lib/logic_iomem: correct fallback config references
um: fix and optimize xor select template for CONFIG64 and timetravel mode
rtc: wm8350: Handle error for wm8350_register_irq
nbd: add error handling support for add_disk()
nbd: Fix incorrect error handle when first_minor is illegal in nbd_dev_add
nbd: Fix hungtask when nbd_config_put
nbd: fix possible overflow on 'first_minor' in nbd_dev_add()
kfence: count unexpectedly skipped allocations
kfence: move saving stack trace of allocations into __kfence_alloc()
kfence: limit currently covered allocations when pool nearly full
KVM: x86/pmu: Use different raw event masks for AMD and Intel
KVM: SVM: Fix kvm_cache_regs.h inclusions for is_guest_mode()
KVM: x86/svm: Clear reserved bits written to PerfEvtSeln MSRs
KVM: x86/pmu: Fix and isolate TSX-specific performance event logic
KVM: x86/emulator: Emulate RDPID only if it is enabled in guest
drm: Add orientation quirk for GPD Win Max
ath5k: fix OOB in ath5k_eeprom_read_pcal_info_5111
drm/amd/display: Add signal type check when verify stream backends same
drm/amd/amdgpu/amdgpu_cs: fix refcount leak of a dma_fence obj
drm/amd/display: Fix memory leak
drm/amd/display: Use PSR version selected during set_psr_caps
usb: gadget: tegra-xudc: Do not program SPARAM
usb: gadget: tegra-xudc: Fix control endpoint's definitions
usb: cdnsp: fix cdnsp_decode_trb function to properly handle ret value
ptp: replace snprintf with sysfs_emit
drm/amdkfd: Don't take process mutex for svm ioctls
powerpc: dts: t104xrdb: fix phy type for FMAN 4/5
ath11k: fix kernel panic during unload/load ath11k modules
ath11k: pci: fix crash on suspend if board file is not found
ath11k: mhi: use mhi_sync_power_up()
net/smc: Send directly when TCP_CORK is cleared
drm/bridge: Add missing pm_runtime_put_sync
bpf: Make dst_port field in struct bpf_sock 16-bit wide
scsi: mvsas: Replace snprintf() with sysfs_emit()
scsi: bfa: Replace snprintf() with sysfs_emit()
drm/v3d: fix missing unlock
power: supply: axp20x_battery: properly report current when discharging
mt76: mt7921: fix crash when startup fails.
mt76: dma: initialize skip_unmap in mt76_dma_rx_fill
cfg80211: don't add non transmitted BSS to 6GHz scanned channels
libbpf: Fix build issue with llvm-readelf
ipv6: make mc_forwarding atomic
net: initialize init_net earlier
powerpc: Set crashkernel offset to mid of RMA region
drm/amdgpu: Fix recursive locking warning
scsi: smartpqi: Fix kdump issue when controller is locked up
PCI: aardvark: Fix support for MSI interrupts
iommu/arm-smmu-v3: fix event handling soft lockup
usb: ehci: add pci device support for Aspeed platforms
PCI: endpoint: Fix alignment fault error in copy tests
tcp: Don't acquire inet_listen_hashbucket::lock with disabled BH.
PCI: pciehp: Add Qualcomm quirk for Command Completed erratum
scsi: mpi3mr: Fix reporting of actual data transfer size
scsi: mpi3mr: Fix memory leaks
powerpc/set_memory: Avoid spinlock recursion in change_page_attr()
power: supply: axp288-charger: Set Vhold to 4.4V
net/mlx5e: Disable TX queues before registering the netdev
usb: dwc3: pci: Set the swnode from inside dwc3_pci_quirks()
iwlwifi: mvm: Correctly set fragmented EBS
iwlwifi: mvm: move only to an enabled channel
drm/msm/dsi: Remove spurious IRQF_ONESHOT flag
ipv4: Invalidate neighbour for broadcast address upon address addition
dm ioctl: prevent potential spectre v1 gadget
dm: requeue IO if mapping table not yet available
drm/amdkfd: make CRAT table missing message informational only
vfio/pci: Stub vfio_pci_vga_rw when !CONFIG_VFIO_PCI_VGA
scsi: pm8001: Fix pm80xx_pci_mem_copy() interface
scsi: pm8001: Fix pm8001_mpi_task_abort_resp()
scsi: pm8001: Fix task leak in pm8001_send_abort_all()
scsi: pm8001: Fix tag leaks on error
scsi: pm8001: Fix memory leak in pm8001_chip_fw_flash_update_req()
mt76: mt7915: fix injected MPDU transmission to not use HW A-MSDU
powerpc/64s/hash: Make hash faults work in NMI context
mt76: mt7615: Fix assigning negative values to unsigned variable
scsi: aha152x: Fix aha152x_setup() __setup handler return value
scsi: hisi_sas: Free irq vectors in order for v3 HW
scsi: hisi_sas: Limit users changing debugfs BIST count value
net/smc: correct settings of RMB window update limit
mips: ralink: fix a refcount leak in ill_acc_of_setup()
macvtap: advertise link netns via netlink
tuntap: add sanity checks about msg_controllen in sendmsg
Bluetooth: Fix not checking for valid hdev on bt_dev_{info,warn,err,dbg}
Bluetooth: use memset avoid memory leaks
bnxt_en: Eliminate unintended link toggle during FW reset
PCI: endpoint: Fix misused goto label
MIPS: fix fortify panic when copying asm exception handlers
powerpc/64e: Tie PPC_BOOK3E_64 to PPC_FSL_BOOK3E
powerpc/secvar: fix refcount leak in format_show()
scsi: libfc: Fix use after free in fc_exch_abts_resp()
can: isotp: set default value for N_As to 50 micro seconds
can: etas_es58x: es58x_fd_rx_event_msg(): initialize rx_event_msg before calling es58x_check_msg_len()
riscv: Fixed misaligned memory access. Fixed pointer comparison.
net: account alternate interface name memory
net: limit altnames to 64k total
net/mlx5e: Remove overzealous validations in netlink EEPROM query
net: sfp: add 2500base-X quirk for Lantech SFP module
usb: dwc3: omap: fix "unbalanced disables for smps10_out1" on omap5evm
mt76: fix monitor mode crash with sdio driver
xtensa: fix DTC warning unit_address_format
MIPS: ingenic: correct unit node address
Bluetooth: Fix use after free in hci_send_acl
netfilter: conntrack: revisit gc autotuning
netlabel: fix out-of-bounds memory accesses
ceph: fix inode reference leakage in ceph_get_snapdir()
ceph: fix memory leak in ceph_readdir when note_last_dentry returns error
lib/Kconfig.debug: add ARCH dependency for FUNCTION_ALIGN option
init/main.c: return 1 from handled __setup() functions
minix: fix bug when opening a file with O_DIRECT
clk: si5341: fix reported clk_rate when output divider is 2
staging: vchiq_arm: Avoid NULL ptr deref in vchiq_dump_platform_instances
staging: vchiq_core: handle NULL result of find_service_by_handle
phy: amlogic: phy-meson-gxl-usb2: fix shared reset controller use
phy: amlogic: meson8b-usb2: Use dev_err_probe()
phy: amlogic: meson8b-usb2: fix shared reset control use
clk: rockchip: drop CLK_SET_RATE_PARENT from dclk_vop* on rk3568
cpufreq: CPPC: Fix performance/frequency conversion
opp: Expose of-node's name in debugfs
staging: wfx: fix an error handling in wfx_init_common()
w1: w1_therm: fixes w1_seq for ds28ea00 sensors
NFSv4.2: fix reference count leaks in _nfs42_proc_copy_notify()
NFSv4: Protect the state recovery thread against direct reclaim
habanalabs: fix possible memory leak in MMU DR fini
xen: delay xen_hvm_init_time_ops() if kdump is boot on vcpu>=32
clk: ti: Preserve node in ti_dt_clocks_register()
clk: Enforce that disjoints limits are invalid
SUNRPC/call_alloc: async tasks mustn't block waiting for memory
SUNRPC/xprt: async tasks mustn't block waiting for memory
SUNRPC: remove scheduling boost for "SWAPPER" tasks.
NFS: swap IO handling is slightly different for O_DIRECT IO
NFS: swap-out must always use STABLE writes.
x86: Annotate call_on_stack()
x86/Kconfig: Do not allow CONFIG_X86_X32_ABI=y with llvm-objcopy
serial: samsung_tty: do not unlock port->lock for uart_write_wakeup()
virtio_console: eliminate anonymous module_init & module_exit
jfs: prevent NULL deref in diFree
SUNRPC: Fix socket waits for write buffer space
NFS: nfsiod should not block forever in mempool_alloc()
NFS: Avoid writeback threads getting stuck in mempool_alloc()
selftests: net: Add tls config dependency for tls selftests
parisc: Fix CPU affinity for Lasi, WAX and Dino chips
parisc: Fix patch code locking and flushing
mm: fix race between MADV_FREE reclaim and blkdev direct IO read
rtc: mc146818-lib: change return values of mc146818_get_time()
rtc: Check return value from mc146818_get_time()
rtc: mc146818-lib: fix RTC presence check
drm/amdgpu: fix off by one in amdgpu_gfx_kiq_acquire()
Drivers: hv: vmbus: Fix potential crash on module unload
Revert "NFSv4: Handle the special Linux file open access mode"
NFSv4: fix open failure with O_ACCMODE flag
scsi: sr: Fix typo in CDROM(CLOSETRAY|EJECT) handling
scsi: core: Fix sbitmap depth in scsi_realloc_sdev_budget_map()
scsi: zorro7xx: Fix a resource leak in zorro7xx_remove_one()
vdpa/mlx5: Rename control VQ workqueue to vdpa wq
vdpa/mlx5: Propagate link status from device to vdpa driver
vdpa: mlx5: prevent cvq work from hogging CPU
net: sfc: add missing xdp queue reinitialization
net/tls: fix slab-out-of-bounds bug in decrypt_internal
vrf: fix packet sniffing for traffic originating from ip tunnels
skbuff: fix coalescing for page_pool fragment recycling
ice: Clear default forwarding VSI during VSI release
mctp: Fix check for dev_hard_header() result
net: ipv4: fix route with nexthop object delete warning
net: stmmac: Fix unset max_speed difference between DT and non-DT platforms
drm/imx: imx-ldb: Check for null pointer after calling kmemdup
drm/imx: Fix memory leak in imx_pd_connector_get_modes
drm/imx: dw_hdmi-imx: Fix bailout in error cases of probe
regulator: rtq2134: Fix missing active_discharge_on setting
regulator: atc260x: Fix missing active_discharge_on setting
arch/arm64: Fix topology initialization for core scheduling
bnxt_en: Synchronize tx when xdp redirects happen on same ring
bnxt_en: reserve space inside receive page for skb_shared_info
bnxt_en: Prevent XDP redirect from running when stopping TX queue
sfc: Do not free an empty page_ring
RDMA/mlx5: Don't remove cache MRs when a delay is needed
RDMA/mlx5: Add a missing update of cache->last_add
IB/cm: Cancel mad on the DREQ event when the state is MRA_REP_RCVD
IB/rdmavt: add lock to call to rvt_error_qp to prevent a race condition
sctp: count singleton chunks in assoc user stats
dpaa2-ptp: Fix refcount leak in dpaa2_ptp_probe
ice: Set txq_teid to ICE_INVAL_TEID on ring creation
ice: Do not skip not enabled queues in ice_vc_dis_qs_msg
ipv6: Fix stats accounting in ip6_pkt_drop
ice: synchronize_rcu() when terminating rings
ice: xsk: fix VSI state check in ice_xsk_wakeup()
net: openvswitch: don't send internal clone attribute to the userspace.
net: ethernet: mv643xx: Fix over zealous checking of_get_mac_address()
net: openvswitch: fix leak of nested actions
rxrpc: fix a race in rxrpc_exit_net()
net: sfc: fix using uninitialized xdp tx_queue
net: phy: mscc-miim: reject clause 45 register accesses
qede: confirm skb is allocated before using
spi: bcm-qspi: fix MSPI only access with bcm_qspi_exec_mem_op()
bpf: Support dual-stack sockets in bpf_tcp_check_syncookie
drbd: Fix five use after free bugs in get_initial_state
scsi: ufs: ufshpb: Fix a NULL check on list iterator
io_uring: nospec index for tags on files update
io_uring: don't touch scm_fp_list after queueing skb
SUNRPC: Handle ENOMEM in call_transmit_status()
SUNRPC: Handle low memory situations in call_status()
SUNRPC: svc_tcp_sendmsg() should handle errors from xdr_alloc_bvec()
iommu/omap: Fix regression in probe for NULL pointer dereference
perf: arm-spe: Fix perf report --mem-mode
perf tools: Fix perf's libperf_print callback
perf session: Remap buf if there is no space for event
arm64: Add part number for Arm Cortex-A78AE
scsi: mpt3sas: Fix use after free in _scsih_expander_node_remove()
scsi: ufs: ufs-pci: Add support for Intel MTL
Revert "mmc: sdhci-xenon: fix annoying 1.8V regulator warning"
mmc: block: Check for errors after write on SPI
mmc: mmci: stm32: correctly check all elements of sg list
mmc: renesas_sdhi: don't overwrite TAP settings when HS400 tuning is complete
mmc: core: Fixup support for writeback-cache for eMMC and SD
lz4: fix LZ4_decompress_safe_partial read out of bound
highmem: fix checks in __kmap_local_sched_{in,out}
mmmremap.c: avoid pointless invalidate_range_start/end on mremap(old_size=0)
mm/mempolicy: fix mpol_new leak in shared_policy_replace
io_uring: don't check req->file in io_fsync_prep()
io_uring: defer splice/tee file validity check until command issue
io_uring: implement compat handling for IORING_REGISTER_IOWQ_AFF
io_uring: fix race between timeout flush and removal
x86/pm: Save the MSR validity status at context setup
x86/speculation: Restore speculation related MSRs during S3 resume
perf/x86/intel: Update the FRONTEND MSR mask on Sapphire Rapids
btrfs: fix qgroup reserve overflow the qgroup limit
btrfs: prevent subvol with swapfile from being deleted
spi: core: add dma_map_dev for __spi_unmap_msg()
arm64: patch_text: Fixup last cpu should be master
RDMA/hfi1: Fix use-after-free bug for mm struct
gpio: Restrict usage of GPIO chip irq members before initialization
x86/msi: Fix msi message data shadow struct
x86/mm/tlb: Revert retpoline avoidance approach
perf/x86/intel: Don't extend the pseudo-encoding to GP counters
ata: sata_dwc_460ex: Fix crash due to OOB write
perf: qcom_l2_pmu: fix an incorrect NULL check on list iterator
perf/core: Inherit event_caps
irqchip/gic-v3: Fix GICR_CTLR.RWP polling
fbdev: Fix unregistering of framebuffers without device
amd/display: set backlight only if required
SUNRPC: Prevent immediate close+reconnect
drm/panel: ili9341: fix optional regulator handling
drm/amdgpu/display: change pipe policy for DCN 2.1
drm/amdgpu/smu10: fix SoC/fclk units in auto mode
drm/amdgpu/vcn: Fix the register setting for vcn1
drm/nouveau/pmu: Add missing callbacks for Tegra devices
drm/amdkfd: Create file descriptor after client is added to smi_clients list
drm/amdgpu: don't use BACO for reset in S3
KVM: SVM: Allow AVIC support on system w/ physical APIC ID > 255
net/smc: send directly on setting TCP_NODELAY
Revert "selftests: net: Add tls config dependency for tls selftests"
bpf: Make remote_port field in struct bpf_sk_lookup 16-bit wide
selftests/bpf: Fix u8 narrow load checks for bpf_sk_lookup remote_port
rtc: mc146818-lib: fix signedness bug in mc146818_get_time()
SUNRPC: Don't call connect() more than once on a TCP socket
Revert "nbd: fix possible overflow on 'first_minor' in nbd_dev_add()"
perf build: Don't use -ffat-lto-objects in the python feature test when building with clang-13
perf python: Fix probing for some clang command line options
tools build: Filter out options and warnings not supported by clang
tools build: Use $(shell ) instead of `` to get embedded libperl's ccopts
dmaengine: Revert "dmaengine: shdma: Fix runtime PM imbalance on error"
KVM: avoid NULL pointer dereference in kvm_dirty_ring_push
Revert "net/mlx5: Accept devlink user input after driver initialization complete"
ubsan: remove CONFIG_UBSAN_OBJECT_SIZE
selftests: cgroup: Make cg_create() use 0755 for permission instead of 0644
selftests: cgroup: Test open-time credential usage for migration checks
selftests: cgroup: Test open-time cgroup namespace usage for migration checks
mm: don't skip swap entry even if zap_details specified
Drivers: hv: vmbus: Replace smp_store_mb() with virt_store_mb()
x86/bug: Prevent shadowing in __WARN_FLAGS
sched: Teach the forced-newidle balancer about CPU affinity limitation.
x86,static_call: Fix __static_call_return0 for i386
irqchip/gic-v4: Wait for GICR_VPENDBASER.Dirty to clear before descheduling
powerpc/64: Fix build failure with allyesconfig in book3s_64_entry.S
irqchip/gic, gic-v3: Prevent GSI to SGI translations
mm/sparsemem: fix 'mem_section' will never be NULL gcc 12 warning
static_call: Don't make __static_call_return0 static
powerpc: Fix virt_addr_valid() for 64-bit Book3E & 32-bit
stacktrace: move filter_irq_stacks() to kernel/stacktrace.c
Linux 5.15.34
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I98049d0d8ebd427296418d31085bfde482ad30e7
|
||
|
|
7f5325b5bb |
ANDROID: GKI: add vendor hook for mmc
UNISOC's solution allows more requests to be issued to improve read and write performance, so vendor hooks are added to support this function. Bug: 229920089 Signed-off-by: Wenchao Chen <wenchao.chen@unisoc.com> Change-Id: Ic9423b651884111d286646d0d66a033fce3b44d7 |
||
|
|
96e0181952 |
ANDROID: GKI: Add initial symbol list for imx
Update imx symbol list and abi.xml, and add imx entry in build.config.gki.aarch64. Leaf changes summary: 326 artifacts changed (1 filtered out) Changed leaf types summary: 0 (1 filtered out) leaf type changed Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 321 Added functions Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 5 Added variables 321 Added functions: [A] 'function int __bitmap_and(unsigned long int*, const unsigned long int*, const unsigned long int*, unsigned int)' [A] 'function void __bitmap_complement(unsigned long int*, const unsigned long int*, unsigned int)' [A] 'function void __bitmap_replace(unsigned long int*, const unsigned long int*, const unsigned long int*, const unsigned long int*, unsigned int)' [A] 'function void __bitmap_xor(unsigned long int*, const unsigned long int*, const unsigned long int*, unsigned int)' [A] 'function clk_hw* __clk_hw_register_divider(device*, device_node*, const char*, const char*, const clk_hw*, const clk_parent_data*, unsigned long int, void*, u8, u8, u8, const clk_div_table*, spinlock_t*)' [A] 'function clk_hw* __clk_hw_register_fixed_rate(device*, device_node*, const char*, const char*, const clk_hw*, const clk_parent_data*, unsigned long int, unsigned long int, unsigned long int, unsigned long int)' [A] 'function clk_hw* __clk_hw_register_gate(device*, device_node*, const char*, const char*, const clk_hw*, const clk_parent_data*, unsigned long int, void*, u8, u8, spinlock_t*)' [A] 'function clk_hw* __clk_hw_register_mux(device*, device_node*, const char*, u8, const char* const*, const clk_hw**, const clk_parent_data*, unsigned long int, void*, u8, u32, u8, u32*, spinlock_t*)' [A] 'function int __device_reset(device*, bool)' [A] 'function int __devm_irq_alloc_descs(device*, int, unsigned int, unsigned int, int, module*, const irq_affinity_desc*)' [A] 'function void* __drmm_simple_encoder_alloc(drm_device*, size_t, size_t, int)' [A] 'function int __genphy_config_aneg(phy_device*, bool)' [A] 'function void __irq_set_handler(unsigned int, irq_flow_handler_t, int, const char*)' [A] 'function int __mdiobus_read(mii_bus*, int, u32)' [A] 'function int __mdiobus_write(mii_bus*, int, u32, u16)' [A] 'function int __phy_modify(phy_device*, u32, u16, u16)' [A] 'function regmap* __regmap_init_mmio_clk(device*, const char*, void*, const regmap_config*, lock_class_key*, const char*)' [A] 'function int __v4l2_ctrl_s_ctrl_int64(v4l2_ctrl*, s64)' [A] 'function int _vb2_fop_release(file*, mutex*)' [A] 'function backing_dev_info* bdi_alloc(int)' [A] 'function void bdi_put(backing_dev_info*)' [A] 'function int bdi_register(backing_dev_info*, const char*, ...)' [A] 'function unsigned long int* bitmap_alloc(unsigned int, gfp_t)' [A] 'function void cec_fill_conn_info_from_drm(cec_connector_info*, const drm_connector*)' [A] 'function cec_notifier* cec_notifier_cec_adap_register(device*, const char*, cec_adapter*)' [A] 'function void cec_notifier_cec_adap_unregister(cec_notifier*, cec_adapter*)' [A] 'function cec_notifier* cec_notifier_conn_register(device*, const char*, const cec_connector_info*)' [A] 'function void cec_notifier_conn_unregister(cec_notifier*)' [A] 'function void cec_notifier_set_phys_addr(cec_notifier*, u16)' [A] 'function void cec_notifier_set_phys_addr_from_edid(cec_notifier*, const edid*)' [A] 'function void cec_s_phys_addr_from_edid(cec_adapter*, const edid*)' [A] 'function void cfg80211_report_wowlan_wakeup(wireless_dev*, cfg80211_wowlan_wakeup*, gfp_t)' [A] 'function void clk_bulk_put(int, clk_bulk_data*)' [A] 'function clk_hw* clk_hw_register_composite(device*, const char*, const char* const*, int, clk_hw*, const clk_ops*, clk_hw*, const clk_ops*, clk_hw*, const clk_ops*, unsigned long int)' [A] 'function clk_hw* clk_hw_register_fixed_factor(device*, const char*, const char*, unsigned long int, unsigned int, unsigned int)' [A] 'function bool clk_is_match(const clk*, const clk*)' [A] 'function unsigned int clk_mux_index_to_val(u32*, unsigned int, u8)' [A] 'function void clk_unregister(clk*)' [A] 'function void deactivate_locked_super(super_block*)' [A] 'function unsigned long int dev_pm_opp_get_max_transition_latency(device*)' [A] 'function int dev_pm_opp_get_sharing_cpus(device*, cpumask*)' [A] 'function unsigned long int dev_pm_opp_get_suspend_opp_freq(device*)' [A] 'function void dev_pm_opp_put_supported_hw(opp_table*)' [A] 'function opp_table* dev_pm_opp_set_supported_hw(device*, const u32*, unsigned int)' [A] 'function int dev_pm_set_wake_irq(device*, int)' [A] 'function i3c_device* dev_to_i3cdev(device*)' [A] 'function int device_for_each_child_reverse(device*, void*, int (device*, void*)*)' [A] 'function drm_bridge* devm_drm_panel_bridge_add(device*, drm_panel*)' [A] 'function clk* devm_get_clk_from_child(device*, device_node*, const char*)' [A] 'function irq_chip_generic* devm_irq_alloc_generic_chip(device*, const char*, int, unsigned int, void*, irq_flow_handler_t)' [A] 'function int devm_irq_setup_generic_chip(device*, irq_chip_generic*, u32, irq_gc_flags, unsigned int, unsigned int)' [A] 'function char* devm_kvasprintf(device*, gfp_t, const char*, va_list)' [A] 'function phy* devm_of_phy_get(device*, device_node*, const char*)' [A] 'function phy* devm_phy_optional_get(device*, const char*)' [A] 'function int devm_pwmchip_add(device*, pwm_chip*)' [A] 'function void devm_remove_action(device*, void (void*)*, void*)' [A] 'function int devm_snd_dmaengine_pcm_register(device*, const snd_dmaengine_pcm_config*, unsigned int)' [A] 'function spi_mem_dirmap_desc* devm_spi_mem_dirmap_create(device*, spi_mem*, const spi_mem_dirmap_info*)' [A] 'function int dmaenginem_async_device_register(dma_device*)' [A] 'function int down_killable(semaphore*)' [A] 'function drm_bridge_state* drm_atomic_get_new_bridge_state(drm_atomic_state*, drm_bridge*)' [A] 'function u32* drm_atomic_helper_bridge_propagate_bus_fmt(drm_bridge*, drm_bridge_state*, drm_crtc_state*, drm_connector_state*, u32, unsigned int*)' [A] 'function void drm_atomic_helper_disable_planes_on_crtc(drm_crtc_state*, bool)' [A] 'function void drm_bridge_chain_enable(drm_bridge*)' [A] 'function void drm_bridge_connector_disable_hpd(drm_connector*)' [A] 'function void drm_bridge_connector_enable_hpd(drm_connector*)' [A] 'function drm_connector* drm_bridge_connector_init(drm_device*, drm_encoder*)' [A] 'function void drm_bus_flags_from_videomode(const videomode*, u32*)' [A] 'function bool drm_connector_atomic_hdr_metadata_equal(drm_connector_state*, drm_connector_state*)' [A] 'function int drm_connector_attach_hdr_output_metadata_property(drm_connector*)' [A] 'function int drm_connector_attach_max_bpc_property(drm_connector*, int, int)' [A] 'function int drm_connector_set_panel_orientation(drm_connector*, drm_panel_orientation)' [A] 'function hdmi_quantization_range drm_default_rgb_quant_range(const drm_display_mode*)' [A] 'function int drm_display_info_set_bus_formats(drm_display_info*, const u32*, unsigned int)' [A] 'function drm_gem_cma_object* drm_fb_cma_get_gem_obj(drm_framebuffer*, unsigned int)' [A] 'function const char* drm_get_connector_status_name(drm_connector_status)' [A] 'function void drm_hdmi_avi_infoframe_colorspace(hdmi_avi_infoframe*, const drm_connector_state*)' [A] 'function void drm_hdmi_avi_infoframe_quant_range(hdmi_avi_infoframe*, const drm_connector*, const drm_display_mode*, hdmi_quantization_range)' [A] 'function int drm_hdmi_infoframe_set_hdr_metadata(hdmi_drm_infoframe*, const drm_connector_state*)' [A] 'function int drm_hdmi_vendor_infoframe_from_display_mode(hdmi_vendor_infoframe*, const drm_connector*, const drm_display_mode*)' [A] 'function int drm_mode_create_hdmi_colorspace_property(drm_connector*)' [A] 'function drm_display_mode* drm_mode_find_dmt(drm_device*, int, int, int, bool)' [A] 'function bool drm_mode_is_420_also(const drm_display_info*, const drm_display_mode*)' [A] 'function bool drm_mode_is_420_only(const drm_display_info*, const drm_display_mode*)' [A] 'function int drm_of_encoder_active_endpoint(device_node*, drm_encoder*, of_endpoint*)' [A] 'function uint32_t drm_of_find_possible_crtcs(drm_device*, device_node*)' [A] 'function int drm_panel_dp_aux_backlight(drm_panel*, drm_dp_aux*)' [A] 'function int drm_panel_of_backlight(drm_panel*)' [A] 'function int drm_plane_create_scaling_filter_property(drm_plane*, unsigned int)' [A] 'function void drm_property_destroy(drm_device*, drm_property*)' [A] 'function ssize_t drm_scdc_read(i2c_adapter*, u8, void*, size_t)' [A] 'function bool drm_scdc_set_high_tmds_clock_ratio(i2c_adapter*, bool)' [A] 'function bool drm_scdc_set_scrambling(i2c_adapter*, bool)' [A] 'function ssize_t drm_scdc_write(i2c_adapter*, u8, void*, size_t)' [A] 'function void drm_self_refresh_helper_cleanup(drm_crtc*)' [A] 'function int drm_self_refresh_helper_init(drm_crtc*)' [A] 'function u8 dw_pcie_find_capability(dw_pcie*, u8)' [A] 'function u16 dw_pcie_find_ext_capability(dw_pcie*, u8)' [A] 'function int dw_pcie_link_up(dw_pcie*)' [A] 'function int ehci_handshake(ehci_hcd*, void*, u32, u32, int)' [A] 'function int ehci_hub_control(usb_hcd*, u16, u16, u16, char*, u16)' [A] 'function void ehci_init_driver(hc_driver*, const ehci_driver_overrides*)' [A] 'function int ehci_setup(usb_hcd*)' [A] 'function int ethnl_cable_test_fault_length(phy_device*, u8, u32)' [A] 'function int ethnl_cable_test_result(phy_device*, u8, u8)' [A] 'function int fb_get_options(const char*, char**)' [A] 'function loff_t fixed_size_llseek(file*, loff_t, int, loff_t)' [A] 'function void generic_shutdown_super(super_block*)' [A] 'function irqreturn_t genphy_handle_interrupt_no_ack(phy_device*)' [A] 'function int genphy_read_abilities(phy_device*)' [A] 'function int genphy_read_lpa(phy_device*)' [A] 'function int genphy_read_mmd_unsupported(phy_device*, int, u16)' [A] 'function int genphy_read_status(phy_device*)' [A] 'function int genphy_restart_aneg(phy_device*)' [A] 'function int genphy_soft_reset(phy_device*)' [A] 'function int genphy_suspend(phy_device*)' [A] 'function int genphy_update_link(phy_device*)' [A] 'function int genphy_write_mmd_unsupported(phy_device*, int, u16, u16)' [A] 'function int gpiod_set_array_value_cansleep(unsigned int, gpio_desc**, gpio_array*, unsigned long int*)' [A] 'function int hdmi_avi_infoframe_check(hdmi_avi_infoframe*)' [A] 'function void hdmi_avi_infoframe_init(hdmi_avi_infoframe*)' [A] 'function ssize_t hdmi_avi_infoframe_pack(hdmi_avi_infoframe*, void*, size_t)' [A] 'function ssize_t hdmi_drm_infoframe_pack(hdmi_drm_infoframe*, void*, size_t)' [A] 'function ssize_t hdmi_vendor_infoframe_pack(hdmi_vendor_infoframe*, void*, size_t)' [A] 'function int i3c_device_do_priv_xfers(i3c_device*, i3c_priv_xfer*, int)' [A] 'function const i3c_device_id* i3c_device_match_id(i3c_device*, const i3c_device_id*)' [A] 'function int i3c_driver_register_with_owner(i3c_driver*, module*)' [A] 'function void i3c_driver_unregister(i3c_driver*)' [A] 'function int iio_device_claim_direct_mode(iio_dev*)' [A] 'function void iio_device_release_direct_mode(iio_dev*)' [A] 'function int iio_push_event(iio_dev*, u64, s64)' [A] 'function int iio_read_mount_matrix(device*, iio_mount_matrix*)' [A] 'function ssize_t iio_show_mount_matrix(iio_dev*, uintptr_t, const iio_chan_spec*, char*)' [A] 'function int ir_raw_event_store_edge(rc_dev*, bool)' [A] 'function irq_domain* irq_domain_add_legacy(device_node*, unsigned int, unsigned int, irq_hw_number_t, const irq_domain_ops*, void*)' [A] 'function void irq_gc_ack_set_bit(irq_data*)' [A] 'function void irq_gc_mask_clr_bit(irq_data*)' [A] 'function void irq_gc_mask_set_bit(irq_data*)' [A] 'function int iw_handler_get_spy(net_device*, iw_request_info*, iwreq_data*, char*)' [A] 'function int iw_handler_get_thrspy(net_device*, iw_request_info*, iwreq_data*, char*)' [A] 'function int iw_handler_set_spy(net_device*, iw_request_info*, iwreq_data*, char*)' [A] 'function int iw_handler_set_thrspy(net_device*, iw_request_info*, iwreq_data*, char*)' [A] 'function char* iwe_stream_add_event(iw_request_info*, char*, char*, iw_event*, int)' [A] 'function char* iwe_stream_add_point(iw_request_info*, char*, char*, iw_event*, char*)' [A] 'function char* iwe_stream_add_value(iw_request_info*, char*, char*, char*, iw_event*, int)' [A] 'function void lockref_get(lockref*)' [A] 'function void logfc(fc_log*, const char*, char, const char*, ...)' [A] 'function int lookup_bdev(const char*, dev_t*)' [A] 'function void mctrl_gpio_disable_ms(mctrl_gpios*)' [A] 'function void mctrl_gpio_enable_ms(mctrl_gpios*)' [A] 'function unsigned int mctrl_gpio_get(mctrl_gpios*, unsigned int*)' [A] 'function mctrl_gpios* mctrl_gpio_init(uart_port*, unsigned int)' [A] 'function void mctrl_gpio_set(mctrl_gpios*, unsigned int)' [A] 'function void mdio_device_reset(mdio_device*, int)' [A] 'function bool mdiobus_is_registered_device(mii_bus*, int)' [A] 'function int mdiobus_read(mii_bus*, int, u32)' [A] 'function int mdiobus_write(mii_bus*, int, u32, u16)' [A] 'function void media_graph_walk_cleanup(media_graph*)' [A] 'function int media_graph_walk_init(media_graph*, media_device*)' [A] 'function int mipi_dsi_dcs_enter_sleep_mode(mipi_dsi_device*)' [A] 'function int mipi_dsi_dcs_exit_sleep_mode(mipi_dsi_device*)' [A] 'function int mipi_dsi_dcs_get_display_brightness(mipi_dsi_device*, u16*)' [A] 'function int mipi_dsi_dcs_set_display_off(mipi_dsi_device*)' [A] 'function int mipi_dsi_dcs_set_display_on(mipi_dsi_device*)' [A] 'function int mipi_dsi_dcs_set_pixel_format(mipi_dsi_device*, u8)' [A] 'function int mipi_dsi_dcs_set_tear_on(mipi_dsi_device*, mipi_dsi_dcs_tear_mode)' [A] 'function int mipi_dsi_dcs_set_tear_scanline(mipi_dsi_device*, u16)' [A] 'function int mipi_dsi_dcs_soft_reset(mipi_dsi_device*)' [A] 'function int mmc_gpio_set_cd_wake(mmc_host*, bool)' [A] 'function int mmc_hw_reset(mmc_host*)' [A] 'function int mmc_of_parse_voltage(mmc_host*, u32*)' [A] 'function int mmc_pwrseq_register(mmc_pwrseq*)' [A] 'function void mmc_pwrseq_unregister(mmc_pwrseq*)' [A] 'function void mmc_retune_timer_stop(mmc_host*)' [A] 'function nvmem_device* nvmem_register(const nvmem_config*)' [A] 'function void nvmem_unregister(nvmem_device*)' [A] 'function int of_drm_get_panel_orientation(const device_node*, drm_panel_orientation*)' [A] 'function gen_pool* of_gen_pool_get(device_node*, const char*, int)' [A] 'function int of_get_display_timing(const device_node*, const char*, display_timing*)' [A] 'function int of_get_phy_mode(device_node*, phy_interface_t*)' [A] 'function int of_get_videomode(device_node*, videomode*, int)' [A] 'function device_node* of_graph_get_port_by_id(device_node*, u32)' [A] 'function int of_mdiobus_register(mii_bus*, device_node*)' [A] 'function phy_device* of_phy_connect(net_device*, device_node*, void (net_device*)*, u32, phy_interface_t)' [A] 'function void of_phy_deregister_fixed_link(device_node*)' [A] 'function phy_device* of_phy_find_device(device_node*)' [A] 'function bool of_phy_is_fixed_link(device_node*)' [A] 'function int of_phy_register_fixed_link(device_node*)' [A] 'function pwm_device* of_pwm_xlate_with_flags(pwm_chip*, const of_phandle_args*)' [A] 'function int of_regulator_match(device*, device_node*, of_regulator_match*, unsigned int)' [A] 'function usb_phy_interface of_usb_get_phy_mode(device_node*)' [A] 'function int of_usb_update_otg_caps(device_node*, usb_otg_caps*)' [A] 'function int pci_msi_enabled()' [A] 'function int phy_drivers_register(phy_driver*, int, module*)' [A] 'function void phy_drivers_unregister(phy_driver*, int)' [A] 'function void phy_error(phy_device*)' [A] 'function int phy_ethtool_get_eee(phy_device*, ethtool_eee*)' [A] 'function int phy_ethtool_set_eee(phy_device*, ethtool_eee*)' [A] 'function int phy_init_eee(phy_device*, bool)' [A] 'function int phy_init_hw(phy_device*)' [A] 'function int phy_mipi_dphy_get_default_config(unsigned long int, unsigned int, unsigned int, phy_configure_opts_mipi_dphy*)' [A] 'function int phy_modify(phy_device*, u32, u16, u16)' [A] 'function int phy_modify_changed(phy_device*, u32, u16, u16)' [A] 'function int phy_modify_mmd(phy_device*, int, u32, u16, u16)' [A] 'function int phy_modify_paged(phy_device*, int, u32, u16, u16)' [A] 'function int phy_modify_paged_changed(phy_device*, int, u32, u16, u16)' [A] 'function int phy_read_mmd(phy_device*, int, u32)' [A] 'function int phy_read_paged(phy_device*, int, u32)' [A] 'function void phy_remove_link_mode(phy_device*, u32)' [A] 'function int phy_reset_after_clk_enable(phy_device*)' [A] 'function void phy_resolve_aneg_pause(phy_device*)' [A] 'function int phy_restore_page(phy_device*, int, int)' [A] 'function int phy_select_page(phy_device*, int)' [A] 'function int phy_set_max_speed(phy_device*, u32)' [A] 'function void phy_set_sym_pause(phy_device*, bool, bool, bool)' [A] 'function int phy_start_aneg(phy_device*)' [A] 'function void phy_support_sym_pause(phy_device*)' [A] 'function void phy_trigger_machine(phy_device*)' [A] 'function int phy_validate(phy*, phy_mode, int, phy_configure_opts*)' [A] 'function int phy_write_mmd(phy_device*, int, u32, u16)' [A] 'function int phy_write_paged(phy_device*, int, u32, u16)' [A] 'function group_desc* pinctrl_generic_get_group(pinctrl_dev*, unsigned int)' [A] 'function power_supply* power_supply_get_by_phandle(device_node*, const char*)' [A] 'function void ptp_clock_event(ptp_clock*, ptp_clock_event*)' [A] 'function int ptp_clock_index(ptp_clock*)' [A] 'function ptp_clock* ptp_clock_register(ptp_clock_info*, device*)' [A] 'function int ptp_clock_unregister(ptp_clock*)' [A] 'function int regmap_add_irq_chip(regmap*, int, int, int, const regmap_irq_chip*, regmap_irq_chip_data**)' [A] 'function int regmap_attach_dev(device*, regmap*, const regmap_config*)' [A] 'function void regmap_del_irq_chip(int, regmap_irq_chip_data*)' [A] 'function int regmap_reinit_cache(regmap*, const regmap_config*)' [A] 'function void regulator_bulk_free(int, regulator_bulk_data*)' [A] 'function int regulator_desc_list_voltage_linear_range(const regulator_desc*, unsigned int)' [A] 'function int regulator_map_voltage_ascend(regulator_dev*, int, int)' [A] 'function int regulator_set_ramp_delay_regmap(regulator_dev*, int)' [A] 'function void reset_controller_unregister(reset_controller_dev*)' [A] 'function void* rproc_da_to_va(rproc*, u64, size_t, bool*)' [A] 'function resource_table* rproc_elf_find_loaded_rsc_table(rproc*, const firmware*)' [A] 'function int rproc_elf_load_rsc_table(rproc*, const firmware*)' [A] 'function int rproc_elf_load_segments(rproc*, const firmware*)' [A] 'function int rproc_elf_sanity_check(rproc*, const firmware*)' [A] 'function int rproc_of_parse_firmware(device*, int, const char**)' [A] 'function void sdhci_dumpregs(sdhci_host*)' [A] 'function int sdhci_execute_tuning(mmc_host*, u32)' [A] 'function int sdhci_resume_host(sdhci_host*)' [A] 'function int sdhci_suspend_host(sdhci_host*)' [A] 'function scatterlist* sg_last(scatterlist*, unsigned int)' [A] 'function super_block* sget_fc(fs_context*, int (super_block*, fs_context*)*, int (super_block*, fs_context*)*)' [A] 'function int snd_compr_malloc_pages(snd_compr_stream*, size_t)' [A] 'function int snd_dmaengine_pcm_prepare_slave_config(snd_pcm_substream*, snd_pcm_hw_params*, dma_slave_config*)' [A] 'function int snd_dmaengine_pcm_refine_runtime_hwparams(snd_pcm_substream*, snd_dmaengine_dai_dma_data*, snd_pcm_hardware*, dma_chan*)' [A] 'function void snd_dmaengine_pcm_set_config_from_dai_data(const snd_pcm_substream*, const snd_dmaengine_dai_dma_data*, dma_slave_config*)' [A] 'function int snd_hwparams_to_dma_slave_config(const snd_pcm_substream*, const snd_pcm_hw_params*, dma_slave_config*)' [A] 'function int snd_interval_ranges(snd_interval*, unsigned int, const snd_interval*, unsigned int)' [A] 'function int snd_pcm_format_big_endian(snd_pcm_format_t)' [A] 'function int snd_pcm_format_linear(snd_pcm_format_t)' [A] 'function int snd_pcm_format_unsigned(snd_pcm_format_t)' [A] 'function int snd_pcm_hw_constraint_ratnums(snd_pcm_runtime*, unsigned int, snd_pcm_hw_param_t, const snd_pcm_hw_constraint_ratnums*)' [A] 'function int snd_pcm_set_managed_buffer(snd_pcm_substream*, int, device*, size_t, size_t)' [A] 'function int snd_soc_bytes_get(snd_kcontrol*, snd_ctl_elem_value*)' [A] 'function int snd_soc_bytes_info(snd_kcontrol*, snd_ctl_elem_info*)' [A] 'function int snd_soc_bytes_put(snd_kcontrol*, snd_ctl_elem_value*)' [A] 'function int snd_soc_dai_active(snd_soc_dai*)' [A] 'function int snd_soc_dai_set_bclk_ratio(snd_soc_dai*, unsigned int)' [A] 'function int snd_soc_dapm_disable_pin_unlocked(snd_soc_dapm_context*, const char*)' [A] 'function int snd_soc_dapm_force_bias_level(snd_soc_dapm_context*, snd_soc_bias_level)' [A] 'function int snd_soc_dapm_force_enable_pin_unlocked(snd_soc_dapm_context*, const char*)' [A] 'function int snd_soc_dapm_sync_unlocked(snd_soc_dapm_context*)' [A] 'function snd_pcm_substream* snd_soc_dpcm_get_substream(snd_soc_pcm_runtime*, int)' [A] 'function snd_soc_dai* snd_soc_find_dai(const snd_soc_dai_link_component*)' [A] 'function int snd_soc_get_dai_name(const of_phandle_args*, const char**)' [A] 'function snd_soc_pcm_runtime* snd_soc_get_pcm_runtime(snd_soc_card*, snd_soc_dai_link*)' [A] 'function int snd_soc_info_xr_sx(snd_kcontrol*, snd_ctl_elem_info*)' [A] 'function int snd_soc_jack_add_gpios(snd_soc_jack*, int, snd_soc_jack_gpio*)' [A] 'function void snd_soc_jack_notifier_register(snd_soc_jack*, notifier_block*)' [A] 'function int snd_soc_limit_volume(snd_soc_card*, const char*, int)' [A] 'function snd_soc_component* snd_soc_lookup_component(device*, const char*)' [A] 'function snd_soc_component* snd_soc_lookup_component_nolocked(device*, const char*)' [A] 'function void snd_soc_of_parse_node_prefix(device_node*, snd_soc_codec_conf*, device_node*, const char*)' [A] 'function int snd_soc_params_to_frame_size(snd_pcm_hw_params*)' [A] 'function int snd_soc_runtime_calc_hw(snd_soc_pcm_runtime*, snd_pcm_hardware*, int)' [A] 'function int snd_soc_tplg_component_load(snd_soc_component*, snd_soc_tplg_ops*, const firmware*)' [A] 'function int snd_soc_tplg_component_remove(snd_soc_component*)' [A] 'function int snd_soc_tplg_widget_bind_event(snd_soc_dapm_widget*, const snd_soc_tplg_widget_events*, int, u16)' [A] 'function const soc_device_attribute* soc_device_match(const soc_device_attribute*)' [A] 'function int spi_mem_adjust_op_size(spi_mem*, spi_mem_op*)' [A] 'function bool spi_mem_default_supports_op(spi_mem*, const spi_mem_op*)' [A] 'function ssize_t spi_mem_dirmap_read(spi_mem_dirmap_desc*, u64, size_t, void*)' [A] 'function ssize_t spi_mem_dirmap_write(spi_mem_dirmap_desc*, u64, size_t, void*)' [A] 'function int spi_mem_driver_register_with_owner(spi_mem_driver*, module*)' [A] 'function void spi_mem_driver_unregister(spi_mem_driver*)' [A] 'function bool spi_mem_dtr_supports_op(spi_mem*, const spi_mem_op*)' [A] 'function int spi_mem_exec_op(spi_mem*, const spi_mem_op*)' [A] 'function const char* spi_mem_get_name(spi_mem*)' [A] 'function bool spi_mem_supports_op(spi_mem*, const spi_mem_op*)' [A] 'function int thermal_zone_bind_cooling_device(thermal_zone_device*, int, thermal_cooling_device*, unsigned long int, unsigned long int, unsigned int)' [A] 'function void touchscreen_parse_properties(input_dev*, bool, touchscreen_properties*)' [A] 'function void touchscreen_report_pos(input_dev*, const touchscreen_properties*, unsigned int, unsigned int, bool)' [A] 'function void tso_build_data(const sk_buff*, tso_t*, int)' [A] 'function void tso_build_hdr(const sk_buff*, char*, tso_t*, int, bool)' [A] 'function int tso_count_descs(const sk_buff*)' [A] 'function int tso_start(sk_buff*, tso_t*)' [A] 'function int uart_get_rs485_mode(uart_port*)' [A] 'function void uart_handle_cts_change(uart_port*, unsigned int)' [A] 'function void uart_handle_dcd_change(uart_port*, unsigned int)' [A] 'function int usb_ep_clear_halt(usb_ep*)' [A] 'function void usb_ep_fifo_flush(usb_ep*)' [A] 'function void usb_gadget_unmap_request_by_dev(device*, usb_request*, int)' [A] 'function int usb_gadget_vbus_connect(usb_gadget*)' [A] 'function int usb_gadget_vbus_disconnect(usb_gadget*)' [A] 'function irqreturn_t usb_hcd_irq(int, void*)' [A] 'function void usb_phy_set_event(usb_phy*, unsigned long int)' [A] 'function void usb_udc_vbus_handler(usb_gadget*, bool)' [A] 'function int v4l2_event_dequeue(v4l2_fh*, v4l2_event*, int)' [A] 'function int v4l2_event_pending(v4l2_fh*)' [A] 'function int v4l2_g_parm_cap(video_device*, v4l2_subdev*, v4l2_streamparm*)' [A] 'function int v4l2_s_parm_cap(video_device*, v4l2_subdev*, v4l2_streamparm*)' [A] 'function int vb2_create_bufs(vb2_queue*, v4l2_create_buffers*)' [A] 'function int vb2_expbuf(vb2_queue*, v4l2_exportbuffer*)' [A] 'function int vb2_prepare_buf(vb2_queue*, media_device*, v4l2_buffer*)' [A] 'function size_t vb2_read(vb2_queue*, char*, size_t, loff_t*, int)' 5 Added variables: [A] 'const clk_ops clk_fractional_divider_ops' [A] 'unsigned int hrtimer_resolution' [A] 'const kernel_param_ops param_ops_ullong' [A] 'unsigned long int phy_basic_t1_features[2]' [A] 'void ()* pm_power_off_prepare' Bug: 229646648 Signed-off-by: Zhipeng Wang <zhipeng.wang_1@nxp.com> Change-Id: Ib810e197c441525349d41027bf1ee43805b2c10a |
||
|
|
fde6251d1f |
ANDROID: KVM: arm64: s2mpu: Allow r/o access to control regs
To ease debugging, allow the host to read the state of S2MPU's control registers. These values do not need to be kept secret from the host. Bug: 190463801 Signed-off-by: David Brazdil <dbrazdil@google.com> Change-Id: Ib9e5be443f38a0ae8fb0d4f5820017d728adf64b |
||
|
|
520d88005f |
ANDROID: KVM: arm64: s2mpu: Allow reading MPTC entries
The state of the S2MPU does not need to be kept secret from the host as it merely reflects the permissions that the host has and knows about. To make debugging DMA issues easier, allow the host to query entries from the MPTC cache. This involves writing the set and way IDs of the query to the READ_MPTC register and then reading the MPTC entry information from READ_MPTC_TAG_PPN/TAG_OTHERS/DATA. Modify the S2MPU DABT handler to allow this register access pattern. Bug: 190463801 Bug: 229793579 Signed-off-by: David Brazdil <dbrazdil@google.com> Change-Id: I6bbcafa6b21c541774932c3b197d2888fd50202c |
||
|
|
fdfed49bf7 |
ANDROID: KVM: arm64: s2mpu: Allow L1ENTRY_* r/o access
Allow read-only access to L1ENTRY_ATTR and L1ENTRY_L2TABLE S2MPU registers. This allows the host to dump the register state for debugging purposes. It is safe because the state of the S2MPU is known to the host anyway. Bug: 190463801 Signed-off-by: David Brazdil <dbrazdil@google.com> Change-Id: I4fbcc3f7fac3f51ed47ba85ee4eb408fbf154e2d |
||
|
|
e62f59e567 |
ANDROID: KVM: arm64: s2mpu: Refactor DABT handler
In preparation for adding more entries to the list of S2MPU registers accessible to the host, refactor the code to use a switch instead of a series of ifs. No functional change intended. Bug: 190463801 Signed-off-by: David Brazdil <dbrazdil@google.com> Change-Id: I70afa8f755d6d96916cdc1f813e6506e97e761c0 |
||
|
|
28632d7a23 |
ANDROID: KVM: arm64: s2mpu: Extract L1ENTRY_* consts
Extract the L1ENTRY_ATTR_{PRON,GRAN}_MASK constants out of macros that
create the corresponding constants. This will allow EL1 users to use the
masks to get the fields out of register values. Also extract
L1ENTRY_L2TABLE_ADDR_SHIFT for adjusting the L2 table address.
Bug: 190463801
Signed-off-by: David Brazdil <dbrazdil@google.com>
Change-Id: I45578857694ca39266fe45b3c00dbea33738167f
|
||
|
|
71e7a059a0 |
ANDROID: Suppress build.sh deprecation warnings.
build.sh will continued to be supported in android13-* branches. To avoid confusion, suppress the deprecation warnings when executing build.sh on android13-*. This change also avoids the time delay for inferring the equivalent Bazel command. It is still encouraged to migrate build.sh to Bazel. Test: manually execute build.sh, no deprecation warnings Bug: 222074706 Change-Id: I8b62a442cb154f43375a9dae6593340c79ba556c Signed-off-by: Yifan Hong <elsk@google.com> |
||
|
|
64e9c6784d |
ANDROID: GKI: 4/20/2022 KMI update
Set KMI_GENERATION=4 for 4/20 KMI update
Leaf changes summary: 3764 artifacts changed
Changed leaf types summary: 9 leaf types changed
Removed/Changed/Added functions summary: 0 Removed, 3690 Changed, 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 65 Changed, 0 Added variable
3690 functions with some sub-type change:
[C] 'function block_device* I_BDEV(inode*)' at bdev.c:42:1 has some sub-type changes:
CRC (modversions) changed from 0x1d77cd33 to 0xc064ebfb
[C] 'function void* PDE_DATA(const inode*)' at generic.c:794:1 has some sub-type changes:
CRC (modversions) changed from 0x6a6d7264 to 0x4a14ef3
[C] 'function void __ClearPageMovable(page*)' at compaction.c:138:1 has some sub-type changes:
CRC (modversions) changed from 0x2500d324 to 0x52304186
... 3687 omitted; 3690 symbols have only CRC changes
65 Changed variables:
[C] 'pglist_data contig_page_data' was changed at memblock.c:96:1:
size of symbol changed from 5760 to 6976
CRC (modversions) changed from 0x42a6e924 to 0xb67ab666
type of variable changed:
type size changed from 46080 to 55808 (in bits)
1 data member insertion:
'lru_gen_mm_walk mm_walk', at offset 51456 (in bits) at mmzone.h:1109:1
there are data member changes:
type 'struct lruvec' of 'pglist_data::__lruvec' changed:
type size changed from 1152 to 9664 (in bits)
2 data member insertions:
'lru_gen_struct lrugen', at offset 1088 (in bits) at mmzone.h:518:1
'lru_gen_mm_state mm_state', at offset 8640 (in bits) at mmzone.h:520:1
there are data member changes:
'pglist_data* pgdat' offset changed (by +8512 bits)
4087 impacted interfaces
'unsigned long int flags' offset changed (by +8512 bits)
3 ('zone_padding _pad2_' .. 'atomic_long_t vm_stat[40]') offsets changed (by +9728 bits)
4087 impacted interfaces
[C] 'task_struct init_task' was changed at init_task.c:64:1:
CRC (modversions) changed from 0xfb2dd432 to 0xbb41e5e8
type of variable changed:
type size hasn't changed
1 data member insertion:
'unsigned int in_lru_fault', at offset 10500 (in bits) at sched.h:919:1
there are data member changes:
6 ('unsigned int no_cgroup_migration' .. 'unsigned int in_eventfd_signal') offsets changed (by +1 bits)
4087 impacted interfaces
[C] 'bus_type amba_bustype' was changed at bus.c:313:1:
CRC (modversions) changed from 0x76bb3c03 to 0x1059aefa
[C] 'neigh_table arp_tbl' was changed at arp.c:152:1:
CRC (modversions) changed from 0x272a2c02 to 0x321ac83d
[C] 'const address_space_operations balloon_aops' was changed at balloon_compaction.c:253:1:
CRC (modversions) changed from 0x502add75 to 0xce92e8cd
... 60 omitted; 63 symbols have only CRC changes
'struct lruvec at mmzone.h:299:1' changed:
details were reported earlier
'struct mem_cgroup at memcontrol.h:237:1' changed:
type size changed from 30720 to 31232 (in bits)
1 data member insertion:
'lru_gen_mm_list mm_list', at offset 30656 (in bits) at memcontrol.h:353:1
there are data member changes:
'mem_cgroup_per_node* nodeinfo[]' offset changed (by +192 bits)
4087 impacted interfaces
'struct mem_cgroup_per_node at memcontrol.h:137:1' changed:
type size changed from 7872 to 16384 (in bits)
there are data member changes:
type 'struct lruvec' of 'mem_cgroup_per_node::lruvec' changed, as reported earlier
9 ('lruvec_stats_percpu* lruvec_stats_percpu' .. 'mem_cgroup* memcg') offsets changed (by +8512 bits)
4087 impacted interfaces
'struct mm_struct at mm_types.h:432:1' changed:
type size changed from 7360 to 7616 (in bits)
there are data member changes:
anonymous data member at offset 0 (in bits) changed from:
struct {vm_area_struct* mmap; rb_root mm_rb; u64 vmacache_seqnum; unsigned long int (file*, unsigned long int, unsigned long int, unsigned long int, unsigned long int)* get_unmapped_area; unsigned long int mmap_base; unsigned long int mmap_legacy_base; unsigned long int task_size; unsigned long int highest_vm_end; pgd_t* pgd; atomic_t membarrier_state; atomic_t mm_users; atomic_t mm_count; atomic_long_t pgtables_bytes; int map_count; spinlock_t page_table_lock; rw_semaphore mmap_lock; unsigned long int mmap_seq; list_head mmlist; unsigned long int hiwater_rss; unsigned long int hiwater_vm; unsigned long int total_vm; unsigned long int locked_vm; atomic64_t pinned_vm; unsigned long int data_vm; unsigned long int exec_vm; unsigned long int stack_vm; unsigned long int def_flags; seqcount_t write_protect_seq; spinlock_t arg_lock; unsigned long int start_code; unsigned long int end_code; unsigned long int start_data; unsigned long int end_data; unsigned long int start_brk; unsigned long int brk; unsigned long int start_stack; unsigned long int arg_start; unsigned long int arg_end; unsigned long int env_start; unsigned long int env_end; unsigned long int saved_auxv[46]; mm_rss_stat rss_stat; linux_binfmt* binfmt; mm_context_t context; unsigned long int flags; core_state* core_state; spinlock_t ioctx_lock; kioctx_table* ioctx_table; task_struct* owner; user_namespace* user_ns; file* exe_file; mmu_notifier_subscriptions* notifier_subscriptions; percpu_rw_semaphore* mmu_notifier_lock; atomic_t tlb_flush_pending; uprobes_state uprobes_state; work_struct async_put_work; u32 pasid;}
to:
struct {vm_area_struct* mmap; rb_root mm_rb; u64 vmacache_seqnum; unsigned long int (file*, unsigned long int, unsigned long int, unsigned long int, unsigned long int)* get_unmapped_area; unsigned long int mmap_base; unsigned long int mmap_legacy_base; unsigned long int task_size; unsigned long int highest_vm_end; pgd_t* pgd; atomic_t membarrier_state; atomic_t mm_users; atomic_t mm_count; atomic_long_t pgtables_bytes; int map_count; spinlock_t page_table_lock; rw_semaphore mmap_lock; unsigned long int mmap_seq; list_head mmlist; unsigned long int hiwater_rss; unsigned long int hiwater_vm; unsigned long int total_vm; unsigned long int locked_vm; atomic64_t pinned_vm; unsigned long int data_vm; unsigned long int exec_vm; unsigned long int stack_vm; unsigned long int def_flags; seqcount_t write_protect_seq; spinlock_t arg_lock; unsigned long int start_code; unsigned long int end_code; unsigned long int start_data; unsigned long int end_data; unsigned long int start_brk; unsigned long int brk; unsigned long int start_stack; unsigned long int arg_start; unsigned long int arg_end; unsigned long int env_start; unsigned long int env_end; unsigned long int saved_auxv[46]; mm_rss_stat rss_stat; linux_binfmt* binfmt; mm_context_t context; unsigned long int flags; core_state* core_state; spinlock_t ioctx_lock; kioctx_table* ioctx_table; task_struct* owner; user_namespace* user_ns; file* exe_file; mmu_notifier_subscriptions* notifier_subscriptions; percpu_rw_semaphore* mmu_notifier_lock; atomic_t tlb_flush_pending; uprobes_state uprobes_state; work_struct async_put_work; u32 pasid; struct {list_head list; mem_cgroup* memcg; nodemask_t nodes;} lru_gen;}
and size changed from 7360 to 7616 (in bits) (by +256 bits)
'unsigned long int cpu_bitmap[]' offset changed (by +256 bits)
4087 impacted interfaces
'struct pglist_data at mmzone.h:802:1' changed:
details were reported earlier
'struct reclaim_state at swap.h:140:1' changed:
type size changed from 64 to 128 (in bits)
1 data member insertion:
'lru_gen_mm_walk* mm_walk', at offset 64 (in bits) at swap.h:144:1
4087 impacted interfaces
'struct task_struct at sched.h:726:1' changed:
details were reported earlier
'struct ufs_hba_variant_ops at ufshcd.h:324:1' changed:
type size hasn't changed
there are data member changes:
type 'int (ufs_hba*, enum ufs_pm_op)*' of 'ufs_hba_variant_ops::suspend' changed:
pointer type changed from: 'int (ufs_hba*, enum ufs_pm_op)*' to: 'int (ufs_hba*, enum ufs_pm_op, enum ufs_notify_change_status)*'
35 impacted interfaces
'struct usb_phy at phy.h:88:1' changed:
type size changed from 2688 to 2752 (in bits)
1 data member insertion:
'u64 android_vendor_data1', at offset 2688 (in bits) at phy.h:160:1
43 impacted interfaces
Bug: 229750431
Signed-off-by: Todd Kjos <tkjos@google.com>
Change-Id: I723c22f89d3e85556b1246498ee96993e2151691
|
||
|
|
457758d86c |
ANDROID: update is_cpu_allowed hook prototype
Vendor module needs access to the task structure through is_cpu_allowed tracehook to better assess whether the chosen cpu can be allowed. Update the existing is_cpu_allowed tracehook to pass the task struct of the task currently being handled. Bug: 228392842 Change-Id: I882b593ccb77da0755e076c7e636db304ee74b42 Signed-off-by: Stephen Dickey <quic_dickey@quicinc.com> |
||
|
|
07c3480a9d |
UPSTREAM: scsi: ufs: mediatek: Support vops pre suspend to disable auto-hibern8
Mediatek UFS needs auto-hibern8 disabled before suspend. Introduce a solution to do pre-suspend before SSU (sleep). Link: https://lore.kernel.org/r/20211006054705.21885-1-peter.wang@mediatek.com Reviewed-by: Bart Van Assche <bvanassche@acm.org> Reviewed-by: Bean Huo <beanhuo@micron.com> Signed-off-by: Peter Wang <peter.wang@mediatek.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Bug: 204438323 (cherry picked from commit |
||
|
|
5134c3ba7c |
ANDROID: USB: Add vendor specified variables to phy.h
This data is used by Android vendor for specific purpose. Bug: 227706139 Signed-off-by: Surong Pang <surong.pang@unisoc.com> Change-Id: I8aff33d894aad790474375eb1d897207e4964d3c |
||
|
|
deb6937be6 |
ANDROID: GKI: build multi-gen LRU
CONFIG_LRU_GEN=y to build multi-gen LRU. To enable it, echo y >/sys/kernel/mm/lru_gen/enabled. Bug: 227651406 Signed-off-by: Yu Zhao <yuzhao@google.com> Signed-off-by: Kalesh Singh <kaleshsingh@google.com> Change-Id: If5f6ece8373f1da2eb1eb96d809a2e216ebc0fbc |
||
|
|
763ca9270f |
FROMLIST: mm: multi-gen LRU: design doc
Add a design doc. Link: https://lore.kernel.org/lkml/20220309021230.721028-15-yuzhao@google.com/ Signed-off-by: Yu Zhao <yuzhao@google.com> Acked-by: Brian Geffon <bgeffon@google.com> Acked-by: Jan Alexander Steffens (heftig) <heftig@archlinux.org> Acked-by: Oleksandr Natalenko <oleksandr@natalenko.name> Acked-by: Steven Barrett <steven@liquorix.net> Acked-by: Suleiman Souhlal <suleiman@google.com> Tested-by: Daniel Byrne <djbyrne@mtu.edu> Tested-by: Donald Carr <d@chaos-reins.com> Tested-by: Holger Hoffstätte <holger@applied-asynchrony.com> Tested-by: Konstantin Kharlamov <Hi-Angel@yandex.ru> Tested-by: Shuang Zhai <szhai2@cs.rochester.edu> Tested-by: Sofia Trinh <sofia.trinh@edi.works> Tested-by: Vaibhav Jain <vaibhav@linux.ibm.com> Bug: 227651406 Signed-off-by: Kalesh Singh <kaleshsingh@google.com> Change-Id: I1d66302e618416291ebf9647e20625fb76613c89 |
||
|
|
6e815a6f34 |
FROMLIST: mm: multi-gen LRU: admin guide
Add an admin guide. Link: https://lore.kernel.org/lkml/20220309021230.721028-14-yuzhao@google.com/ Signed-off-by: Yu Zhao <yuzhao@google.com> Acked-by: Brian Geffon <bgeffon@google.com> Acked-by: Jan Alexander Steffens (heftig) <heftig@archlinux.org> Acked-by: Oleksandr Natalenko <oleksandr@natalenko.name> Acked-by: Steven Barrett <steven@liquorix.net> Acked-by: Suleiman Souhlal <suleiman@google.com> Tested-by: Daniel Byrne <djbyrne@mtu.edu> Tested-by: Donald Carr <d@chaos-reins.com> Tested-by: Holger Hoffstätte <holger@applied-asynchrony.com> Tested-by: Konstantin Kharlamov <Hi-Angel@yandex.ru> Tested-by: Shuang Zhai <szhai2@cs.rochester.edu> Tested-by: Sofia Trinh <sofia.trinh@edi.works> Tested-by: Vaibhav Jain <vaibhav@linux.ibm.com> Bug: 227651406 Signed-off-by: Kalesh Singh <kaleshsingh@google.com> Change-Id: I6fafbd7eb3ef6819cfcd30376459f14893f17c63 |
||
|
|
3d18c9ea72 |
FROMLIST: mm: multi-gen LRU: debugfs interface
Add /sys/kernel/debug/lru_gen for working set estimation and proactive reclaim. These features are required to optimize job scheduling (bin packing) in data centers [1][2]. Compared with the page table-based approach and the PFN-based approach, e.g., mm/damon/[vp]addr.c, this lruvec-based approach has the following advantages: 1. It offers better choices because it is aware of memcgs, NUMA nodes, shared mappings and unmapped page cache. 2. It is more scalable because it is O(nr_hot_pages), whereas the PFN-based approach is O(nr_total_pages). Add /sys/kernel/debug/lru_gen_full for debugging. [1] https://dl.acm.org/doi/10.1145/3297858.3304053 [2] https://dl.acm.org/doi/10.1145/3503222.3507731 Link: https://lore.kernel.org/lkml/20220309021230.721028-13-yuzhao@google.com/ Signed-off-by: Yu Zhao <yuzhao@google.com> Acked-by: Brian Geffon <bgeffon@google.com> Acked-by: Jan Alexander Steffens (heftig) <heftig@archlinux.org> Acked-by: Oleksandr Natalenko <oleksandr@natalenko.name> Acked-by: Steven Barrett <steven@liquorix.net> Acked-by: Suleiman Souhlal <suleiman@google.com> Tested-by: Daniel Byrne <djbyrne@mtu.edu> Tested-by: Donald Carr <d@chaos-reins.com> Tested-by: Holger Hoffstätte <holger@applied-asynchrony.com> Tested-by: Konstantin Kharlamov <Hi-Angel@yandex.ru> Tested-by: Shuang Zhai <szhai2@cs.rochester.edu> Tested-by: Sofia Trinh <sofia.trinh@edi.works> Tested-by: Vaibhav Jain <vaibhav@linux.ibm.com> Bug: 227651406 Signed-off-by: Kalesh Singh <kaleshsingh@google.com> Change-Id: Ie558098e0a24a647f77f4eacc4d72576173fc0b8 |