public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	stable@vger.kernel.org,
	Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>,
	Hans de Goede <hdegoede@redhat.com>,
	Sasha Levin <sashal@kernel.org>,
	Liwei Song <liwei.song@windriver.com>
Subject: [PATCH 5.15 022/196] platform/x86: ISST: Fix possible circular locking dependency detected
Date: Mon, 21 Feb 2022 09:47:34 +0100	[thread overview]
Message-ID: <20220221084931.639656021@linuxfoundation.org> (raw)
In-Reply-To: <20220221084930.872957717@linuxfoundation.org>

From: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>

[ Upstream commit 17da2d5f93692086dd096a975225ffd5622d0bf8 ]

As reported:

[  256.104522] ======================================================
[  256.113783] WARNING: possible circular locking dependency detected
[  256.120093] 5.16.0-rc6-yocto-standard+ #99 Not tainted
[  256.125362] ------------------------------------------------------
[  256.131673] intel-speed-sel/844 is trying to acquire lock:
[  256.137290] ffffffffc036f0d0 (punit_misc_dev_lock){+.+.}-{3:3}, at: isst_if_open+0x18/0x90 [isst_if_common]
[  256.147171]
[  256.147171] but task is already holding lock:
[  256.153135] ffffffff8ee7cb50 (misc_mtx){+.+.}-{3:3}, at: misc_open+0x2a/0x170
[  256.160407]
[  256.160407] which lock already depends on the new lock.
[  256.160407]
[  256.168712]
[  256.168712] the existing dependency chain (in reverse order) is:
[  256.176327]
[  256.176327] -> #1 (misc_mtx){+.+.}-{3:3}:
[  256.181946]        lock_acquire+0x1e6/0x330
[  256.186265]        __mutex_lock+0x9b/0x9b0
[  256.190497]        mutex_lock_nested+0x1b/0x20
[  256.195075]        misc_register+0x32/0x1a0
[  256.199390]        isst_if_cdev_register+0x65/0x180 [isst_if_common]
[  256.205878]        isst_if_probe+0x144/0x16e [isst_if_mmio]
...
[  256.241976]
[  256.241976] -> #0 (punit_misc_dev_lock){+.+.}-{3:3}:
[  256.248552]        validate_chain+0xbc6/0x1750
[  256.253131]        __lock_acquire+0x88c/0xc10
[  256.257618]        lock_acquire+0x1e6/0x330
[  256.261933]        __mutex_lock+0x9b/0x9b0
[  256.266165]        mutex_lock_nested+0x1b/0x20
[  256.270739]        isst_if_open+0x18/0x90 [isst_if_common]
[  256.276356]        misc_open+0x100/0x170
[  256.280409]        chrdev_open+0xa5/0x1e0
...

The call sequence suggested that misc_device /dev file can be opened
before misc device is yet to be registered, which is done only once.

Here punit_misc_dev_lock was used as common lock, to protect the
registration by multiple ISST HW drivers, one time setup, prevent
duplicate registry of misc device and prevent load/unload when device
is open.

We can split into locks:
- One which just prevent duplicate call to misc_register() and one
time setup. Also never call again if the misc_register() failed or
required one time setup is failed. This lock is not shared with
any misc device callbacks.

- The other lock protects registry, load and unload of HW drivers.

Sequence in isst_if_cdev_register()
- Register callbacks under punit_misc_dev_open_lock
- Call isst_misc_reg() which registers misc_device on the first
registry which is under punit_misc_dev_reg_lock, which is not
shared with callbacks.

Sequence in isst_if_cdev_unregister
Just opposite of isst_if_cdev_register

Reported-and-tested-by: Liwei Song <liwei.song@windriver.com>
Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Link: https://lore.kernel.org/r/20220112022521.54669-1-srinivas.pandruvada@linux.intel.com
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 .../intel/speed_select_if/isst_if_common.c    | 97 ++++++++++++-------
 1 file changed, 63 insertions(+), 34 deletions(-)

