linux-kernel.vger.kernel.org archive mirror
 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,
	syzbot+f427adf9324b92652ccc@syzkaller.appspotmail.com,
	Miklos Szeredi <mszeredi@redhat.com>, Jan Kara <jack@suse.cz>,
	Ben Hutchings <ben@decadent.org.uk>
Subject: [PATCH 4.9 125/157] fuse: fix bad inode
Date: Mon, 24 Jan 2022 19:43:35 +0100	[thread overview]
Message-ID: <20220124183936.738513760@linuxfoundation.org> (raw)
In-Reply-To: <20220124183932.787526760@linuxfoundation.org>

From: Miklos Szeredi <mszeredi@redhat.com>

commit 5d069dbe8aaf2a197142558b6fb2978189ba3454 upstream.

Jan Kara's analysis of the syzbot report (edited):

  The reproducer opens a directory on FUSE filesystem, it then attaches
  dnotify mark to the open directory.  After that a fuse_do_getattr() call
  finds that attributes returned by the server are inconsistent, and calls
  make_bad_inode() which, among other things does:

          inode->i_mode = S_IFREG;

  This then confuses dnotify which doesn't tear down its structures
  properly and eventually crashes.

Avoid calling make_bad_inode() on a live inode: switch to a private flag on
the fuse inode.  Also add the test to ops which the bad_inode_ops would
have caught.

This bug goes back to the initial merge of fuse in 2.6.14...

