Merge "Merge android11-5.4.61+ (e32adae) into msm-5.4"

This commit is contained in:
qctecmdr 2020-09-30 17:02:50 -07:00 • committed by Gerrit - the friendly Code Review server
commit 5fe63e27d1
29 changed files with 5902 additions and 1560 deletions

View file

@ -5,8 +5,6 @@
#
mainmenu "Linux/$(ARCH) $(KERNELVERSION) Kernel Configuration"
comment "Compiler: $(CC_VERSION_TEXT)"
source "scripts/Kconfig.include"
source "init/Kconfig"

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
# commonly used symbols
module_layout
__put_task_struct

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
# commonly used symbols
add_wait_queue
alloc_etherdev_mqs

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
# commonly used symbols
__arch_copy_from_user
__arch_copy_to_user

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
add_timer
add_timer_on
add_uevent_var

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
___ratelimit
__alloc_disk_node
__alloc_pages_nodemask
@ -93,6 +93,7 @@
__mutex_init
__napi_alloc_skb
__napi_schedule
__napi_schedule_irqoff
__netdev_alloc_skb
__netlink_kernel_create
__nlmsg_put
@ -145,6 +146,8 @@
__tasklet_schedule
__trace_bprintk
__tracepoint_android_vh_is_fpsimd_save
__tracepoint_android_vh_kfree_skb
__tracepoint_android_vh_ptype_head
__tracepoint_device_pm_callback_end
__tracepoint_device_pm_callback_start
__tracepoint_pelt_cfs_tp
@ -415,6 +418,8 @@
cpufreq_table_index_unsorted
cpufreq_unregister_driver
cpuhp_tasks_frozen
cpuidle_pause_and_lock
cpuidle_resume_and_unlock
cpumask_next
cpumask_next_and
cpus_read_lock
@ -797,6 +802,7 @@
drm_dp_update_payload_part1
drm_dp_update_payload_part2
drm_edid_duplicate
drm_edid_get_monitor_name
drm_encoder_cleanup
drm_encoder_init
drm_err
@ -853,6 +859,7 @@
drm_mode_create
drm_mode_create_dp_colorspace_property
drm_mode_debug_printmodeline
drm_mode_destroy
drm_mode_duplicate
drm_mode_equal
drm_mode_object_find
@ -987,6 +994,7 @@
get_cpu_device
get_cpu_idle_time
get_device
get_options
get_pid_task
get_random_bytes
get_random_u32
@ -1041,6 +1049,8 @@
gpiod_set_value
gpiod_set_value_cansleep
gpiod_to_irq
gro_find_complete_by_type
gro_find_receive_by_type
gs_alloc_req
gs_free_req
gserial_alloc_line
@ -1131,6 +1141,7 @@
iio_read_channel_processed
iio_read_channel_raw
import_iovec
in_aton
in_egroup_p
init_dummy_netdev
init_net
@ -1289,6 +1300,7 @@
kfree_call_rcu
kfree_const
kfree_skb
kfree_skb_partial
kill_fasync
kimage_vaddr
kimage_voffset
@ -2022,6 +2034,7 @@
smp_call_function
smp_call_function_many
smp_call_function_single
smp_call_function_single_async
smp_call_on_cpu
snd_card_free
snd_card_new

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
# commonly used symbols
__alloc_disk_node
alloc_etherdev_mqs

View file