diff --git a/drivers/platform/x86/intel/speed_select_if/isst_if_common.c b/drivers/platform/x86/intel/speed_select_if/isst_if_common.c
index c9a85eb2e8600..e8424e70d81d2 100644
--- a/drivers/platform/x86/intel/speed_select_if/isst_if_common.c
+++ b/drivers/platform/x86/intel/speed_select_if/isst_if_common.c
@@ -596,7 +596,10 @@ static long isst_if_def_ioctl(struct file *file, unsigned int cmd,
 	return ret;
 }
 
-static DEFINE_MUTEX(punit_misc_dev_lock);
+/* Lock to prevent module registration when already opened by user space */
+static DEFINE_MUTEX(punit_misc_dev_open_lock);
+/* Lock to allow one share misc device for all ISST interace */
+static DEFINE_MUTEX(punit_misc_dev_reg_lock);
 static int misc_usage_count;
 static int misc_device_ret;
 static int misc_device_open;
@@ -606,7 +609,7 @@ static int isst_if_open(struct inode *inode, struct file *file)
 	int i, ret = 0;
 
 	/* Fail open, if a module is going away */
-	mutex_lock(&punit_misc_dev_lock);
+	mutex_lock(&punit_misc_dev_open_lock);
 	for (i = 0; i < ISST_IF_DEV_MAX; ++i) {
 		struct isst_if_cmd_cb *cb = &punit_callbacks[i];
 
@@ -628,7 +631,7 @@ static int isst_if_open(struct inode *inode, struct file *file)
 	} else {
 		misc_device_open++;
 	}
-	mutex_unlock(&punit_misc_dev_lock);
+	mutex_unlock(&punit_misc_dev_open_lock);
 
 	return ret;
 }
@@ -637,7 +640,7 @@ static int isst_if_relase(struct inode *inode, struct file *f)
 {
 	int i;
 
-	mutex_lock(&punit_misc_dev_lock);
+	mutex_lock(&punit_misc_dev_open_lock);
 	misc_device_open--;
 	for (i = 0; i < ISST_IF_DEV_MAX; ++i) {
 		struct isst_if_cmd_cb *cb = &punit_callbacks[i];
@@ -645,7 +648,7 @@ static int isst_if_relase(struct inode *inode, struct file *f)
 		if (cb->registered)
 			module_put(cb->owner);
 	}
-	mutex_unlock(&punit_misc_dev_lock);
+	mutex_unlock(&punit_misc_dev_open_lock);
 
 	return 0;
 }
@@ -662,6 +665,43 @@ static struct miscdevice isst_if_char_driver = {
 	.fops		= &isst_if_char_driver_ops,
 };
 