Reported-by: syzbot+f427adf9324b92652ccc@syzkaller.appspotmail.com
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Tested-by: Jan Kara <jack@suse.cz>
Cc: <stable@vger.kernel.org>
[bwh: Backported to 4.9:
 - Drop changes in fuse_dir_fsync(), fuse_readahead(), fuse_evict_inode()
 - In fuse_get_link(), return ERR_PTR(-EIO) for bad inodes
 - Convert some additional calls to is_bad_inode()
 - Adjust filename, context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 fs/fuse/acl.c    |    6 ++++++
 fs/fuse/dir.c    |   40 +++++++++++++++++++++++++++++++++++-----
 fs/fuse/file.c   |   27 ++++++++++++++++++---------
 fs/fuse/fuse_i.h |   12 ++++++++++++
 fs/fuse/inode.c  |    2 +-
 fs/fuse/xattr.c  |    9 +++++++++
 6 files changed, 81 insertions(+), 15 deletions(-)

--- a/fs/fuse/acl.c
+++ b/fs/fuse/acl.c
@@ -19,6 +19,9 @@ struct posix_acl *fuse_get_acl(struct in
 	void *value = NULL;
 	struct posix_acl *acl;
 
+	if (fuse_is_bad(inode))
+		return ERR_PTR(-EIO);
+
 	if (!fc->posix_acl || fc->no_getxattr)
 		return NULL;
 
@@ -53,6 +56,9 @@ int fuse_set_acl(struct inode *inode, st
 	const char *name;
 	int ret;
 
+	if (fuse_is_bad(inode))
+		return -EIO;
+
 	if (!fc->posix_acl || fc->no_setxattr)
 		return -EOPNOTSUPP;
 
--- a/fs/fuse/dir.c
+++ b/fs/fuse/dir.c
@@ -187,7 +187,7 @@ static int fuse_dentry_revalidate(struct
 	int ret;
 
 	inode = d_inode_rcu(entry);
-	if (inode && is_bad_inode(inode))
+	if (inode && fuse_is_bad(inode))
 		goto invalid;
 	else if (time_before64(fuse_dentry_time(entry), get_jiffies_64()) ||
 		 (flags & LOOKUP_REVAL)) {
@@ -364,6 +364,9 @@ static struct dentry *fuse_lookup(struct
 	bool outarg_valid = true;
 	bool locked;
 
+	if (fuse_is_bad(dir))
+		return ERR_PTR(-EIO);
+
 	locked = fuse_lock_inode(dir);
 	err = fuse_lookup_name(dir->i_sb, get_node_id(dir), &entry->d_name,
 			       &outarg, &inode);
@@ -504,6 +507,9 @@ static int fuse_atomic_open(struct inode
 	struct fuse_conn *fc = get_fuse_conn(dir);
 	struct dentry *res = NULL;
 
+	if (fuse_is_bad(dir))
+		return -EIO;
+
 	if (d_in_lookup(entry)) {
 		res = fuse_lookup(dir, entry, 0);
 		if (IS_ERR(res))
@@ -551,6 +557,9 @@ static int create_new_entry(struct fuse_
 	int err;
 	struct fuse_forget_link *forget;
 
+	if (fuse_is_bad(dir))
+		return -EIO;
+
 	forget = fuse_alloc_forget();
 	if (!forget)
 		return -ENOMEM;
@@ -672,6 +681,9 @@ static int fuse_unlink(struct inode *dir
 	struct fuse_conn *fc = get_fuse_conn(dir);
 	FUSE_ARGS(args);
 
+	if (fuse_is_bad(dir))
+		return -EIO;
+
 	args.in.h.opcode = FUSE_UNLINK;
 	args.in.h.nodeid = get_node_id(dir);
 	args.in.numargs = 1;
@@ -708,6 +720,9 @@ static int fuse_rmdir(struct inode *dir,
 	struct fuse_conn *fc = get_fuse_conn(dir);
 	FUSE_ARGS(args);
 
+	if (fuse_is_bad(dir))
+		return -EIO;
+
 	args.in.h.opcode = FUSE_RMDIR;
 	args.in.h.nodeid = get_node_id(dir);
 	args.in.numargs = 1;
@@ -786,6 +801,9 @@ static int fuse_rename2(struct inode *ol
 	struct fuse_conn *fc = get_fuse_conn(olddir);
 	int err;
 
+	if (fuse_is_bad(olddir))
+		return -EIO;
+
 	if (flags & ~(RENAME_NOREPLACE | RENAME_EXCHANGE))
 		return -EINVAL;
 
@@ -921,7 +939,7 @@ static int fuse_do_getattr(struct inode
 	if (!err) {
 		if (fuse_invalid_attr(&outarg.attr) ||
 		    (inode->i_mode ^ outarg.attr.mode) & S_IFMT) {
-			make_bad_inode(inode);
+			fuse_make_bad(inode);
 			err = -EIO;
 		} else {
 			fuse_change_attributes(inode, &outarg.attr,
@@ -1114,6 +1132,9 @@ static int fuse_permission(struct inode
 	bool refreshed = false;
 	int err = 0;
 
+	if (fuse_is_bad(inode))
+		return -EIO;
+
 	if (!fuse_allow_current_process(fc))
 		return -EACCES;
 
@@ -1251,7 +1272,7 @@ retry:
 			dput(dentry);
 			goto retry;
 		}
-		if (is_bad_inode(inode)) {
+		if (fuse_is_bad(inode)) {
 			dput(dentry);
 			return -EIO;
 		}
@@ -1349,7 +1370,7 @@ static int fuse_readdir(struct file *fil
 	u64 attr_version = 0;
 	bool locked;
 
-	if (is_bad_inode(inode))
+	if (fuse_is_bad(inode))
 		return -EIO;
 
 	req = fuse_get_req(fc, 1);
@@ -1409,6 +1430,9 @@ static const char *fuse_get_link(struct
 	if (!dentry)
 		return ERR_PTR(-ECHILD);
 
+	if (fuse_is_bad(inode))
+		return ERR_PTR(-EIO);
+
 	link = kmalloc(PAGE_SIZE, GFP_KERNEL);
 	if (!link)
 		return ERR_PTR(-ENOMEM);
@@ -1707,7 +1731,7 @@ int fuse_do_setattr(struct dentry *dentr
 
 	if (fuse_invalid_attr(&outarg.attr) ||
 	    (inode->i_mode ^ outarg.attr.mode) & S_IFMT) {
-		make_bad_inode(inode);
+		fuse_make_bad(inode);
 		err = -EIO;
 		goto error;
 	}
@@ -1763,6 +1787,9 @@ static int fuse_setattr(struct dentry *e
 	struct file *file = (attr->ia_valid & ATTR_FILE) ? attr->ia_file : NULL;
 	int ret;
 
+	if (fuse_is_bad(inode))
+		return -EIO;
+
 	if (!fuse_allow_current_process(get_fuse_conn(inode)))
 		return -EACCES;
 
@@ -1821,6 +1848,9 @@ static int fuse_getattr(struct vfsmount
 	struct inode *inode = d_inode(entry);
 	struct fuse_conn *fc = get_fuse_conn(inode);
 
+	if (fuse_is_bad(inode))
+		return -EIO;
+
 	if (!fuse_allow_current_process(fc))
 		return -EACCES;
 
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -206,6 +206,9 @@ int fuse_open_common(struct inode *inode
 			  fc->atomic_o_trunc &&
 			  fc->writeback_cache;
 
+	if (fuse_is_bad(inode))
+		return -EIO;
+
 	err = generic_file_open(inode, file);
 	if (err)
 		return err;
@@ -411,7 +414,7 @@ static int fuse_flush(struct file *file,
 	struct fuse_flush_in inarg;
 	int err;
 
-	if (is_bad_inode(inode))
+	if (fuse_is_bad(inode))
 		return -EIO;
 
 	if (fc->no_flush)
@@ -459,7 +462,7 @@ int fuse_fsync_common(struct file *file,
 	struct fuse_fsync_in inarg;
 	int err;
 
-	if (is_bad_inode(inode))
+	if (fuse_is_bad(inode))
 		return -EIO;
 
 	inode_lock(inode);
@@ -771,7 +774,7 @@ static int fuse_readpage(struct file *fi
 	int err;
 
 	err = -EIO;
-	if (is_bad_inode(inode))
+	if (fuse_is_bad(inode))
 		goto out;
 
 	err = fuse_do_readpage(file, page);
@@ -898,7 +901,7 @@ static int fuse_readpages(struct file *f
 	int nr_alloc = min_t(unsigned, nr_pages, FUSE_MAX_PAGES_PER_REQ);
 
 	err = -EIO;
-	if (is_bad_inode(inode))
+	if (fuse_is_bad(inode))
 		goto out;
 
 	data.file = file;
@@ -928,6 +931,9 @@ static ssize_t fuse_file_read_iter(struc
 	struct inode *inode = iocb->ki_filp->f_mapping->host;
 	struct fuse_conn *fc = get_fuse_conn(inode);
 
+	if (fuse_is_bad(inode))
+		return -EIO;
+
 	/*
 	 * In auto invalidate mode, always update attributes on read.
 	 * Otherwise, only update if we attempt to read past EOF (to ensure
@@ -1123,7 +1129,7 @@ static ssize_t fuse_perform_write(struct
 	int err = 0;
 	ssize_t res = 0;
 
-	if (is_bad_inode(inode))
+	if (fuse_is_bad(inode))
 		return -EIO;
 
 	if (inode->i_size < pos + iov_iter_count(ii))
@@ -1180,6 +1186,9 @@ static ssize_t fuse_file_write_iter(stru
 	ssize_t err;
 	loff_t endbyte = 0;
 
+	if (fuse_is_bad(inode))
+		return -EIO;
+
 	if (get_fuse_conn(inode)->writeback_cache) {
 		/* Update size (EOF optimization) and mode (SUID clearing) */
 		err = fuse_update_attributes(mapping->host, NULL, file, NULL);
@@ -1415,7 +1424,7 @@ static ssize_t __fuse_direct_read(struct
 	struct file *file = io->file;
 	struct inode *inode = file_inode(file);
 
-	if (is_bad_inode(inode))
+	if (fuse_is_bad(inode))
 		return -EIO;
 
 	res = fuse_direct_io(io, iter, ppos, 0);
@@ -1438,7 +1447,7 @@ static ssize_t fuse_direct_write_iter(st
 	struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(file);
 	ssize_t res;
 
-	if (is_bad_inode(inode))
+	if (fuse_is_bad(inode))
 		return -EIO;
 
 	/* Don't allow parallel writes to the same file */
@@ -1911,7 +1920,7 @@ static int fuse_writepages(struct addres
 	int err;
 
 	err = -EIO;
-	if (is_bad_inode(inode))
+	if (fuse_is_bad(inode))
 		goto out;
 
 	data.inode = inode;
@@ -2687,7 +2696,7 @@ long fuse_ioctl_common(struct file *file
 	if (!fuse_allow_current_process(fc))
 		return -EACCES;
 
-	if (is_bad_inode(inode))
+	if (fuse_is_bad(inode))
 		return -EIO;
 
 	return fuse_do_ioctl(file, cmd, arg, flags);
--- a/fs/fuse/fuse_i.h
+++ b/fs/fuse/fuse_i.h
@@ -115,6 +115,8 @@ enum {
 	FUSE_I_INIT_RDPLUS,
 	/** An operation changing file size is in progress  */
 	FUSE_I_SIZE_UNSTABLE,
+	/* Bad inode */
+	FUSE_I_BAD,
 };
 
 struct fuse_conn;
@@ -688,6 +690,16 @@ static inline u64 get_node_id(struct ino
 	return get_fuse_inode(inode)->nodeid;
 }
 
+static inline void fuse_make_bad(struct inode *inode)
+{
+	set_bit(FUSE_I_BAD, &get_fuse_inode(inode)->state);
+}
+
+static inline bool fuse_is_bad(struct inode *inode)
+{
+	return unlikely(test_bit(FUSE_I_BAD, &get_fuse_inode(inode)->state));
+}
+
 /** Device operations */
 extern const struct file_operations fuse_dev_operations;
 
--- a/fs/fuse/inode.c
+++ b/fs/fuse/inode.c
@@ -316,7 +316,7 @@ struct inode *fuse_iget(struct super_blo
 		unlock_new_inode(inode);
 	} else if ((inode->i_mode ^ attr->mode) & S_IFMT) {
 		/* Inode has changed type, any I/O on the old should fail */
-		make_bad_inode(inode);
+		fuse_make_bad(inode);
 		iput(inode);
 		goto retry;
 	}
--- a/fs/fuse/xattr.c
+++ b/fs/fuse/xattr.c
@@ -113,6 +113,9 @@ ssize_t fuse_listxattr(struct dentry *en
 	struct fuse_getxattr_out outarg;
 	ssize_t ret;
 
+	if (fuse_is_bad(inode))
+		return -EIO;
+
 	if (!fuse_allow_current_process(fc))
 		return -EACCES;
 
@@ -178,6 +181,9 @@ static int fuse_xattr_get(const struct x
 			 struct dentry *dentry, struct inode *inode,
 			 const char *name, void *value, size_t size)
 {
+	if (fuse_is_bad(inode))
+		return -EIO;
+
 	return fuse_getxattr(inode, name, value, size);
 }
 
@@ -186,6 +192,9 @@ static int fuse_xattr_set(const struct x
 			  const char *name, const void *value, size_t size,
 			  int flags)
 {
+	if (fuse_is_bad(inode))
+		return -EIO;
+
 	if (!value)
 		return fuse_removexattr(inode, name);
 



  parent reply	other threads:[~2022-01-24 19:06 UTC|newest]

Thread overview: 162+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-24 18:41 [PATCH 4.9 000/157] 4.9.298-rc1 review Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 001/157] Bluetooth: bfusb: fix division by zero in send path Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 002/157] USB: core: Fix bug in resuming hubs handling of wakeup requests Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 003/157] USB: Fix "slab-out-of-bounds Write" bug in usb_hcd_poll_rh_status Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 004/157] mfd: intel-lpss: Fix too early PM enablement in the ACPI ->probe() Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 005/157] can: gs_usb: fix use of uninitialized variable, detach device on reception of invalid USB data Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 006/157] can: gs_usb: gs_can_start_xmit(): zero-initialize hf->{flags,reserved} Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 007/157] random: fix data race on crng_node_pool Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 008/157] random: fix data race on crng init time Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 009/157] staging: wlan-ng: Avoid bitwise vs logical OR warning in hfa384x_usb_throttlefn() Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 010/157] drm/i915: Avoid bitwise vs logical OR warning in snb_wm_latency_quirk() Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 011/157] media: uvcvideo: fix division by zero at stream start Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 012/157] rtlwifi: rtl8192cu: Fix WARNING when calling local_irq_restore() with interrupts enabled Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 013/157] HID: uhid: Fix worker destroying device without any protection Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 014/157] HID: wacom: Avoid using stale array indicies to read contact count Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 015/157] nfc: llcp: fix NULL error pointer dereference on sendmsg() after failed bind() Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 016/157] rtc: cmos: take rtc_lock while reading from CMOS Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 017/157] media: flexcop-usb: fix control-message timeouts Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 018/157] media: mceusb: " Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 019/157] media: em28xx: " Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 020/157] media: cpia2: " Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 021/157] media: s2255: " Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 022/157] media: dib0700: fix undefined behavior in tuner shutdown Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 023/157] media: redrat3: fix control-message timeouts Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 024/157] media: pvrusb2: " Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 025/157] media: stk1160: " Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 026/157] can: softing_cs: softingcs_probe(): fix memleak on registration failure Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 027/157] PCI: Add function 1 DMA alias quirk for Marvell 88SE9125 SATA controller Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 028/157] shmem: fix a race between shmem_unused_huge_shrink and shmem_evict_inode Greg Kroah-Hartman
2022-01-24 18:41 ` [PATCH 4.9 029/157] Bluetooth: cmtp: fix possible panic when cmtp_init_sockets() fails Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 030/157] wcn36xx: Indicate beacon not connection loss on MISSED_BEACON_IND Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 031/157] Bluetooth: stop proccessing malicious adv data Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 032/157] media: dmxdev: fix UAF when dvb_register_device() fails Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 033/157] crypto: qce - fix uaf on qce_ahash_register_one Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 034/157] tty: serial: atmel: Check return code of dmaengine_submit() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 035/157] tty: serial: atmel: Call dma_async_issue_pending() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 036/157] netfilter: bridge: add support for pppoe filtering Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 037/157] arm64: dts: qcom: msm8916: fix MMC controller aliases Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 038/157] drm/amdgpu: Fix a NULL pointer dereference in amdgpu_connector_lcd_native_mode() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 039/157] drm/radeon/radeon_kms: Fix a NULL pointer dereference in radeon_driver_open_kms() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 040/157] serial: amba-pl011: do not request memory region twice Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 041/157] floppy: Fix hang in watchdog when disk is ejected Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 042/157] media: dib8000: Fix a memleak in dib8000_init() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 043/157] media: saa7146: mxb: Fix a NULL pointer dereference in mxb_attach() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 044/157] media: si2157: Fix "warm" tuner state detection Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 045/157] media: msi001: fix possible null-ptr-deref in msi001_probe() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 046/157] usb: ftdi-elan: fix memory leak on device disconnect Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 047/157] pcmcia: rsrc_nonstatic: Fix a NULL pointer dereference in __nonstatic_find_io_region() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 048/157] pcmcia: rsrc_nonstatic: Fix a NULL pointer dereference in nonstatic_find_mem_region() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 049/157] ppp: ensure minimum packet size in ppp_write() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 050/157] fsl/fman: Check for null pointer after calling devm_ioremap Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 051/157] spi: spi-meson-spifc: Add missing pm_runtime_disable() in meson_spifc_probe Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 052/157] can: softing: softing_startstop(): fix set but not used variable warning Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 053/157] can: xilinx_can: xcan_probe(): check for error irq Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 054/157] pcmcia: fix setting of kthread task states Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 055/157] net: mcs7830: handle usb read errors properly Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 056/157] ext4: avoid trim error on fs with small groups Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 057/157] ALSA: jack: Add missing rwsem around snd_ctl_remove() calls Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 058/157] ALSA: PCM: " Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 059/157] ALSA: hda: " Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 060/157] RDMA/hns: Validate the pkey index Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 061/157] powerpc/prom_init: Fix improper check of prom_getprop() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 062/157] ALSA: oss: fix compile error when OSS_DEBUG is enabled Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 063/157] char/mwave: Adjust io port register size Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 064/157] uio: uio_dmem_genirq: Catch the Exception Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 065/157] scsi: ufs: Fix race conditions related to driver data Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 066/157] RDMA/core: Let ib_find_gid() continue search even after empty entry Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 067/157] dmaengine: pxa/mmp: stop referencing config->slave_id Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 068/157] ASoC: samsung: idma: Check of ioremap return value Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 069/157] misc: lattice-ecp3-config: Fix task hung when firmware load failed Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 070/157] mips: lantiq: add support for clk_set_parent() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 071/157] mips: bcm63xx: " Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 072/157] RDMA/cxgb4: Set queue pair state when being queried Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 073/157] Bluetooth: Fix debugfs entry leak in hci_register_dev() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 074/157] fs: dlm: filter user dlm messages for kernel locks Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 075/157] ar5523: Fix null-ptr-deref with unexpected WDCMSG_TARGET_START reply Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 076/157] usb: gadget: f_fs: Use stream_open() for endpoint files Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 077/157] HID: apple: Do not reset quirks when the Fn key is not found Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 078/157] media: b2c2: Add missing check in flexcop_pci_isr: Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 079/157] ARM: imx: rename DEBUG_IMX21_IMX27_UART to DEBUG_IMX27_UART Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 080/157] gpiolib: acpi: Do not set the IRQ type if the IRQ is already in use Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 081/157] HSI: core: Fix return freed object in hsi_new_client Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 082/157] mwifiex: Fix skb_over_panic in mwifiex_usb_recv() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 083/157] floppy: Add max size check for user space request Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 084/157] media: saa7146: hexium_orion: Fix a NULL pointer dereference in hexium_attach() Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 085/157] media: m920x: dont use stack on USB reads Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 086/157] iwlwifi: mvm: synchronize with FW after multicast commands Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 087/157] ath10k: Fix tx hanging Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 088/157] net: bonding: debug: avoid printing debug logs when bond is not notifying peers Greg Kroah-Hartman
2022-01-24 18:42 ` [PATCH 4.9 089/157] media: igorplugusb: receiver overflow should be reported Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 090/157] media: saa7146: hexium_gemini: Fix a NULL pointer dereference in hexium_attach() Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 091/157] usb: hub: Add delay for SuperSpeed hub resume to let links transit to U0 Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 092/157] ath9k: Fix out-of-bound memcpy in ath9k_hif_usb_rx_stream Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 093/157] um: registers: Rename function names to avoid conflicts and build problems Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 094/157] jffs2: GC deadlock reading a page that is used in jffs2_write_begin() Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 095/157] ACPICA: Utilities: Avoid deleting the same object twice in a row Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 096/157] ACPICA: Executer: Fix the REFCLASS_REFOF case in acpi_ex_opcode_1A_0T_1R() Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 097/157] btrfs: remove BUG_ON() in find_parent_nodes() Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 098/157] btrfs: remove BUG_ON(!eie) in find_parent_nodes Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 099/157] net: mdio: Demote probed message to debug print Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 100/157] dm btree: add a defensive bounds check to insert_at() Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 101/157] dm space map common: add bounds check to sm_ll_lookup_bitmap() Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 102/157] serial: pl010: Drop CR register reset on set_termios Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 103/157] serial: core: Keep mctrl register state and cached copy in sync Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 104/157] parisc: Avoid calling faulthandler_disabled() twice Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 105/157] powerpc/6xx: add missing of_node_put Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 106/157] powerpc/powernv: " Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 107/157] powerpc/cell: " Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 108/157] powerpc/btext: " Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 109/157] i2c: i801: Dont silently correct invalid transfer size Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 110/157] powerpc/smp: Move setup_profiling_timer() under CONFIG_PROFILING Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 111/157] i2c: mpc: Correct I2C reset procedure Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 112/157] w1: Misuse of get_user()/put_user() reported by sparse Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 113/157] ALSA: seq: Set upper limit of processed events Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 114/157] i2c: designware-pci: Fix to change data types of hcnt and lcnt parameters Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 115/157] MIPS: Octeon: Fix build errors using clang Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 116/157] scsi: sr: Dont use GFP_DMA Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 117/157] ASoC: mediatek: mt8173: fix device_node leak Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 118/157] power: bq25890: Enable continuous conversion for ADC at charging Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 119/157] ubifs: Error path in ubifs_remount_rw() seems to wrongly free write buffers Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 120/157] iwlwifi: mvm: Increase the scan timeout guard to 30 seconds Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 121/157] drm/etnaviv: limit submit sizes Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 122/157] ext4: set csum seed in tmp inode while migrating to extents Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 123/157] ext4: Fix BUG_ON in ext4_bread when write quota data Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 124/157] ext4: dont use the orphan list when migrating an inode Greg Kroah-Hartman
2022-01-24 18:43 ` Greg Kroah-Hartman [this message]
2022-01-24 18:43 ` [PATCH 4.9 126/157] fuse: fix live lock in fuse_iget() Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 127/157] drm/radeon: fix error handling in radeon_driver_open_kms Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 128/157] RDMA/hns: Modify the mapping attribute of doorbell to device Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 129/157] RDMA/rxe: Fix a typo in opcode name Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 130/157] powerpc/fsl/dts: Enable WA for erratum A-009885 on fman3l MDIO buses Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 131/157] net/fsl: xgmac_mdio: Fix incorrect iounmap when removing module Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 132/157] parisc: pdc_stable: Fix memory leak in pdcs_register_pathentries Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 133/157] af_unix: annote lockless accesses to unix_tot_inflight & gc_in_progress Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 134/157] net: axienet: Wait for PhyRstCmplt after core reset Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 135/157] net: axienet: fix number of TX ring slots for available check Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 136/157] netns: add schedule point in ops_exit_list() Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 137/157] libcxgb: Dont accidentally set RTO_ONLINK in cxgb_find_route() Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 138/157] dmaengine: at_xdmac: Dont start transactions at tx_submit level Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 139/157] dmaengine: at_xdmac: Print debug message after realeasing the lock Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 140/157] dmaengine: at_xdmac: Fix lld view setting Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 141/157] dmaengine: at_xdmac: Fix at_xdmac_lld struct definition Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 142/157] net_sched: restore "mpu xxx" handling Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 143/157] bcmgenet: add WOL IRQ check Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 144/157] scripts/dtc: dtx_diff: remove broken example from help text Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 145/157] lib82596: Fix IRQ check in sni_82596_probe Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 146/157] Revert "gup: document and work around "COW can break either way" issue" Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 147/157] gup: document and work around "COW can break either way" issue Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 148/157] drm/ttm/nouveau: dont call tt destroy callback on alloc failure Greg Kroah-Hartman
2022-01-24 18:43 ` [PATCH 4.9 149/157] gianfar: simplify FCS handling and fix memory leak Greg Kroah-Hartman
2022-01-24 18:44 ` [PATCH 4.9 150/157] gianfar: fix jumbo packets+napi+rx overrun crash Greg Kroah-Hartman
2022-01-24 18:44 ` [PATCH 4.9 151/157] cipso,calipso: resolve a number of problems with the DOI refcounts Greg Kroah-Hartman
2022-01-24 18:44 ` [PATCH 4.9 152/157] rbtree: cache leftmost node internally Greg Kroah-Hartman
2022-01-24 18:44 ` [PATCH 4.9 153/157] lib/timerqueue: Rely on rbtree semantics for next timer Greg Kroah-Hartman
2022-01-24 18:44 ` [PATCH 4.9 154/157] mm: add follow_pte_pmd() Greg Kroah-Hartman
2022-01-24 18:44 ` [PATCH 4.9 155/157] KVM: do not assume PTE is writable after follow_pfn Greg Kroah-Hartman
2022-01-24 18:44 ` [PATCH 4.9 156/157] KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped() Greg Kroah-Hartman
2022-01-24 18:44 ` [PATCH 4.9 157/157] KVM: do not allow mapping valid but non-reference-counted pages Greg Kroah-Hartman
2022-01-25  1:50 ` [PATCH 4.9 000/157] 4.9.298-rc1 review Shuah Khan
2022-01-25  3:35 ` Florian Fainelli
2022-01-25 12:54 ` Naresh Kamboju
2022-01-25 14:34   ` Greg Kroah-Hartman

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=20220124183936.738513760@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=ben@decadent.org.uk \
    --cc=jack@suse.cz \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mszeredi@redhat.com \
    --cc=stable@vger.kernel.org \
    --cc=syzbot+f427adf9324b92652ccc@syzkaller.appspotmail.com \
    /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;
as well as URLs for NNTP newsgroup(s).