public inbox for stable@vger.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	patches@lists.linux.dev, Zicheng Qu <quzicheng@huawei.com>,
	Christian Brauner <brauner@kernel.org>
Subject: [PATCH 6.1 080/176] acct: perform last write from workqueue
Date: Wed,  5 Mar 2025 18:47:29 +0100	[thread overview]
Message-ID: <20250305174508.678307402@linuxfoundation.org> (raw)
In-Reply-To: <20250305174505.437358097@linuxfoundation.org>

6.1-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Christian Brauner <brauner@kernel.org>

commit 56d5f3eba3f5de0efdd556de4ef381e109b973a9 upstream.

In [1] it was reported that the acct(2) system call can be used to
trigger NULL deref in cases where it is set to write to a file that
triggers an internal lookup. This can e.g., happen when pointing acc(2)
to /sys/power/resume. At the point the where the write to this file
happens the calling task has already exited and called exit_fs(). A
lookup will thus trigger a NULL-deref when accessing current->fs.

Reorganize the code so that the the final write happens from the
workqueue but with the caller's credentials. This preserves the
(strange) permission model and has almost no regression risk.

This api should stop to exist though.

Link: https://lore.kernel.org/r/20250127091811.3183623-1-quzicheng@huawei.com [1]
Link: https://lore.kernel.org/r/20250211-work-acct-v1-1-1c16aecab8b3@kernel.org
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Reported-by: Zicheng Qu <quzicheng@huawei.com>
Cc: stable@vger.kernel.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 kernel/acct.c |  120 +++++++++++++++++++++++++++++++++-------------------------
 1 file changed, 70 insertions(+), 50 deletions(-)

--- a/kernel/acct.c
+++ b/kernel/acct.c
@@ -104,48 +104,50 @@ struct bsd_acct_struct {
 	atomic_long_t		count;
 	struct rcu_head		rcu;
 	struct mutex		lock;
-	int			active;
+	bool			active;
+	bool			check_space;
 	unsigned long		needcheck;
 	struct file		*file;
 	struct pid_namespace	*ns;
 	struct work_struct	work;
 	struct completion	done;
+	acct_t			ac;
 };
 
-static void do_acct_process(struct bsd_acct_struct *acct);
+static void fill_ac(struct bsd_acct_struct *acct);
+static void acct_write_process(struct bsd_acct_struct *acct);
 
 /*
  * Check the amount of free space and suspend/resume accordingly.
  */
-static int check_free_space(struct bsd_acct_struct *acct)
+static bool check_free_space(struct bsd_acct_struct *acct)
 {
 	struct kstatfs sbuf;
 
-	if (time_is_after_jiffies(acct->needcheck))
-		goto out;
+	if (!acct->check_space)
+		return acct->active;
 
 	/* May block */
 	if (vfs_statfs(&acct->file->f_path, &sbuf))
-		goto out;
+		return acct->active;
 
 	if (acct->active) {
 		u64 suspend = sbuf.f_blocks * SUSPEND;
 		do_div(suspend, 100);
 		if (sbuf.f_bavail <= suspend) {
-			acct->active = 0;
+			acct->active = false;
 			pr_info("Process accounting paused\n");
 		}
 	} else {
 		u64 resume = sbuf.f_blocks * RESUME;
 		do_div(resume, 100);
 		if (sbuf.f_bavail >= resume) {
-			acct->active = 1;
+			acct->active = true;
 			pr_info("Process accounting resumed\n");
 		}
 	}
 
 	acct->needcheck = jiffies + ACCT_TIMEOUT*HZ;
-out:
 	return acct->active;
 }
 