+static int isst_misc_reg(void)
+{
+	mutex_lock(&punit_misc_dev_reg_lock);
+	if (misc_device_ret)
+		goto unlock_exit;
+
+	if (!misc_usage_count) {
+		misc_device_ret = isst_if_cpu_info_init();
+		if (misc_device_ret)
+			goto unlock_exit;
+
+		misc_device_ret = misc_register(&isst_if_char_driver);
+		if (misc_device_ret) {
+			isst_if_cpu_info_exit();
+			goto unlock_exit;
+		}
+	}
+	misc_usage_count++;
+
+unlock_exit:
+	mutex_unlock(&punit_misc_dev_reg_lock);
+
+	return misc_device_ret;
+}
+
+static void isst_misc_unreg(void)
+{
+	mutex_lock(&punit_misc_dev_reg_lock);
+	if (misc_usage_count)
+		misc_usage_count--;
+	if (!misc_usage_count && !misc_device_ret) {
+		misc_deregister(&isst_if_char_driver);
+		isst_if_cpu_info_exit();
+	}
+	mutex_unlock(&punit_misc_dev_reg_lock);
+}
+
 /**
  * isst_if_cdev_register() - Register callback for IOCTL
  * @device_type: The device type this callback handling.
@@ -679,38 +719,31 @@ static struct miscdevice isst_if_char_driver = {
  */
 int isst_if_cdev_register(int device_type, struct isst_if_cmd_cb *cb)
 {
-	if (misc_device_ret)
-		return misc_device_ret;
+	int ret;
 
 	if (device_type >= ISST_IF_DEV_MAX)
 		return -EINVAL;
 
-	mutex_lock(&punit_misc_dev_lock);
+	mutex_lock(&punit_misc_dev_open_lock);
+	/* Device is already open, we don't want to add new callbacks */
 	if (misc_device_open) {
-		mutex_unlock(&punit_misc_dev_lock);
+		mutex_unlock(&punit_misc_dev_open_lock);
 		return -EAGAIN;
 	}
-	if (!misc_usage_count) {
-		int ret;
-
-		misc_device_ret = misc_register(&isst_if_char_driver);
-		if (misc_device_ret)
-			goto unlock_exit;
-
-		ret = isst_if_cpu_info_init();
-		if (ret) {
-			misc_deregister(&isst_if_char_driver);
-			misc_device_ret = ret;
-			goto unlock_exit;
-		}
-	}
 	memcpy(&punit_callbacks[device_type], cb, sizeof(*cb));
 	punit_callbacks[device_type].registered = 1;
-	misc_usage_count++;
-unlock_exit:
-	mutex_unlock(&punit_misc_dev_lock);
+	mutex_unlock(&punit_misc_dev_open_lock);
 
-	return misc_device_ret;
+	ret = isst_misc_reg();
+	if (ret) {
+		/*
+		 * No need of mutex as the misc device register failed
+		 * as no one can open device yet. Hence no contention.
+		 */
+		punit_callbacks[device_type].registered = 0;
+		return ret;
+	}
+	return 0;
 }
 EXPORT_SYMBOL_GPL(isst_if_cdev_register);
 
@@ -725,16 +758,12 @@ EXPORT_SYMBOL_GPL(isst_if_cdev_register);
  */
 void isst_if_cdev_unregister(int device_type)
 {
-	mutex_lock(&punit_misc_dev_lock);
-	misc_usage_count--;
+	isst_misc_unreg();
+	mutex_lock(&punit_misc_dev_open_lock);
 	punit_callbacks[device_type].registered = 0;
 	if (device_type == ISST_IF_DEV_MBOX)
 		isst_delete_hash();
-	if (!misc_usage_count && !misc_device_ret) {
-		misc_deregister(&isst_if_char_driver);
-		isst_if_cpu_info_exit();
-	}
-	mutex_unlock(&punit_misc_dev_lock);
+	mutex_unlock(&punit_misc_dev_open_lock);
 }
 EXPORT_SYMBOL_GPL(isst_if_cdev_unregister);
 
-- 
2.34.1




  parent reply	other threads:[~2022-02-21  9:27 UTC|newest]

