Unverified Commit 559c0839 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!15464 [openEuler-24.03-LTS][linux-6.6.y sync] Backport 6.6.72-6.6.75 LTS Patches

Merge Pull Request from: @wenzhiwei11 
 
git log --oneline v6.6.72..v6.6.75 | wc -l
119
80+11+2+5+21

kabi error(11):
gtp: Destroy device along with udp socket's netns dismantle. 
gtp: Use for_each_netdev_rcu() in gtp_genl_dump_pdp(). 
gtp: use exit_batch_rtnl() method 
net: add exit_batch_rtnl() method 
selftests: tc-testing: reduce rshift value 
scsi: ufs: core: Honor runtime/system PM levels if set by host controller drivers
cachefiles: Parse the "secctx" immediately
kheaders: Ignore silly-rename files
fs: fix missing declaration of init_files
hfs: Sanity check the root record
mac802154: check local interfaces before deleting sdata list

compile error(2):
shmem: Fix shmem_rename2()
RDMA/bnxt_re: Avoid CPU lockups due fifo occupancy check loop

conflicts(5):
libfs: Fix simple_offset_rename_exchange()
libfs: Return ENOSPC when the directory offset range is exhausted
Revert "libfs: Add simple_offset_empty()"
libfs: Replace simple_offset end-of-directory detection
libfs: Use d_children list to iterate simple_offset directories

merged(21):
iomap: avoid avoid truncating 64-bit offset to 32 bits
vsock/bpf: return early if transport is not assigned
fs/proc: fix softlockup in __read_vmcore (part 2)
gpio: xilinx: Convert gpio_lock to raw spinlock
pmdomain: imx8mp-blk-ctrl: add missing loop break condition
irqchip/gic-v3: Handle CPU_PM_ENTER_FAILED correctly
irqchip/gic-v3-its: Don't enable interrupts in its_irq_set_vcpu_affinity()
drm/amd/display: Fix out-of-bounds access in 'dcn21_link_encoder_create'
block: fix uaf for flush rq while iterating tags
net: fix data-races around sk->sk_forward_alloc
ata: libata-core: Set ATA_QCFLAG_RTF_FILLED in fill_result_tf()
gfs2: Truncate address space when flipping GFS2_DIF_JDATA flag
block: fix integer overflow in BLKSECDISCARD
ext4: fix access to uninitialised lock in fc replay path
ipv4: ip_tunnel: Fix suspicious RCU usage warning in ip_tunnel_find()
USB: serial: quatech2: fix null-ptr-deref in qt2_process_read_urb()
cpufreq: amd-pstate: add check for cpufreq_cpu_get's return value
ipv6: Fix soft lockups in fib6_select_path under high next hop churn
ibfs: Re-arrange locking in offset_iterate_dir()
libfs: Define a minimum directory offset
libfs: Add simple_offset_empty()
 
 
Link:https://gitee.com/openeuler/kernel/pulls/15464

 

Reviewed-by: default avatarZhang Peng <zhangpeng362@huawei.com>
Signed-off-by: default avatarZhang Peng <zhangpeng362@huawei.com>
parents 5a7f8ba9 44a809dd
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -217,7 +217,7 @@ static inline int write_user_shstk_64(u64 __user *addr, u64 val)

#define nop() asm volatile ("nop")

static inline void serialize(void)
static __always_inline void serialize(void)
{
	/* Instruction opcode for SERIALIZE; supported in binutils >= 2.35. */
	asm volatile(".byte 0xf, 0x1, 0xe8" ::: "memory");
+1 −1
Original line number Diff line number Diff line
@@ -221,7 +221,7 @@ SYM_CODE_END(xen_early_idt_handler_array)
	push %rax
	mov  $__HYPERVISOR_iret, %eax
	syscall		/* Do the IRET. */
#ifdef CONFIG_MITIGATION_SLS
#ifdef CONFIG_SLS
	int3
#endif
.endm
+3 −3
Original line number Diff line number Diff line
@@ -680,11 +680,11 @@ static bool acpi_dev_irq_override(u32 gsi, u8 triggering, u8 polarity,
	for (i = 0; i < ARRAY_SIZE(override_table); i++) {
		const struct irq_override_cmp *entry = &override_table[i];

		if (dmi_check_system(entry->system) &&
		    entry->irq == gsi &&
		if (entry->irq == gsi &&
		    entry->triggering == triggering &&
		    entry->polarity == polarity &&
		    entry->shareable == shareable)
		    entry->shareable == shareable &&
		    dmi_check_system(entry->system))
			return entry->override;
	}

+1 −0
Original line number Diff line number Diff line
@@ -1247,6 +1247,7 @@ static bool zram_meta_alloc(struct zram *zram, u64 disksize)
	zram->mem_pool = zs_create_pool(zram->disk->disk_name);
	if (!zram->mem_pool) {
		vfree(zram->table);
		zram->table = NULL;
		return false;
	}

+2 −43
Original line number Diff line number Diff line
@@ -3172,7 +3172,7 @@ static int amdgpu_device_ip_resume_phase1(struct amdgpu_device *adev)
 *
 * @adev: amdgpu_device pointer
 *
 * Second resume function for hardware IPs.  The list of all the hardware
 * First resume function for hardware IPs.  The list of all the hardware
 * IPs that make up the asic is walked and the resume callbacks are run for
 * all blocks except COMMON, GMC, and IH.  resume puts the hardware into a
 * functional state after a suspend and updates the software state as
@@ -3190,7 +3190,6 @@ static int amdgpu_device_ip_resume_phase2(struct amdgpu_device *adev)
		if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON ||
		    adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC ||
		    adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH ||
		    adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_DCE ||
		    adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP)
			continue;
		r = adev->ip_blocks[i].version->funcs->resume(adev);
@@ -3205,36 +3204,6 @@ static int amdgpu_device_ip_resume_phase2(struct amdgpu_device *adev)
	return 0;
}

/**
 * amdgpu_device_ip_resume_phase3 - run resume for hardware IPs
 *
 * @adev: amdgpu_device pointer
 *
 * Third resume function for hardware IPs.  The list of all the hardware
 * IPs that make up the asic is walked and the resume callbacks are run for
 * all DCE.  resume puts the hardware into a functional state after a suspend
 * and updates the software state as necessary.  This function is also used
 * for restoring the GPU after a GPU reset.
 *
 * Returns 0 on success, negative error code on failure.
 */
static int amdgpu_device_ip_resume_phase3(struct amdgpu_device *adev)
{
	int i, r;

	for (i = 0; i < adev->num_ip_blocks; i++) {
		if (!adev->ip_blocks[i].status.valid || adev->ip_blocks[i].status.hw)
			continue;
		if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_DCE) {
			r = adev->ip_blocks[i].version->funcs->resume(adev);
			if (r)
				return r;
		}
	}

	return 0;
}

/**
 * amdgpu_device_ip_resume - run resume for hardware IPs
 *
@@ -3261,13 +3230,6 @@ static int amdgpu_device_ip_resume(struct amdgpu_device *adev)

	r = amdgpu_device_ip_resume_phase2(adev);

	if (r)
		return r;

	amdgpu_fence_driver_hw_init(adev);

	r = amdgpu_device_ip_resume_phase3(adev);

	return r;
}

@@ -4267,6 +4229,7 @@ int amdgpu_device_resume(struct drm_device *dev, bool fbcon)
		dev_err(adev->dev, "amdgpu_device_ip_resume failed (%d).\n", r);
		goto exit;
	}
	amdgpu_fence_driver_hw_init(adev);

	r = amdgpu_device_ip_late_init(adev);
	if (r)
@@ -5043,10 +5006,6 @@ int amdgpu_do_asic_reset(struct list_head *device_list_handle,
				if (r)
					goto out;

				r = amdgpu_device_ip_resume_phase3(tmp_adev);
				if (r)
					goto out;

				if (vram_lost)
					amdgpu_device_fill_reset_magic(tmp_adev);

Loading