@@ -190,7 +192,11 @@ static void acct_pin_kill(struct fs_pin
 {
 	struct bsd_acct_struct *acct = to_acct(pin);
 	mutex_lock(&acct->lock);
-	do_acct_process(acct);
+	/*
+	 * Fill the accounting struct with the exiting task's info
+	 * before punting to the workqueue.
+	 */
+	fill_ac(acct);
 	schedule_work(&acct->work);
 	wait_for_completion(&acct->done);
 	cmpxchg(&acct->ns->bacct, pin, NULL);
@@ -203,6 +209,9 @@ static void close_work(struct work_struc
 {
 	struct bsd_acct_struct *acct = container_of(work, struct bsd_acct_struct, work);
 	struct file *file = acct->file;
+
+	/* We were fired by acct_pin_kill() which holds acct->lock. */
+	acct_write_process(acct);
 	if (file->f_op->flush)
 		file->f_op->flush(file, NULL);
 	__fput_sync(file);
@@ -431,13 +440,27 @@ static u32 encode_float(u64 value)
  *  do_exit() or when switching to a different output file.
  */
 
-static void fill_ac(acct_t *ac)
+static void fill_ac(struct bsd_acct_struct *acct)
 {
 	struct pacct_struct *pacct = &current->signal->pacct;
+	struct file *file = acct->file;
+	acct_t *ac = &acct->ac;
 	u64 elapsed, run_time;
 	time64_t btime;
 	struct tty_struct *tty;
 
+	lockdep_assert_held(&acct->lock);
+
+	if (time_is_after_jiffies(acct->needcheck)) {
+		acct->check_space = false;
+
+		/* Don't fill in @ac if nothing will be written. */
+		if (!acct->active)
+			return;
+	} else {
+		acct->check_space = true;
+	}
+
 	/*
 	 * Fill the accounting struct with the needed info as recorded
 	 * by the different kernel functions.
@@ -485,64 +508,61 @@ static void fill_ac(acct_t *ac)
 	ac->ac_majflt = encode_comp_t(pacct->ac_majflt);
 	ac->ac_exitcode = pacct->ac_exitcode;
 	spin_unlock_irq(&current->sighand->siglock);
-}
-/*
- *  do_acct_process does all actual work. Caller holds the reference to file.
- */
-static void do_acct_process(struct bsd_acct_struct *acct)
-{
-	acct_t ac;
-	unsigned long flim;
-	const struct cred *orig_cred;
-	struct file *file = acct->file;
-
-	/*
-	 * Accounting records are not subject to resource limits.
-	 */
-	flim = rlimit(RLIMIT_FSIZE);
-	current->signal->rlim[RLIMIT_FSIZE].rlim_cur = RLIM_INFINITY;
-	/* Perform file operations on behalf of whoever enabled accounting */
-	orig_cred = override_creds(file->f_cred);
 
-	/*
-	 * First check to see if there is enough free_space to continue
-	 * the process accounting system.
-	 */
-	if (!check_free_space(acct))
-		goto out;
-
-	fill_ac(&ac);
 	/* we really need to bite the bullet and change layout */
-	ac.ac_uid = from_kuid_munged(file->f_cred->user_ns, orig_cred->uid);
-	ac.ac_gid = from_kgid_munged(file->f_cred->user_ns, orig_cred->gid);
+	ac->ac_uid = from_kuid_munged(file->f_cred->user_ns, current_uid());
+	ac->ac_gid = from_kgid_munged(file->f_cred->user_ns, current_gid());
 #if ACCT_VERSION == 1 || ACCT_VERSION == 2
 	/* backward-compatible 16 bit fields */
-	ac.ac_uid16 = ac.ac_uid;
-	ac.ac_gid16 = ac.ac_gid;
+	ac->ac_uid16 = ac->ac_uid;
+	ac->ac_gid16 = ac->ac_gid;
 #elif ACCT_VERSION == 3
 	{
 		struct pid_namespace *ns = acct->ns;
 
-		ac.ac_pid = task_tgid_nr_ns(current, ns);
+		ac->ac_pid = task_tgid_nr_ns(current, ns);
 		rcu_read_lock();
-		ac.ac_ppid = task_tgid_nr_ns(rcu_dereference(current->real_parent),
-					     ns);
+		ac->ac_ppid = task_tgid_nr_ns(rcu_dereference(current->real_parent), ns);
 		rcu_read_unlock();
 	}
 #endif
+}
+
+static void acct_write_process(struct bsd_acct_struct *acct)
+{
+	struct file *file = acct->file;
+	const struct cred *cred;
+	acct_t *ac = &acct->ac;
+
+	/* Perform file operations on behalf of whoever enabled accounting */
+	cred = override_creds(file->f_cred);
+
 	/*
-	 * Get freeze protection. If the fs is frozen, just skip the write
-	 * as we could deadlock the system otherwise.
+	 * First check to see if there is enough free_space to continue
+	 * the process accounting system. Then get freeze protection. If
+	 * the fs is frozen, just skip the write as we could deadlock
+	 * the system otherwise.
 	 */
-	if (file_start_write_trylock(file)) {
+	if (check_free_space(acct) && file_start_write_trylock(file)) {
 		/* it's been opened O_APPEND, so position is irrelevant */
 		loff_t pos = 0;
-		__kernel_write(file, &ac, sizeof(acct_t), &pos);
+		__kernel_write(file, ac, sizeof(acct_t), &pos);
 		file_end_write(file);
 	}
-out:
+
+	revert_creds(cred);
+}
+
+static void do_acct_process(struct bsd_acct_struct *acct)
+{
+	unsigned long flim;
+
+	/* Accounting records are not subject to resource limits. */
+	flim = rlimit(RLIMIT_FSIZE);
+	current->signal->rlim[RLIMIT_FSIZE].rlim_cur = RLIM_INFINITY;
+	fill_ac(acct);
+	acct_write_process(acct);
 	current->signal->rlim[RLIMIT_FSIZE].rlim_cur = flim;
-	revert_creds(orig_cred);
 }
 
 /**



  parent reply	other threads:[~2025-03-05 17:53 UTC|newest]

Thread overview: 185+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-05 17:46 [PATCH 6.1 000/176] 6.1.130-rc1 review Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 001/176] arm64: mte: Do not allow PROT_MTE on MAP_HUGETLB user mappings Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 002/176] md: use separate work_struct for md_start_sync() Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 003/176] md: factor out a helper from mddev_put() Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 004/176] md: simplify md_seq_ops Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 005/176] md/md-bitmap: replace md_bitmap_status() with a new helper md_bitmap_get_stats() Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 006/176] md/md-cluster: fix spares warnings for __le64 Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 007/176] md/md-bitmap: add sync_size into struct md_bitmap_stats Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 008/176] md/md-bitmap: Synchronize bitmap_get_stats() with bitmap lifetime Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 009/176] mm: update mark_victim tracepoints fields Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 010/176] memcg: fix soft lockup in the OOM process Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 011/176] spi: atmel-quadspi: Add support for configuring CS timing Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 012/176] spi: atmel-quadspi: switch to use modern name Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 013/176] spi: atmel-quadspi: Create `atmel_qspi_ops` to support newer SoC families Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 014/176] spi: atmel-qspi: Memory barriers after memory-mapped I/O Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 015/176] Bluetooth: qca: Support downloading board id specific NVM for WCN7850 Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 016/176] Bluetooth: qca: Update firmware-name to support board specific nvm Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 017/176] Bluetooth: qca: Fix poor RF performance for WCN6855 Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 018/176] clk: mediatek: clk-mtk: Add dummy clock ops Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 019/176] clk: mediatek: mt2701-vdec: fix conversion to mtk_clk_simple_probe Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 020/176] clk: mediatek: mt2701-bdp: add missing dummy clk Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 021/176] clk: mediatek: mt2701-img: " Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 022/176] ASoC: renesas: rz-ssi: Add a check for negative sample_space Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 023/176] scsi: core: Handle depopulation and restoration in progress Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 024/176] scsi: core: Do not retry I/Os during depopulation Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 025/176] arm64: dts: mediatek: mt8183: Disable DSI display output by default Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 026/176] arm64: dts: qcom: trim addresses to 8 digits Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 027/176] arm64: dts: qcom: sm8450: Fix CDSP memory length Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 028/176] tpm: Use managed allocation for bios event log Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 029/176] tpm: Change to kvalloc() in eventlog/acpi.c Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 030/176] soc: mediatek: mtk-devapc: Switch to devm_clk_get_enabled() Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 031/176] soc: mediatek: mtk-devapc: Fix leaking IO map on error paths Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 032/176] soc/mediatek: mtk-devapc: Convert to platform remove callback returning void Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 033/176] soc: mediatek: mtk-devapc: Fix leaking IO map on driver remove Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 034/176] media: Switch to use dev_err_probe() helper Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 035/176] media: uvcvideo: Fix crash during unbind if gpio unit is in use Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 036/176] media: uvcvideo: Refactor iterators Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 037/176] media: uvcvideo: Only save async fh if success Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 038/176] media: uvcvideo: Remove dangling pointers Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 039/176] USB: gadget: core: create sysfs link between udc and gadget Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 040/176] usb: gadget: core: flush gadget workqueue after device removal Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 041/176] USB: gadget: f_midi: f_midi_complete to call queue_work Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 042/176] ASoC: rockchip: i2s-tdm: fix shift config for SND_SOC_DAIFMT_DSP_[AB] Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 043/176] powerpc/64s/mm: Move __real_pte stubs into hash-4k.h Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 044/176] powerpc/64s: Rewrite __real_pte() and __rpte_to_hidx() as static inline Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 045/176] ALSA: hda/realtek: Fixup ALC225 depop procedure Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 046/176] powerpc/code-patching: Fix KASAN hit by not flagging text patching area as VM_ALLOC Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 047/176] geneve: Fix use-after-free in geneve_find_dev() Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 048/176] ALSA: hda/cirrus: Correct the full scale volume set logic Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 049/176] ibmvnic: Return error code on TX scrq flush fail Greg Kroah-Hartman
2025-03-05 17:46 ` [PATCH 6.1 050/176] ibmvnic: Introduce send sub-crq direct Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 051/176] ibmvnic: Add stat for tx direct vs tx batched Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 052/176] ibmvnic: Dont reference skb after sending to VIOS Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 053/176] gtp: Suppress list corruption splat in gtp_net_exit_batch_rtnl() Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 054/176] geneve: Suppress list corruption splat in geneve_destroy_tunnels() Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 055/176] flow_dissector: Fix handling of mixed port and port-range keys Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 056/176] flow_dissector: Fix port range key handling in BPF conversion Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 057/176] net: Add non-RCU dev_getbyhwaddr() helper Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 058/176] arp: switch to dev_getbyhwaddr() in arp_req_set_public() Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 059/176] net: axienet: Set mac_managed_pm Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 060/176] tcp: drop secpath at the same time as we currently drop dst Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 061/176] drm/tidss: Add simple K2G manual reset Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 062/176] drm/tidss: Fix race condition while handling interrupt registers Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 063/176] drm/rcar-du: dsi: Fix PHY lock bit check Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 064/176] bpf, test_run: Fix use-after-free issue in eth_skb_pkt_type() Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 065/176] strparser: Add read_sock callback Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 066/176] bpf: Fix wrong copied_seq calculation Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 067/176] power: supply: da9150-fg: fix potential overflow Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 068/176] nouveau/svm: fix missing folio unlock + put after make_device_exclusive_range() Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 069/176] drm/msm/dpu: Dont leak bits_per_component into random DSC_ENC fields Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 070/176] nvme/ioctl: add missing space in err message Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 071/176] bpf: skip non exist keys in generic_map_lookup_batch Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 072/176] drm/msm/dpu: Disable dither in phys encoder cleanup Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 073/176] drm/i915: Make sure all planes in use by the joiner have their crtc included Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 074/176] tee: optee: Fix supplicant wait loop Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 075/176] drop_monitor: fix incorrect initialization order Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 076/176] nfp: bpf: Add check for nfp_app_ctrl_msg_alloc() Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 077/176] ASoC: fsl_micfil: Enable default case in micfil_set_quality() Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 078/176] ALSA: hda: Add error check for snd_ctl_rename_id() in snd_hda_create_dig_out_ctls() Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 079/176] ALSA: hda/conexant: Add quirk for HP ProBook 450 G4 mute LED Greg Kroah-Hartman
2025-03-05 17:47 ` Greg Kroah-Hartman [this message]
2025-03-05 17:47 ` [PATCH 6.1 081/176] acct: block access to kernel internal filesystems Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 082/176] mm,madvise,hugetlb: check for 0-length range after end address adjustment Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 083/176] mtd: rawnand: cadence: fix error code in cadence_nand_init() Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 084/176] mtd: rawnand: cadence: use dma_map_resource for sdma address Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 085/176] mtd: rawnand: cadence: fix incorrect device in dma_unmap_single Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 086/176] smb: client: Add check for next_buffer in receive_encrypted_standard() Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 087/176] EDAC/qcom: Correct interrupt enable register configuration Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 088/176] ftrace: Correct preemption accounting for function tracing Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 089/176] ftrace: Do not add duplicate entries in subops manager ops Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 090/176] x86/cpu/kvm: SRSO: Fix possible missing IBPB on VM-Exit Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 091/176] block, bfq: split sync bfq_queues on a per-actuator basis Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 092/176] block, bfq: fix bfqq uaf in bfq_limit_depth() Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 093/176] media: mediatek: vcodec: Fix H264 multi stateless decoder smatch warning Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 094/176] spi: atmel-quadspi: Avoid overwriting delay register settings Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 095/176] spi: atmel-quadspi: Fix wrong register value written to MR Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 096/176] netfilter: allow exp not to be removed in nf_ct_find_expectation Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 097/176] RDMA/mlx5: Dont keep umrable page_shift in cache entries Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 098/176] RDMA/mlx5: Remove implicit ODP cache entry Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 099/176] RDMA/mlx5: Change the cache structure to an RB-tree Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 100/176] RDMA/mlx5: Introduce mlx5r_cache_rb_key Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 101/176] RDMA/mlx5: Cache all user cacheable mkeys on dereg MR flow Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 102/176] RDMA/mlx5: Add work to remove temporary entries from the cache Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 103/176] RDMA/mlx5: Implement mkeys management via LIFO queue Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 104/176] RDMA/mlx5: Fix the recovery flow of the UMR QP Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 105/176] IB/mlx5: Set and get correct qp_num for a DCT QP Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 106/176] ovl: fix UAF in ovl_dentry_update_reval by moving dput() in ovl_link_up Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 107/176] SUNRPC: convert RPC_TASK_* constants to enum Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 108/176] SUNRPC: Prevent looping due to rpc_signal_task() races Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 109/176] RDMA/mlx: Calling qp event handler in workqueue context Greg Kroah-Hartman
2025-03-05 17:47 ` [PATCH 6.1 110/176] RDMA/mlx5: Reduce QP table exposure Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 111/176] IB/core: Add support for XDR link speed Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 112/176] RDMA/mlx5: Fix AH static rate parsing Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 113/176] scsi: core: Clear driver private data when retrying request Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 114/176] RDMA/mlx5: Fix bind QP error cleanup flow Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 115/176] sunrpc: suppress warnings for unused procfs functions Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 116/176] ALSA: usb-audio: Avoid dropping MIDI events at closing multiple ports Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 117/176] Bluetooth: L2CAP: Fix L2CAP_ECRED_CONN_RSP response Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 118/176] afs: remove variable nr_servers Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 119/176] afs: Make it possible to find the volumes that are using a server Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 120/176] afs: Fix the server_list to unuse a displaced server rather than putting it Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 121/176] net: loopback: Avoid sending IP packets without an Ethernet header Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 122/176] net: set the minimum for net_hotdata.netdev_budget_usecs Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 123/176] net/ipv4: add tracepoint for icmp_send Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 124/176] ipv4: icmp: Pass full DS field to ip_route_input() Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 125/176] ipv4: icmp: Unmask upper DSCP bits in icmp_route_lookup() Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 126/176] ipvlan: Unmask upper DSCP bits in ipvlan_process_v4_outbound() Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 127/176] ipv4: Convert icmp_route_lookup() to dscp_t Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 128/176] ipv4: Convert ip_route_input() " Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 129/176] ipvlan: Prepare ipvlan_process_v4_outbound() to future .flowi4_tos conversion Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 130/176] ipvlan: ensure network headers are in skb linear part Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 131/176] net: cadence: macb: Synchronize stats calculations Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 132/176] ASoC: es8328: fix route from DAC to output Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 133/176] ipvs: Always clear ipvs_property flag in skb_scrub_packet() Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 134/176] tcp: Defer ts_recent changes until req is owned Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 135/176] net: Clear old fragment checksum value in napi_reuse_skb Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 136/176] net: mvpp2: cls: Fixed Non IP flow, with vlan tag flow defination Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 137/176] net/mlx5: IRQ, Fix null string in debug print Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 138/176] include: net: add static inline dst_dev_overhead() to dst.h Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 139/176] net: ipv6: seg6_iptunnel: mitigate 2-realloc issue Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 140/176] net: ipv6: fix dst ref loop on input in seg6 lwt Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 141/176] net: ipv6: rpl_iptunnel: mitigate 2-realloc issue Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 142/176] net: ipv6: fix dst ref loop on input in rpl lwt Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 143/176] mm: Dont pin ZERO_PAGE in pin_user_pages() Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 144/176] uprobes: Reject the shared zeropage in uprobe_write_opcode() Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 145/176] io_uring/net: save msg_control for compat Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 146/176] x86/CPU: Fix warm boot hang regression on AMD SC1100 SoC systems Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 147/176] phy: rockchip: naneng-combphy: compatible reset with old DT Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 148/176] tracing: Fix bad hist from corrupting named_triggers list Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 149/176] ftrace: Avoid potential division by zero in function_stat_show() Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 150/176] ALSA: usb-audio: Re-add sample rate quirk for Pioneer DJM-900NXS2 Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 151/176] perf/x86: Fix low freqency setting issue Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 152/176] perf/core: Fix low freq setting via IOC_PERIOD Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 153/176] drm/amd/display: Disable PSR-SU on eDP panels Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 154/176] drm/amd/display: Fix HPD after gpu reset Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 155/176] i2c: npcm: disable interrupt enable bit before devm_request_irq Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 156/176] usbnet: gl620a: fix endpoint checking in genelink_bind() Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 157/176] net: enetc: fix the off-by-one issue in enetc_map_tx_buffs() Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 158/176] net: enetc: keep track of correct Tx BD count in enetc_map_tx_tso_buffs() Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 159/176] net: enetc: update UDP checksum when updating originTimestamp field Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 160/176] net: enetc: correct the xdp_tx statistics Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 161/176] net: enetc: fix the off-by-one issue in enetc_map_tx_tso_buffs() Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 162/176] phy: tegra: xusb: reset VBUS & ID OVERRIDE Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 163/176] phy: exynos5-usbdrd: fix MPLL_MULTIPLIER and SSC_REFCLKSEL masks in refclk Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 164/176] mptcp: always handle address removal under msk socket lock Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 165/176] mptcp: reset when MPTCP opts are dropped after join Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 166/176] vmlinux.lds: Ensure that const vars with relocations are mapped R/O Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 167/176] sched/core: Prevent rescheduling when interrupts are disabled Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 168/176] riscv/futex: sign extend compare value in atomic cmpxchg Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 169/176] drm/amd/display: fixed integer types and null check locations Greg Kroah-Hartman
2025-03-05 17:48 ` [PATCH 6.1 170/176] amdgpu/pm/legacy: fix suspend/resume issues Greg Kroah-Hartman
2025-03-05 17:49 ` [PATCH 6.1 171/176] intel_idle: Handle older CPUs, which stop the TSC in deeper C states, correctly Greg Kroah-Hartman
2025-03-05 17:49 ` [PATCH 6.1 172/176] ptrace: Introduce exception_ip arch hook Greg Kroah-Hartman
2025-03-05 17:49 ` [PATCH 6.1 173/176] mm/memory: Use exception ip to search exception tables Greg Kroah-Hartman
2025-03-05 17:49 ` [PATCH 6.1 174/176] Squashfs: check the inode number is not the invalid value of zero Greg Kroah-Hartman
2025-03-10  1:56   ` Xiangyu Chen
2025-03-05 17:49 ` [PATCH 6.1 175/176] pfifo_tail_enqueue: Drop new packet when sch->limit == 0 Greg Kroah-Hartman
2025-03-05 17:49 ` [PATCH 6.1 176/176] media: mtk-vcodec: potential null pointer deference in SCP Greg Kroah-Hartman
2025-03-05 19:37 ` [PATCH 6.1 000/176] 6.1.130-rc1 review Pavel Machek
2025-03-06  1:09 ` SeongJae Park
2025-03-06  1:19 ` Peter Schneider
2025-03-06  8:23 ` Ron Economos
2025-03-06 13:15 ` Mark Brown
2025-03-06 14:52 ` Naresh Kamboju
2025-03-06 16:03 ` Shuah Khan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250305174508.678307402@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=brauner@kernel.org \
    --cc=patches@lists.linux.dev \
    --cc=quzicheng@huawei.com \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox