Merge 6.12.18 into android16-6.12
GKI (arm64) relevant 37 out of 149 changes, affecting 60 files +390/-338659bfea591scsi: ufs: core: Fix ufshcd_is_ufs_dev_busy() and ufshcd_eh_timed_out() [1 file, +4/-4]3594aad97eovl: fix UAF in ovl_dentry_update_reval by moving dput() in ovl_link_up [1 file, +1/-1]a3ae6a60baSUNRPC: Prevent looping due to rpc_signal_task() races [3 files, +2/-6]b5038504dascsi: core: Clear driver private data when retrying request [1 file, +7/-7]465a814323scsi: ufs: core: Set default runtime/system PM levels before ufshcd_hba_init() [1 file, +15/-15]ee5d6cb5ccALSA: usb-audio: Avoid dropping MIDI events at closing multiple ports [1 file, +1/-1]5c9921f1daBluetooth: L2CAP: Fix L2CAP_ECRED_CONN_RSP response [1 file, +7/-2]f22df335b2net: loopback: Avoid sending IP packets without an Ethernet header [1 file, +14/-0]915d64a78fnet: set the minimum for net_hotdata.netdev_budget_usecs [1 file, +2/-1]db8b2a613dipv4: Convert icmp_route_lookup() to dscp_t. [1 file, +9/-10]97c455c3c2ipv4: Convert ip_route_input() to dscp_t. [6 files, +18/-9]8ffd0390fcipvs: Always clear ipvs_property flag in skb_scrub_packet() [1 file, +1/-1]c417b1e4d8tcp: devmem: don't write truncated dmabuf CMSGs to userspace [3 files, +22/-16]33d782e38dtcp: Defer ts_recent changes until req is owned [1 file, +4/-6]902d576296net: Clear old fragment checksum value in napi_reuse_skb [1 file, +1/-0]806437d047thermal: gov_power_allocator: Fix incorrect calculation in divvy_up_power() [1 file, +1/-1]7d582eb6e4perf/core: Order the PMU list to fix warning about unordered pmu_ctx_list [1 file, +9/-2]13cca2b73euprobes: Reject the shared zeropage in uprobe_write_opcode() [1 file, +5/-0]07a82c78d8thermal: of: Simplify thermal_of_should_bind with scoped for each OF child [1 file, +2/-3]e11df3bffdthermal/of: Fix cdev lookup in thermal_of_should_bind() [1 file, +29/-21]19cd2dc4d4thermal: core: Move lists of thermal instances to trip descriptors [7 files, +62/-64]27a144c3bethermal: gov_power_allocator: Update total_weight on bind and cdev updates [1 file, +22/-8]546c19eb69io_uring/net: save msg_control for compat [1 file, +3/-1]8cc451444cunreachable: Unify [2 files, +7/-15]2cfd0e5084objtool: Remove annotate_{,un}reachable() [2 files, +2/-68]a00e900c9bobjtool: Fix C jump table annotations for Clang [3 files, +6/-5]435d2964aftracing: Fix bad hist from corrupting named_triggers list [1 file, +15/-15]8e31d9fb2fALSA: usb-audio: Re-add sample rate quirk for Pioneer DJM-900NXS2 [1 file, +1/-0]b9de147b2cKVM: arm64: Ensure a VMID is allocated before programming VTTBR_EL2 [3 files, +14/-21]a2475ccad6perf/core: Add RCU read lock protection to perf_iterate_ctx() [1 file, +2/-1]322cb23e24perf/core: Fix low freq setting via IOC_PERIOD [1 file, +9/-8]8f6369c3cdarm64/mm: Fix Boot panic on Ampere Altra [1 file, +1/-6]2f572c42bbblock: Remove zone write plugs when handling native zone append writes [2 files, +73/-10]29b6d5ad3ercuref: Plug slowpath race in rcuref_put() [2 files, +8/-6]0362847c52sched/core: Prevent rescheduling when interrupts are disabled [1 file, +1/-1]59455f968cscsi: ufs: core: bsg: Fix crash when arpmb command fails [1 file, +4/-2]72cbaf8b41thermal: gov_power_allocator: Add missing NULL pointer check [1 file, +6/-1] Changes in 6.12.18 RDMA/mlx5: Fix the recovery flow of the UMR QP IB/mlx5: Set and get correct qp_num for a DCT QP RDMA/mlx5: Fix a race for DMABUF MR which can lead to CQE with error RDMA/mlx5: Fix a WARN during dereg_mr for DM type RDMA/mana_ib: Allocate PAGE aligned doorbell index RDMA/hns: Fix mbox timing out by adding retry mechanism RDMA/bnxt_re: Fail probe early when not enough MSI-x vectors are reserved RDMA/bnxt_re: Refactor NQ allocation RDMA/bnxt_re: Cache MSIx info to a local structure RDMA/bnxt_re: Add sanity checks on rdev validity RDMA/bnxt_re: Allocate dev_attr information dynamically RDMA/bnxt_re: Fix the statistics for Gen P7 VF landlock: Fix non-TCP sockets restriction scsi: ufs: core: Fix ufshcd_is_ufs_dev_busy() and ufshcd_eh_timed_out() ovl: fix UAF in ovl_dentry_update_reval by moving dput() in ovl_link_up NFS: O_DIRECT writes must check and adjust the file length NFS: Adjust delegated timestamps for O_DIRECT reads and writes SUNRPC: Prevent looping due to rpc_signal_task() races NFSv4: Fix a deadlock when recovering state on a sillyrenamed file SUNRPC: Handle -ETIMEDOUT return from tlshd RDMA/mlx5: Fix implicit ODP hang on parent deregistration RDMA/mlx5: Fix AH static rate parsing scsi: core: Clear driver private data when retrying request scsi: ufs: core: Set default runtime/system PM levels before ufshcd_hba_init() RDMA/mlx5: Fix bind QP error cleanup flow RDMA/bnxt_re: Fix the page details for the srq created by kernel consumers sunrpc: suppress warnings for unused procfs functions ALSA: usb-audio: Avoid dropping MIDI events at closing multiple ports Bluetooth: L2CAP: Fix L2CAP_ECRED_CONN_RSP response rxrpc: rxperf: Fix missing decoding of terminal magic cookie afs: Fix the server_list to unuse a displaced server rather than putting it afs: Give an afs_server object a ref on the afs_cell object it points to net: loopback: Avoid sending IP packets without an Ethernet header net: set the minimum for net_hotdata.netdev_budget_usecs ipv4: Convert icmp_route_lookup() to dscp_t. ipv4: Convert ip_route_input() to dscp_t. ipvlan: Prepare ipvlan_process_v4_outbound() to future .flowi4_tos conversion. ipvlan: ensure network headers are in skb linear part net: cadence: macb: Synchronize stats calculations net: dsa: rtl8366rb: Fix compilation problem ASoC: es8328: fix route from DAC to output ASoC: fsl: Rename stream name of SAI DAI driver ipvs: Always clear ipvs_property flag in skb_scrub_packet() drm/xe/oa: Signal output fences drm/xe/oa: Move functions up so they can be reused for config ioctl drm/xe/oa: Add syncs support to OA config ioctl drm/xe/oa: Allow only certain property changes from config drm/xe/oa: Allow oa_exponent value of 0 firmware: cs_dsp: Remove async regmap writes ASoC: cs35l56: Prevent races when soft-resetting using SPI control ALSA: hda/realtek: Fix wrong mic setup for ASUS VivoBook 15 net: ethernet: ti: am65-cpsw: select PAGE_POOL tcp: devmem: don't write truncated dmabuf CMSGs to userspace ice: add E830 HW VF mailbox message limit support ice: Fix deinitializing VF in error path ice: Avoid setting default Rx VSI twice in switchdev setup tcp: Defer ts_recent changes until req is owned net: Clear old fragment checksum value in napi_reuse_skb net: mvpp2: cls: Fixed Non IP flow, with vlan tag flow defination. net/mlx5: IRQ, Fix null string in debug print net: ipv6: fix dst ref loop on input in seg6 lwt net: ipv6: fix dst ref loop on input in rpl lwt selftests: drv-net: Check if combined-count exists idpf: fix checksums set in idpf_rx_rsc() net: ti: icss-iep: Reject perout generation request thermal: gov_power_allocator: Fix incorrect calculation in divvy_up_power() perf/core: Order the PMU list to fix warning about unordered pmu_ctx_list uprobes: Reject the shared zeropage in uprobe_write_opcode() thermal: of: Simplify thermal_of_should_bind with scoped for each OF child thermal/of: Fix cdev lookup in thermal_of_should_bind() thermal: core: Move lists of thermal instances to trip descriptors thermal: gov_power_allocator: Update total_weight on bind and cdev updates io_uring/net: save msg_control for compat unreachable: Unify objtool: Remove annotate_{,un}reachable() objtool: Fix C jump table annotations for Clang x86/CPU: Fix warm boot hang regression on AMD SC1100 SoC systems phy: rockchip: fix Kconfig dependency more phy: rockchip: naneng-combphy: compatible reset with old DT riscv: KVM: Fix hart suspend status check riscv: KVM: Fix hart suspend_type use riscv: KVM: Fix SBI IPI error generation riscv: KVM: Fix SBI TIME error generation tracing: Fix bad hist from corrupting named_triggers list ftrace: Avoid potential division by zero in function_stat_show() ALSA: usb-audio: Re-add sample rate quirk for Pioneer DJM-900NXS2 ALSA: hda/realtek: Fix microphone regression on ASUS N705UD KVM: arm64: Ensure a VMID is allocated before programming VTTBR_EL2 perf/core: Add RCU read lock protection to perf_iterate_ctx() perf/x86: Fix low freqency setting issue perf/core: Fix low freq setting via IOC_PERIOD drm/xe/regs: remove a duplicate definition for RING_CTL_SIZE(size) drm/xe/userptr: restore invalidation list on error drm/xe/userptr: fix EFAULT handling drm/amdkfd: Preserve cp_hqd_pq_control on update_mqd drm/amdgpu: disable BAR resize on Dell G5 SE drm/amdgpu: init return value in amdgpu_ttm_clear_buffer drm/amd/display: Disable PSR-SU on eDP panels drm/amd/display: add a quirk to enable eDP0 on DP1 drm/amd/display: Fix HPD after gpu reset arm64/mm: Fix Boot panic on Ampere Altra block: Remove zone write plugs when handling native zone append writes i2c: npcm: disable interrupt enable bit before devm_request_irq i2c: ls2x: Fix frequency division register access usbnet: gl620a: fix endpoint checking in genelink_bind() net: stmmac: dwmac-loongson: Add fix_soc_reset() callback net: phy: qcom: qca807x fix condition for DAC_DSP_BIAS_CURRENT net: enetc: fix the off-by-one issue in enetc_map_tx_buffs() net: enetc: keep track of correct Tx BD count in enetc_map_tx_tso_buffs() net: enetc: VFs do not support HWTSTAMP_TX_ONESTEP_SYNC net: enetc: update UDP checksum when updating originTimestamp field net: enetc: correct the xdp_tx statistics net: enetc: fix the off-by-one issue in enetc_map_tx_tso_buffs() phy: tegra: xusb: reset VBUS & ID OVERRIDE phy: exynos5-usbdrd: fix MPLL_MULTIPLIER and SSC_REFCLKSEL masks in refclk phy: exynos5-usbdrd: gs101: ensure power is gated to SS phy in phy_exit() iommu/vt-d: Remove device comparison in context_setup_pass_through_cb iommu/vt-d: Fix suspicious RCU usage intel_idle: Handle older CPUs, which stop the TSC in deeper C states, correctly mptcp: always handle address removal under msk socket lock mptcp: reset when MPTCP opts are dropped after join selftests/landlock: Test that MPTCP actions are not restricted vmlinux.lds: Ensure that const vars with relocations are mapped R/O rcuref: Plug slowpath race in rcuref_put() sched/core: Prevent rescheduling when interrupts are disabled sched_ext: Fix pick_task_scx() picking non-queued tasks when it's called without balance() selftests/landlock: Test TCP accesses with protocol=IPPROTO_TCP dm-integrity: Avoid divide by zero in table status in Inline mode dm vdo: add missing spin_lock_init ima: Reset IMA_NONACTION_RULE_FLAGS after post_setattr scsi: ufs: core: bsg: Fix crash when arpmb command fails rseq/selftests: Fix riscv rseq_offset_deref_addv inline asm riscv/futex: sign extend compare value in atomic cmpxchg riscv: signal: fix signal frame size riscv: cacheinfo: Use of_property_present() for non-boolean properties riscv: signal: fix signal_minsigstksz riscv: cpufeature: use bitmap_equal() instead of memcmp() efi: Don't map the entire mokvar table to determine its size amdgpu/pm/legacy: fix suspend/resume issues x86/microcode/AMD: Return bool from find_blobs_in_containers() x86/microcode/AMD: Have __apply_microcode_amd() return bool x86/microcode/AMD: Remove ugly linebreak in __verify_patch_section() signature x86/microcode/AMD: Remove unused save_microcode_in_initrd_amd() declarations x86/microcode/AMD: Merge early_apply_microcode() into its single callsite x86/microcode/AMD: Get rid of the _load_microcode_amd() forward declaration x86/microcode/AMD: Add get_patch_level() x86/microcode/AMD: Load only SHA256-checksummed patches thermal: gov_power_allocator: Add missing NULL pointer check Linux 6.12.18 Change-Id: Id06a9c751e3315bfd1a6e642b2c0f276edb46319 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
+6
-44
@@ -639,47 +639,8 @@ static int add_dead_ends(struct objtool_file *file)
|
||||
uint64_t offset;
|
||||
|
||||
/*
|
||||
* Check for manually annotated dead ends.
|
||||
*/
|
||||
rsec = find_section_by_name(file->elf, ".rela.discard.unreachable");
|
||||
if (!rsec)
|
||||
goto reachable;
|
||||
|
||||
for_each_reloc(rsec, reloc) {
|
||||
if (reloc->sym->type == STT_SECTION) {
|
||||
offset = reloc_addend(reloc);
|
||||
} else if (reloc->sym->local_label) {
|
||||
offset = reloc->sym->offset;
|
||||
} else {
|
||||
WARN("unexpected relocation symbol type in %s", rsec->name);
|
||||
return -1;
|
||||
}
|
||||
|
||||
insn = find_insn(file, reloc->sym->sec, offset);
|
||||
if (insn)
|
||||
insn = prev_insn_same_sec(file, insn);
|
||||
else if (offset == reloc->sym->sec->sh.sh_size) {
|
||||
insn = find_last_insn(file, reloc->sym->sec);
|
||||
if (!insn) {
|
||||
WARN("can't find unreachable insn at %s+0x%" PRIx64,
|
||||
reloc->sym->sec->name, offset);
|
||||
return -1;
|
||||
}
|
||||
} else {
|
||||
WARN("can't find unreachable insn at %s+0x%" PRIx64,
|
||||
reloc->sym->sec->name, offset);
|
||||
return -1;
|
||||
}
|
||||
|
||||
insn->dead_end = true;
|
||||
}
|
||||
|
||||
reachable:
|
||||
/*
|
||||
* These manually annotated reachable checks are needed for GCC 4.4,
|
||||
* where the Linux unreachable() macro isn't supported. In that case
|
||||
* GCC doesn't know the "ud2" is fatal, so it generates code as if it's
|
||||
* not a dead end.
|
||||
* UD2 defaults to being a dead-end, allow them to be annotated for
|
||||
* non-fatal, eg WARN.
|
||||
*/
|
||||
rsec = find_section_by_name(file->elf, ".rela.discard.reachable");
|
||||
if (!rsec)
|
||||
@@ -2628,13 +2589,14 @@ static void mark_rodata(struct objtool_file *file)
|
||||
*
|
||||
* - .rodata: can contain GCC switch tables
|
||||
* - .rodata.<func>: same, if -fdata-sections is being used
|
||||
* - .rodata..c_jump_table: contains C annotated jump tables
|
||||
* - .data.rel.ro.c_jump_table: contains C annotated jump tables
|
||||
*
|
||||
* .rodata.str1.* sections are ignored; they don't contain jump tables.
|
||||
*/
|
||||
for_each_sec(file, sec) {
|
||||
if (!strncmp(sec->name, ".rodata", 7) &&
|
||||
!strstr(sec->name, ".str1.")) {
|
||||
if ((!strncmp(sec->name, ".rodata", 7) &&
|
||||
!strstr(sec->name, ".str1.")) ||
|
||||
!strncmp(sec->name, ".data.rel.ro", 12)) {
|
||||
sec->rodata = true;
|
||||
found = true;
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
#include <objtool/check.h>
|
||||
#include <objtool/elf.h>
|
||||
|
||||
#define C_JUMP_TABLE_SECTION ".rodata..c_jump_table"
|
||||
#define C_JUMP_TABLE_SECTION ".data.rel.ro.c_jump_table"
|
||||
|
||||
struct special_alt {
|
||||
struct list_head list;
|
||||
|
||||
Reference in New Issue
Block a user