Thread overview: 209+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-21  8:47 [PATCH 5.15 000/196] 5.15.25-rc1 review Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 001/196] drm/nouveau/pmu/gm200-: use alternate falcon reset sequence Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 002/196] fs/proc: task_mmu.c: dont read mapcount for migration entry Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 003/196] btrfs: zoned: cache reported zone during mount Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 004/196] scsi: lpfc: Fix mailbox command failure during driver initialization Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 005/196] HID:Add support for UGTABLET WP5540 Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 006/196] Revert "svm: Add warning message for AVIC IPI invalid target" Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 007/196] parisc: Show error if wrong 32/64-bit compiler is being used Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 008/196] serial: parisc: GSC: fix build when IOSAPIC is not set Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 009/196] parisc: Drop __init from map_pages declaration Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 010/196] parisc: Fix data TLB miss in sba_unmap_sg Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 011/196] parisc: Fix sglist access in ccio-dma.c Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 012/196] mmc: block: fix read single on recovery logic Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 013/196] mm: dont try to NUMA-migrate COW pages that have other uses Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 014/196] HID: amd_sfh: Add illuminance mask to limit ALS max value Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 015/196] HID: i2c-hid: goodix: Fix a lockdep splat Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 016/196] HID: amd_sfh: Increase sensor command timeout Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 017/196] HID: amd_sfh: Correct the structure field name Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 018/196] PCI: hv: Fix NUMA node assignment when kernel boots with custom NUMA topology Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 019/196] parisc: Add ioread64_lo_hi() and iowrite64_lo_hi() Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 020/196] btrfs: send: in case of IO error log it Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 021/196] platform/x86: touchscreen_dmi: Add info for the RWC NANOTE P8 AY07J 2-in-1 Greg Kroah-Hartman
2022-02-21  8:47 ` Greg Kroah-Hartman [this message]
2022-02-21  8:47 ` [PATCH 5.15 023/196] kunit: tool: Import missing importlib.abc Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 024/196] selftests: rtc: Increase test timeout so that all tests run Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 025/196] kselftest: signal all child processes Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 026/196] net: ieee802154: at86rf230: Stop leaking skbs Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 027/196] selftests/zram: Skip max_comp_streams interface on newer kernel Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 028/196] selftests/zram01.sh: Fix compression ratio calculation Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 029/196] selftests/zram: Adapt the situation that /dev/zram0 is being used Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 030/196] selftests: openat2: Print also errno in failure messages Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 031/196] selftests: openat2: Add missing dependency in Makefile Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 032/196] selftests: openat2: Skip testcases that fail with EOPNOTSUPP Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 033/196] selftests: skip mincore.check_file_mmap when fs lacks needed support Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 034/196] ax25: improve the incomplete fix to avoid UAF and NPD bugs Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 035/196] pinctrl: bcm63xx: fix unmet dependency on REGMAP for GPIO_REGMAP Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 036/196] vfs: make freeze_super abort when sync_filesystem returns error Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 037/196] quota: make dquot_quota_sync return errors from ->sync_fs Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 038/196] scsi: pm80xx: Fix double completion for SATA devices Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 039/196] kselftest: Fix vdso_test_abi return status Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 040/196] scsi: core: Reallocate devices budget map on queue depth change Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 041/196] scsi: pm8001: Fix use-after-free for aborted TMF sas_task Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 042/196] scsi: pm8001: Fix use-after-free for aborted SSP/STP sas_task Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 043/196] drm/amd: Warn users about potential s0ix problems Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 044/196] nvme: fix a possible use-after-free in controller reset during load Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 045/196] nvme-tcp: fix possible use-after-free in transport error_recovery work Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 046/196] nvme-rdma: " Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.15 047/196] net: sparx5: do not refer to skb after passing it on Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 048/196] drm/amd: add support to check whether the system is set to s3 Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 049/196] drm/amd: Only run s3 or s0ix if system is configured properly Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 050/196] drm/amdgpu: fix logic inversion in check Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 051/196] x86/Xen: streamline (and fix) PV CPU enumeration Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 052/196] Revert "module, async: async_synchronize_full() on module init iff async is used" Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 053/196] gcc-plugins/stackleak: Use noinstr in favor of notrace Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 054/196] random: wake up /dev/random writers after zap Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 055/196] KVM: x86/xen: Fix runstate updates to be atomic when preempting vCPU Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 056/196] KVM: x86: nSVM/nVMX: set nested_run_pending on VM entry which is a result of RSM Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 057/196] KVM: x86: SVM: dont passthrough SMAP/SMEP/PKE bits in !NPT && !gCR0.PG case Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 058/196] KVM: x86: nSVM: fix potential NULL derefernce on nested migration Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 059/196] KVM: x86: nSVM: mark vmcb01 as dirty when restoring SMM saved state Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 060/196] iwlwifi: fix use-after-free Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 061/196] drm/radeon: Fix backlight control on iMac 12,1 Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 062/196] drm/atomic: Dont pollute crtc_state->mode_blob with error pointers Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 063/196] drm/amd/pm: correct the sequence of sending gpu reset msg Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 064/196] drm/amdgpu: skipping SDMA hw_init and hw_fini for S0ix Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 065/196] drm/i915/opregion: check port number bounds for SWSCI display power state Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 066/196] drm/i915: Fix dbuf slice config lookup Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 067/196] drm/i915: Fix mbus join " Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 068/196] vsock: remove vsock from connected table when connect is interrupted by a signal Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 069/196] tee: export teedev_open() and teedev_close_context() Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 070/196] optee: use driver internal tee_context for some rpc Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 071/196] drm/cma-helper: Set VM_DONTEXPAND for mmap Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 072/196] drm/i915/gvt: Make DRM_I915_GVT depend on X86 Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 073/196] drm/i915/ttm: tweak priority hint selection Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 074/196] iwlwifi: pcie: fix locking when "HW not ready" Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 075/196] iwlwifi: pcie: gen2: " Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 076/196] iwlwifi: mvm: dont send SAR GEO command for 3160 devices Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 077/196] netfilter: xt_socket: fix a typo in socket_mt_destroy() Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 078/196] selftests: netfilter: fix exit value for nft_concat_range Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 079/196] netfilter: nft_synproxy: unregister hooks on init error path Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 080/196] selftests: netfilter: disable rp_filter on router Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 081/196] ipv4: fix data races in fib_alias_hw_flags_set Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 082/196] ipv6: fix data-race in fib6_info_hw_flags_set / fib6_purge_rt Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 083/196] ipv6: mcast: use rcu-safe version of ipv6_get_lladdr() Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 084/196] ipv6: per-netns exclusive flowlabel checks Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 085/196] Revert "net: ethernet: bgmac: Use devm_platform_ioremap_resource_byname" Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 086/196] mac80211: mlme: check for null after calling kmemdup Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 087/196] brcmfmac: firmware: Fix crash in brcm_alt_fw_path Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 088/196] cfg80211: fix race in netlink owner interface destruction Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 089/196] net: dsa: lan9303: fix reset on probe Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 090/196] net: dsa: mv88e6xxx: flush switchdev FDB workqueue before removing VLAN Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 091/196] net: dsa: lantiq_gswip: fix use after free in gswip_remove() Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 092/196] net: dsa: lan9303: handle hwaccel VLAN tags Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 093/196] net: dsa: lan9303: add VLAN IDs to master device Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 094/196] net: ieee802154: ca8210: Fix lifs/sifs periods Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 095/196] ping: fix the dif and sdif check in ping_lookup Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 096/196] bonding: force carrier update when releasing slave Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 097/196] drop_monitor: fix data-race in dropmon_net_event / trace_napi_poll_hit Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 098/196] net_sched: add __rcu annotation to netdev->qdisc Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 099/196] bonding: fix data-races around agg_select_timer Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 100/196] libsubcmd: Fix use-after-free for realloc(..., 0) Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 101/196] net/smc: Avoid overwriting the copies of clcsock callback functions Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 102/196] net: phy: mediatek: remove PHY mode check on MT7531 Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 103/196] atl1c: fix tx timeout after link flap on Mikrotik 10/25G NIC Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 104/196] tipc: fix wrong publisher node address in link publications Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 105/196] dpaa2-switch: fix default return of dpaa2_switch_flower_parse_mirror_key Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 106/196] dpaa2-eth: Initialize mutex used in one step timestamping path Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.15 107/196] net: bridge: multicast: notify switchdev driver whenever MC processing gets disabled Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 108/196] perf bpf: Defer freeing string after possible strlen() on it Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 109/196] selftests/exec: Add non-regular to TEST_GEN_PROGS Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 110/196] arm64: Correct wrong label in macro __init_el2_gicv3 Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 111/196] ALSA: usb-audio: revert to IMPLICIT_FB_FIXED_DEV for M-Audio FastTrack Ultra Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 112/196] ALSA: hda/realtek: Add quirk for Legion Y9000X 2019 Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 113/196] ALSA: hda/realtek: Fix deadlock by COEF mutex Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 114/196] ALSA: hda: Fix regression on forced probe mask option Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 115/196] ALSA: hda: Fix missing codec probe on Shenker Dock 15 Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 116/196] ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 117/196] ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_range() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 118/196] ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_sx() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 119/196] ASoC: ops: Fix stereo change notifications in snd_soc_put_xr_sx() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 120/196] cifs: fix set of group SID via NTSD xattrs Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 121/196] powerpc/603: Fix boot failure with DEBUG_PAGEALLOC and KFENCE Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 122/196] powerpc/lib/sstep: fix ptesync build error Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 123/196] mtd: rawnand: gpmi: dont leak PM reference in error path Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 124/196] smb3: fix snapshot mount option Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 125/196] tipc: fix wrong notification node addresses Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 126/196] scsi: ufs: Remove dead code Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 127/196] scsi: ufs: Fix a deadlock in the error handler Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 128/196] ASoC: tas2770: Insert post reset delay Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 129/196] ASoC: qcom: Actually clear DMA interrupt register for HDMI Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 130/196] block/wbt: fix negative inflight counter when remove scsi device Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 131/196] NFS: Remove an incorrect revalidation in nfs4_update_changeattr_locked() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 132/196] NFS: LOOKUP_DIRECTORY is also ok with symlinks Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 133/196] NFS: Do not report writeback errors in nfs_getattr() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 134/196] tty: n_tty: do not look ahead for EOL character past the end of the buffer Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 135/196] block: fix surprise removal for drivers calling blk_set_queue_dying Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 136/196] mtd: rawnand: qcom: Fix clock sequencing in qcom_nandc_probe() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 137/196] mtd: parsers: qcom: Fix kernel panic on skipped partition Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 138/196] mtd: parsers: qcom: Fix missing free for pparts in cleanup Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 139/196] mtd: phram: Prevent divide by zero bug in phram_setup() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 140/196] mtd: rawnand: brcmnand: Fixed incorrect sub-page ECC status Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 141/196] HID: elo: fix memory leak in elo_probe Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 142/196] mtd: rawnand: ingenic: Fix missing put_device in ingenic_ecc_get Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 143/196] Drivers: hv: vmbus: Fix memory leak in vmbus_add_channel_kobj Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 144/196] KVM: x86/pmu: Refactoring find_arch_event() to pmc_perf_hw_id() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 145/196] KVM: x86/pmu: Dont truncate the PerfEvtSeln MSR when creating a perf event Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 146/196] KVM: x86/pmu: Use AMD64_RAW_EVENT_MASK for PERF_TYPE_RAW Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 147/196] ARM: OMAP2+: hwmod: Add of_node_put() before break Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 148/196] ARM: OMAP2+: adjust the location of put_device() call in omapdss_init_of Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 149/196] phy: usb: Leave some clocks running during suspend Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 150/196] staging: vc04_services: Fix RCU dereference check Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 151/196] phy: phy-mtk-tphy: Fix duplicated argument in phy-mtk-tphy Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 152/196] irqchip/sifive-plic: Add missing thead,c900-plic match string Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 153/196] x86/bug: Merge annotate_reachable() into _BUG_FLAGS() asm Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 154/196] netfilter: conntrack: dont refresh sctp entries in closed state Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 155/196] ksmbd: fix same UniqueId for dot and dotdot entries Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 156/196] ksmbd: dont align last entry offset in smb2 query directory Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 157/196] arm64: dts: meson-gx: add ATF BL32 reserved-memory region Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 158/196] arm64: dts: meson-g12: " Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 159/196] arm64: dts: meson-g12: drop BL32 region from SEI510/SEI610 Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 160/196] pidfd: fix test failure due to stack overflow on some arches Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 161/196] selftests: fixup build warnings in pidfd / clone3 tests Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 162/196] mm: io_uring: allow oom-killer from io_uring_setup Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 163/196] ACPI: PM: Revert "Only mark EC GPE for wakeup on Intel systems" Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 164/196] kconfig: let shell return enough output for deep path names Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 165/196] ata: libata-core: Disable TRIM on M88V29 Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 166/196] soc: aspeed: lpc-ctrl: Block error printing on probe defer cases Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.15 167/196] xprtrdma: fix pointer derefs in error cases of rpcrdma_ep_create Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 168/196] drm/rockchip: dw_hdmi: Do not leave clock enabled in error case Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 169/196] tracing: Fix tp_printk option related with tp_printk_stop_on_boot Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 170/196] display/amd: decrease message verbosity about watermarks table failure Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 171/196] drm/amd/display: Cap pflip irqs per max otg number Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 172/196] drm/amd/display: fix yellow carp wm clamping Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 173/196] net: usb: qmi_wwan: Add support for Dell DW5829e Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 174/196] net: macb: Align the dma and coherent dma masks Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 175/196] kconfig: fix failing to generate auto.conf Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 176/196] scsi: lpfc: Fix pt2pt NVMe PRLI reject LOGO loop Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 177/196] EDAC: Fix calculation of returned address and next offset in edac_align_ptr() Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 178/196] ucounts: Handle wrapping in is_ucounts_overlimit Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 179/196] ucounts: In set_cred_ucounts assume new->ucounts is non-NULL Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 180/196] ucounts: Base set_cred_ucounts changes on the real user Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 181/196] ucounts: Enforce RLIMIT_NPROC not RLIMIT_NPROC+1 Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 182/196] rlimit: Fix RLIMIT_NPROC enforcement failure caused by capability calls in set_user Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 183/196] ucounts: Move RLIMIT_NPROC handling after set_user Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 184/196] net: sched: limit TC_ACT_REPEAT loops Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 185/196] dmaengine: sh: rcar-dmac: Check for error num after setting mask Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 186/196] dmaengine: stm32-dmamux: Fix PM disable depth imbalance in stm32_dmamux_probe Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 187/196] dmaengine: sh: rcar-dmac: Check for error num after dma_set_max_seg_size Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 188/196] tests: fix idmapped mount_setattr test Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 189/196] i2c: qcom-cci: dont delete an unregistered adapter Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 190/196] i2c: qcom-cci: dont put a device tree node before i2c_add_adapter() Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 191/196] dmaengine: ptdma: Fix the error handling path in pt_core_init() Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 192/196] copy_process(): Move fd_install() out of sighand->siglock critical section Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 193/196] scsi: qedi: Fix ABBA deadlock in qedi_process_tmf_resp() and qedi_process_cmd_cleanup_resp() Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 194/196] ice: enable parsing IPSEC SPI headers for RSS Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 195/196] i2c: brcmstb: fix support for DSL and CM variants Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.15 196/196] lockdep: Correct lock_classes index mapping Greg Kroah-Hartman
2022-02-21 17:15 ` [PATCH 5.15 000/196] 5.15.25-rc1 review Guenter Roeck
2022-02-21 18:00   ` Greg Kroah-Hartman
2022-02-21 22:28     ` Jens Wiklander
2022-02-22  8:54   ` Greg Kroah-Hartman
2022-02-21 20:50 ` Naresh Kamboju
2022-02-21 21:21 ` Guenter Roeck
2022-02-21 21:39 ` Shuah Khan
2022-02-22  4:03 ` Florian Fainelli
2022-02-22  5:39 ` Bagas Sanjaya
2022-02-22  5:59 ` Ron Economos
2022-02-22 12:30 ` Sudip Mukherjee
2022-02-23  2:54 ` Slade Watkins

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=20220221084931.639656021@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=hdegoede@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=liwei.song@windriver.com \
    --cc=sashal@kernel.org \
    --cc=srinivas.pandruvada@linux.intel.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