@ -1,6 +1,5 @@
[abi_whitelist]
[abi_symbol_list]
# commonly used symbols
add_uevent_var
alloc_chrdev_region
__alloc_disk_node
__alloc_pages_nodemask
@ -89,11 +88,9 @@
device_property_present
device_property_read_string
device_property_read_u32_array
device_register
device_release_driver
device_remove_file
device_set_wakeup_capable
device_unregister
device_wakeup_enable
_dev_info
devm_clk_get
@ -172,7 +169,6 @@
free_irq
__free_pages
free_pages
fwnode_property_present
get_device
__get_free_pages
get_random_bytes
@ -203,7 +199,6 @@
irq_of_parse_and_map
irq_set_irq_wake
jiffies
jiffies_to_msecs
kfree
kfree_const
kfree_skb
@ -213,7 +208,6 @@
kmalloc_order_trace
kmem_cache_alloc_trace
kmemdup
kstrtobool
kstrtoint
kstrtouint
kstrtoull
@ -462,6 +456,8 @@
usb_hub_clear_tt_buffer
usb_put_hcd
usb_remove_hcd
usb_role_switch_register
usb_role_switch_unregister
usb_root_hub_lost_power
__usecs_to_jiffies
usleep_range
@ -700,6 +696,12 @@
# required by hi655x-regulator.ko
regulator_list_voltage_linear
# required by hisi_hikey_usb.ko
usb_role_switch_get
usb_role_switch_get_role
usb_role_switch_put
usb_role_switch_set_role
# required by hisi_powerkey.ko
devm_input_allocate_device
devm_request_any_context_irq
@ -716,6 +718,8 @@
# required by hwmon.ko
__class_register
class_unregister
device_register
device_unregister
kstrtoll
strpbrk
@ -1058,6 +1062,7 @@
spi_sync_locked
# required by nvme-core.ko
add_uevent_var
blk_freeze_queue_start
blk_mq_alloc_request
blk_mq_alloc_request_hctx
@ -1161,6 +1166,7 @@
kmem_cache_create
kmem_cache_destroy
kstrndup
kstrtobool
kstrtou16
mempool_alloc_slab
mempool_create
@ -1211,15 +1217,6 @@
rfkill_register
rfkill_unregister
# required by roles.ko
class_find_device
device_connection_find_match
device_match_fwnode
device_match_name
fwnode_connection_find_match
fwnode_get_parent
__sysfs_match_string
# required by rtc-efi.ko
devm_rtc_device_register
efi
@ -1291,54 +1288,18 @@
# required by tcpci.ko
device_get_named_child_node
tcpm_cc_change
tcpm_pd_hard_reset
tcpm_pd_receive
tcpm_pd_transmit_complete
tcpm_register_port
tcpm_tcpc_reset
tcpm_unregister_port
tcpm_vbus_change
# required by tcpci_rt1711h.ko
i2c_smbus_read_word_data
# required by tcpm.ko
devm_power_supply_register
fwnode_property_read_string
fwnode_property_read_u32_array
power_supply_changed
power_supply_get_drvdata
typec_altmode_attention
typec_altmode_notify
typec_altmode_update_active
typec_altmode_vdm
typec_find_port_data_role
typec_find_port_power_role
typec_find_power_role
typec_get_drvdata
typec_match_altmode
typec_partner_register_altmode
typec_partner_set_identity
typec_port_register_altmode
typec_register_partner
typec_register_port
typec_set_data_role
typec_set_mode
typec_set_orientation
typec_set_pwr_opmode
typec_set_pwr_role
typec_set_vconn_role
typec_unregister_altmode
typec_unregister_partner
typec_unregister_port
# required by ufs-hisi.ko
devm_platform_ioremap_resource
ufshcd_dme_get_attr
ufshcd_dme_set_attr
ufshcd_get_pwr_dev_param
ufshcd_pltfrm_init
ufshcd_pltfrm_resume
ufshcd_pltfrm_runtime_idle
ufshcd_pltfrm_runtime_resume
ufshcd_pltfrm_runtime_suspend
ufshcd_pltfrm_shutdown
ufshcd_pltfrm_suspend
ufshcd_remove
# required by wl18xx.ko
__cfg80211_alloc_event_skb
__cfg80211_send_event_skb
@ -1388,6 +1349,7 @@
ieee80211_unregister_hw
ieee80211_wake_queue
ieee80211_wake_queues
jiffies_to_msecs
jiffies_to_usecs
__local_bh_enable_ip
__netdev_alloc_skb

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
# commonly used symbols
add_timer
alloc_chrdev_region

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
# commonly used symbols
alloc_workqueue
__arch_copy_from_user

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
add_device_randomness
add_timer
add_timer_on

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
# commonly used symbols
pinctrl_get
pinctrl_gpio_set_config

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
# commonly used symbols
add_timer
add_uevent_var

View file

@ -1,4 +1,4 @@
[abi_whitelist]
[abi_symbol_list]
add_device_randomness
add_timer
add_uevent_var

View file

@ -1,3 +1,3 @@
[abi_whitelist]
[abi_symbol_list]
# b/167230325
ehci_handshake

View file

@ -654,12 +654,23 @@
status = "ok"
compatible = "adi,adv7533";
reg = <0x39>;
v1p2-supply = <&ldo3>;
vdd-supply = <&ldo3>;
interrupt-parent = <&gpio1>;
interrupts = <1 2>;
pd-gpio = <&gpio5 1 0>;
sel-gpio = <&gpio2 4 0>;
adi,dsi-lanes = <4>;
adi,disable-timing-generator;
#sound-dai-cells = <0>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
adv7533_in: endpoint@0 {
remote-endpoint = <&dsi_out0>;
};
};
port@1 {
reg = <1>;

View file

@ -446,26 +446,6 @@
pinctrl-0 = <&i2c1_pmx_func &i2c1_cfg_func>;
status = "ok"
adv7533: adv7533@39 {
status = "ok"
compatible = "adi,adv7533";
reg = <0x39>;
v1p2-supply = <&ldo3>;
vdd-supply = <&ldo3>;
interrupt-parent = <&gpio1>;
interrupts = <1 2>;
pd-gpio = <&gpio5 1 0>;
sel-gpio = <&gpio2 4 0>;
adi,dsi-lanes = <4>;
adi,disable-timing-generator;
#sound-dai-cells = <0>;
port {
adv7533_in: endpoint {
remote-endpoint = <&dsi_out0>;
};
};
};
};
i2c3: i2c@fdf0c000 {

View file

@ -221,7 +221,6 @@ CONFIG_BT_HCIUART_BCM=y
CONFIG_BT_HCIUART_QCA=y
CONFIG_CFG80211=y
# CONFIG_CFG80211_DEFAULT_PS is not set
# CONFIG_CFG80211_CRDA_SUPPORT is not set
CONFIG_MAC80211=y
CONFIG_RFKILL=y
CONFIG_PCI=y

View file

@ -4,7 +4,6 @@ CONFIG_CONNECTOR=m
CONFIG_BLK_DEV_NVME=m
CONFIG_NVME_TARGET=m
CONFIG_HISI_HIKEY_USB=m
CONFIG_SCSI_UFS_HISI=m
CONFIG_WLAN_VENDOR_TI=y
CONFIG_WL18XX=m
CONFIG_WLCORE_SDIO=m
@ -37,7 +36,6 @@ CONFIG_USB_OHCI_HCD=m
CONFIG_USB_OHCI_HCD_PLATFORM=m
CONFIG_USB_DWC3=m
CONFIG_USB_GADGETFS=m
CONFIG_TYPEC_TCPM=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_RT1711H=m
CONFIG_MMC_BLOCK=m

View file

@ -55,6 +55,7 @@
#include <asm/pointer_auth.h>
#include <asm/scs.h>
#include <asm/stacktrace.h>
#include <trace/hooks/minidump.h>
#if defined(CONFIG_STACKPROTECTOR) && !defined(CONFIG_STACKPROTECTOR_PER_TASK)
#include <linux/stackprotector.h>
@ -264,6 +265,7 @@ void __show_regs(struct pt_regs *regs)
top_reg = 29;
}
trace_android_vh_show_regs(regs);
show_regs_print_info(KERN_DEFAULT);
print_pstate(regs);

View file

@ -17,6 +17,7 @@
#include <trace/hooks/fpsimd.h>
#include <trace/hooks/topology.h>
#include <trace/hooks/debug.h>
#include <trace/hooks/minidump.h>
/*
* Export tracepoints that act as a bare tracehook (ie: have no trace event
@ -56,3 +57,4 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alter_futex_plist_add);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_is_fpsimd_save);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ipi_stop);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_printk_store);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_show_regs);

View file

@ -2,6 +2,8 @@
#ifndef __LINUX_KCONFIG_H
#define __LINUX_KCONFIG_H
/* CONFIG_CC_VERSION_TEXT (Do not delete this comment. See help in Kconfig) */
#include <generated/autoconf.h>
#ifdef CONFIG_CPU_BIG_ENDIAN

View file

@ -0,0 +1,24 @@
/* SPDX-License-Identifier: GPL-2.0 */
#undef TRACE_SYSTEM
#define TRACE_SYSTEM minidump
#define TRACE_INCLUDE_PATH trace/hooks
#if !defined(_TRACE_HOOK_MINIDUMP_H) || defined(TRACE_HEADER_MULTI_READ)
#define _TRACE_HOOK_MINIDUMP_H
#include <linux/tracepoint.h>
#include <trace/hooks/vendor_hooks.h>
#if defined(CONFIG_TRACEPOINTS) && defined(CONFIG_ANDROID_VENDOR_HOOKS)
struct pt_regs;
DECLARE_HOOK(android_vh_show_regs,
TP_PROTO(struct pt_regs *regs),
TP_ARGS(regs));
#else
#define trace_android_vh_show_regs(regs)
#endif
#endif /* _TRACE_HOOK_MINIDUMP_H */
/* This part must be outside protection */
#include <trace/define_trace.h>

View file

@ -9,6 +9,23 @@ config DEFCONFIG_LIST
default ARCH_DEFCONFIG
default "arch/$(ARCH)/defconfig"
config CC_VERSION_TEXT
string
default "$(CC_VERSION_TEXT)"
help
This is used in unclear ways:
- Re-run Kconfig when the compiler is updated
The 'default' property references the environment variable,
CC_VERSION_TEXT so it is recorded in include/config/auto.conf.cmd.
When the compiler is updated, Kconfig will be invoked.
- Ensure full rebuild when the compier is updated
include/linux/kconfig.h contains this option in the comment line so
fixdep adds include/config/cc/version/text.h into the auto-generated
dependency. When the compiler is updated, syncconfig will touch it
and then every file will be rebuilt.
config CC_IS_GCC
def_bool $(success,$(CC) --version | head -n 1 | grep -q gcc)

View file

@ -35,4 +35,4 @@ include/generated/compile.h: FORCE
@$($(quiet)chk_compile.h)
$(Q)$(CONFIG_SHELL) $(srctree)/scripts/mkcompile_h $@ \
"$(UTS_MACHINE)" "$(CONFIG_SMP)" "$(CONFIG_PREEMPT)" \
"$(CONFIG_PREEMPT_RT)" "$(CC) $(KBUILD_CFLAGS)" "$(LD)"
"$(CONFIG_PREEMPT_RT)" $(CONFIG_CC_VERSION_TEXT) "$(LD)"

View file

@ -159,6 +159,26 @@ static unsigned long kallsyms_sym_address(int idx)
return kallsyms_relative_base - 1 - kallsyms_offsets[idx];
}
#if defined(CONFIG_CFI_CLANG) && defined(CONFIG_THINLTO)
/*
* LLVM appends a hash to static function names when ThinLTO and CFI are
* both enabled, which causes confusion and potentially breaks user space
* tools, so we will strip the postfix from expanded symbol names.
*/
static inline char *cleanup_symbol_name(char *s)
{
char *res = NULL;
res = strrchr(s, '$');
if (res)
*res = '\0';
return res;
}
#else
static inline char *cleanup_symbol_name(char *s) { return NULL; }
#endif
/* Lookup the address for this symbol. Returns 0 if not found. */
unsigned long kallsyms_lookup_name(const char *name)
{
@ -171,6 +191,9 @@ unsigned long kallsyms_lookup_name(const char *name)
if (strcmp(namebuf, name) == 0)
return kallsyms_sym_address(i);
if (cleanup_symbol_name(namebuf) && strcmp(namebuf, name) == 0)
return kallsyms_sym_address(i);
}
return module_kallsyms_lookup_name(name);
}
@ -269,24 +292,6 @@ int kallsyms_lookup_size_offset(unsigned long addr, unsigned long *symbolsize,
!!__bpf_address_lookup(addr, symbolsize, offset, namebuf);
}
#if defined(CONFIG_CFI_CLANG) && defined(CONFIG_THINLTO)
/*
* LLVM appends a hash to static function names when ThinLTO and CFI are
* both enabled, which causes confusion and potentially breaks user space
* tools, so we will strip the postfix from expanded symbol names.
*/
static inline void cleanup_symbol_name(char *s)
{
char *res;
res = strrchr(s, '$');
if (res)
*res = '\0';
}
#else
static inline void cleanup_symbol_name(char *s) {}
#endif
/*
* Lookup an address
* - modname is set to NULL if it's in the kernel.

View file

@ -6,7 +6,7 @@ ARCH=$2
SMP=$3
PREEMPT=$4
PREEMPT_RT=$5
CC=$6
CC_VERSION="$6"
LD=$7
vecho() { [ "${quiet}" = "silent_" ] || echo "$@" ; }
@ -75,7 +75,6 @@ UTS_TRUNCATE="cut -b -$UTS_LEN"
echo \#define LINUX_COMPILE_BY \"`echo $LINUX_COMPILE_BY | $UTS_TRUNCATE`\"
echo \#define LINUX_COMPILE_HOST \"`echo $LINUX_COMPILE_HOST | $UTS_TRUNCATE`\"
CC_VERSION=$($CC -v 2>&1 | grep ' version ' | sed 's/[[:space:]]*$//')
LD_VERSION=$($LD -v | head -n1 | sed 's/(compatible with [^)]*)//' \
| sed 's/[[:space:]]*$//')
printf '#define LINUX_COMPILER "%s"\n' "$CC_VERSION, $LD_VERSION"