All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ben Hutchings <ben@decadent.org.uk>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: akpm@linux-foundation.org
Subject: [PATCH 3.16 001/306] Revert "fs: Give dentry to inode_change_ok() instead of inode"
Date: Wed, 15 Feb 2017 22:41:40 +0000	[thread overview]
Message-ID: <lsq.1487198500.626956962@decadent.org.uk> (raw)
In-Reply-To: <lsq.1487198498.99718322@decadent.org.uk>

3.16.40-rc1 review patch.  If anyone has any objections, please let me know.

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

From: Ben Hutchings <ben@decadent.org.uk>

This reverts commit be9df699432235753c3824b0f5a27d46de7fdc9e, which was
commit 31051c85b5e2aaaf6315f74c72a732673632a905 upstream.  The backport
breaks fuse and makes a mess of xfs, which can be improved by picking
further upstream commits as I should have done in the first place.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
--- a/Documentation/filesystems/porting
+++ b/Documentation/filesystems/porting
@@ -287,8 +287,8 @@ implementing on-disk size changes.  Star
 and vmtruncate, and the reorder the vmtruncate + foofs_vmtruncate sequence to
 be in order of zeroing blocks using block_truncate_page or similar helpers,
 size update and on finally on-disk truncation which should not fail.
-setattr_prepare (which used to be inode_change_ok) now includes the size checks
-for ATTR_SIZE and must be called in the beginning of ->setattr unconditionally.
+inode_change_ok now includes the size checks for ATTR_SIZE and must be called
+in the beginning of ->setattr unconditionally.
 
 [mandatory]
 
--- a/drivers/staging/lustre/lustre/llite/llite_lib.c
+++ b/drivers/staging/lustre/lustre/llite/llite_lib.c
@@ -1386,7 +1386,7 @@ int ll_setattr_raw(struct dentry *dentry
 		attr->ia_valid |= ATTR_MTIME | ATTR_CTIME;
 	}
 
-	/* POSIX: check before ATTR_*TIME_SET set (from setattr_prepare) */
+	/* POSIX: check before ATTR_*TIME_SET set (from inode_change_ok) */
 	if (attr->ia_valid & TIMES_SET_FLAGS) {
 		if ((!uid_eq(current_fsuid(), inode->i_uid)) &&
 		    !capable(CFS_CAP_FOWNER))
--- a/fs/9p/vfs_inode.c
+++ b/fs/9p/vfs_inode.c
@@ -1094,7 +1094,7 @@ static int v9fs_vfs_setattr(struct dentr
 	struct p9_wstat wstat;
 
 	p9_debug(P9_DEBUG_VFS, "\n");
-	retval = setattr_prepare(dentry, iattr);
+	retval = inode_change_ok(dentry->d_inode, iattr);
 	if (retval)
 		return retval;
 
--- a/fs/9p/vfs_inode_dotl.c
+++ b/fs/9p/vfs_inode_dotl.c
@@ -560,7 +560,7 @@ int v9fs_vfs_setattr_dotl(struct dentry
 
 	p9_debug(P9_DEBUG_VFS, "\n");
 
-	retval = setattr_prepare(dentry, iattr);
+	retval = inode_change_ok(inode, iattr);
 	if (retval)
 		return retval;
 
--- a/fs/adfs/inode.c
+++ b/fs/adfs/inode.c
@@ -303,7 +303,7 @@ adfs_notify_change(struct dentry *dentry
 	unsigned int ia_valid = attr->ia_valid;
 	int error;
 	
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 
 	/*
 	 * we can't change the UID or GID of any file -
--- a/fs/affs/inode.c
+++ b/fs/affs/inode.c
@@ -222,7 +222,7 @@ affs_notify_change(struct dentry *dentry
 
 	pr_debug("notify_change(%lu,0x%x)\n", inode->i_ino, attr->ia_valid);
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode,attr);
 	if (error)
 		goto out;
 
--- a/fs/attr.c
+++ b/fs/attr.c
@@ -17,22 +17,19 @@
 #include <linux/ima.h>
 
 /**
- * setattr_prepare - check if attribute changes to a dentry are allowed
- * @dentry:	dentry to check
+ * inode_change_ok - check if attribute changes to an inode are allowed
+ * @inode:	inode to check
  * @attr:	attributes to change
  *
  * Check if we are allowed to change the attributes contained in @attr
- * in the given dentry.  This includes the normal unix access permission
- * checks, as well as checks for rlimits and others. The function also clears
- * SGID bit from mode if user is not allowed to set it. Also file capabilities
- * and IMA extended attributes are cleared if ATTR_KILL_PRIV is set.
+ * in the given inode.  This includes the normal unix access permission
+ * checks, as well as checks for rlimits and others.
  *
  * Should be called as the first thing in ->setattr implementations,
  * possibly after taking additional locks.
  */
-int setattr_prepare(struct dentry *dentry, struct iattr *attr)
+int inode_change_ok(const struct inode *inode, struct iattr *attr)
 {
-	struct inode *inode = d_inode(dentry);
 	unsigned int ia_valid = attr->ia_valid;
 
 	/*
@@ -92,7 +89,7 @@ kill_priv:
 
 	return 0;
 }
-EXPORT_SYMBOL(setattr_prepare);
+EXPORT_SYMBOL(inode_change_ok);
 
 /**
  * inode_newsize_ok - may this inode be truncated to a given size
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -4690,7 +4690,7 @@ static int btrfs_setattr(struct dentry *
 	if (btrfs_root_readonly(root))
 		return -EROFS;
 
-	err = setattr_prepare(dentry, attr);
+	err = inode_change_ok(inode, attr);
 	if (err)
 		return err;
 
--- a/fs/ceph/inode.c
+++ b/fs/ceph/inode.c
@@ -1708,7 +1708,7 @@ int ceph_setattr(struct dentry *dentry,
 	if (ceph_snap(inode) != CEPH_NOSNAP)
 		return -EROFS;
 
-	err = setattr_prepare(dentry, attr);
+	err = inode_change_ok(inode, attr);
 	if (err != 0)
 		return err;
 
--- a/fs/cifs/inode.c
+++ b/fs/cifs/inode.c
@@ -2074,7 +2074,7 @@ cifs_setattr_unix(struct dentry *direntr
 	if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_NO_PERM)
 		attrs->ia_valid |= ATTR_FORCE;
 
-	rc = setattr_prepare(direntry, attrs);
+	rc = inode_change_ok(inode, attrs);
 	if (rc < 0)
 		goto out;
 
@@ -2215,7 +2215,7 @@ cifs_setattr_nounix(struct dentry *diren
 	if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_NO_PERM)
 		attrs->ia_valid |= ATTR_FORCE;
 
-	rc = setattr_prepare(direntry, attrs);
+	rc = inode_change_ok(inode, attrs);
 	if (rc < 0) {
 		free_xid(xid);
 		return rc;
--- a/fs/ecryptfs/inode.c
+++ b/fs/ecryptfs/inode.c
@@ -952,7 +952,7 @@ static int ecryptfs_setattr(struct dentr
 	}
 	mutex_unlock(&crypt_stat->cs_mutex);
 
-	rc = setattr_prepare(dentry, ia);
+	rc = inode_change_ok(inode, ia);
 	if (rc)
 		goto out;
 	if (ia->ia_valid & ATTR_SIZE) {
--- a/fs/exofs/inode.c
+++ b/fs/exofs/inode.c
@@ -1039,7 +1039,7 @@ int exofs_setattr(struct dentry *dentry,
 	if (unlikely(error))
 		return error;
 
-	error = setattr_prepare(dentry, iattr);
+	error = inode_change_ok(inode, iattr);
 	if (unlikely(error))
 		return error;
 
--- a/fs/ext2/inode.c
+++ b/fs/ext2/inode.c
@@ -1547,7 +1547,7 @@ int ext2_setattr(struct dentry *dentry,
 	struct inode *inode = dentry->d_inode;
 	int error;
 
-	error = setattr_prepare(dentry, iattr);
+	error = inode_change_ok(inode, iattr);
 	if (error)
 		return error;
 
--- a/fs/ext3/inode.c
+++ b/fs/ext3/inode.c
@@ -3244,7 +3244,7 @@ int ext3_setattr(struct dentry *dentry,
 	int error, rc = 0;
 	const unsigned int ia_valid = attr->ia_valid;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -4672,7 +4672,7 @@ int ext4_setattr(struct dentry *dentry,
 	int orphan = 0;
 	const unsigned int ia_valid = attr->ia_valid;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/f2fs/file.c
+++ b/fs/f2fs/file.c
@@ -500,7 +500,7 @@ int f2fs_setattr(struct dentry *dentry,
 	struct f2fs_inode_info *fi = F2FS_I(inode);
 	int err;
 
-	err = setattr_prepare(dentry, attr);
+	err = inode_change_ok(inode, attr);
 	if (err)
 		return err;
 
--- a/fs/fat/file.c
+++ b/fs/fat/file.c
@@ -394,7 +394,7 @@ int fat_setattr(struct dentry *dentry, s
 			attr->ia_valid &= ~TIMES_SET_FLAGS;
 	}
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	attr->ia_valid = ia_valid;
 	if (error) {
 		if (sbi->options.quiet)
--- a/fs/fuse/dir.c
+++ b/fs/fuse/dir.c
@@ -1704,10 +1704,9 @@ int fuse_flush_times(struct inode *inode
  * vmtruncate() doesn't allow for this case, so do the rlimit checking
  * and the actual truncation by hand.
  */
-int fuse_do_setattr(struct dentry *dentry, struct iattr *attr,
+int fuse_do_setattr(struct inode *inode, struct iattr *attr,
 		    struct file *file)
 {
-	struct inode *inode = dentry->d_inode;
 	struct fuse_conn *fc = get_fuse_conn(inode);
 	struct fuse_inode *fi = get_fuse_inode(inode);
 	struct fuse_req *req;
@@ -1722,7 +1721,7 @@ int fuse_do_setattr(struct dentry *dentr
 	if (!(fc->flags & FUSE_DEFAULT_PERMISSIONS))
 		attr->ia_valid |= ATTR_FORCE;
 
-	err = setattr_prepare(dentry, attr);
+	err = inode_change_ok(inode, attr);
 	if (err)
 		return err;
 
@@ -1827,9 +1826,9 @@ static int fuse_setattr(struct dentry *e
 		return -EACCES;
 
 	if (attr->ia_valid & ATTR_FILE)
-		return fuse_do_setattr(entry, attr, attr->ia_file);
+		return fuse_do_setattr(inode, attr, attr->ia_file);
 	else
-		return fuse_do_setattr(entry, attr, NULL);
+		return fuse_do_setattr(inode, attr, NULL);
 }
 
 static int fuse_getattr(struct vfsmount *mnt, struct dentry *entry,
--- a/fs/fuse/fuse_i.h
+++ b/fs/fuse/fuse_i.h
@@ -894,7 +894,7 @@ bool fuse_write_update_size(struct inode
 int fuse_flush_times(struct inode *inode, struct fuse_file *ff);
 int fuse_write_inode(struct inode *inode, struct writeback_control *wbc);
 
-int fuse_do_setattr(struct dentry *dentry, struct iattr *attr,
+int fuse_do_setattr(struct inode *inode, struct iattr *attr,
 		    struct file *file);
 
 #endif /* _FS_FUSE_I_H */
--- a/fs/gfs2/inode.c
+++ b/fs/gfs2/inode.c
@@ -1774,7 +1774,7 @@ static int gfs2_setattr(struct dentry *d
 	if (IS_IMMUTABLE(inode) || IS_APPEND(inode))
 		goto out;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		goto out;
 
--- a/fs/hfs/inode.c
+++ b/fs/hfs/inode.c
@@ -604,7 +604,7 @@ int hfs_inode_setattr(struct dentry *den
 	struct hfs_sb_info *hsb = HFS_SB(inode->i_sb);
 	int error;
 
-	error = setattr_prepare(dentry, attr); /* basic permission checks */
+	error = inode_change_ok(inode, attr); /* basic permission checks */
 	if (error)
 		return error;
 
--- a/fs/hfsplus/inode.c
+++ b/fs/hfsplus/inode.c
@@ -247,7 +247,7 @@ static int hfsplus_setattr(struct dentry
 	struct inode *inode = dentry->d_inode;
 	int error;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/hostfs/hostfs_kern.c
+++ b/fs/hostfs/hostfs_kern.c
@@ -792,7 +792,7 @@ static int hostfs_setattr(struct dentry
 
 	int fd = HOSTFS_I(inode)->fd;
 
-	err = setattr_prepare(dentry, attr);
+	err = inode_change_ok(inode, attr);
 	if (err)
 		return err;
 
--- a/fs/hpfs/inode.c
+++ b/fs/hpfs/inode.c
@@ -272,7 +272,7 @@ int hpfs_setattr(struct dentry *dentry,
 	if ((attr->ia_valid & ATTR_SIZE) && attr->ia_size > inode->i_size)
 		goto out_unlock;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		goto out_unlock;
 
--- a/fs/hugetlbfs/inode.c
+++ b/fs/hugetlbfs/inode.c
@@ -429,7 +429,7 @@ static int hugetlbfs_setattr(struct dent
 
 	BUG_ON(!inode);
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/jffs2/fs.c
+++ b/fs/jffs2/fs.c
@@ -193,7 +193,7 @@ int jffs2_setattr(struct dentry *dentry,
 	struct inode *inode = dentry->d_inode;
 	int rc;
 
-	rc = setattr_prepare(dentry, iattr);
+	rc = inode_change_ok(inode, iattr);
 	if (rc)
 		return rc;
 
--- a/fs/jfs/file.c
+++ b/fs/jfs/file.c
@@ -103,7 +103,7 @@ int jfs_setattr(struct dentry *dentry, s
 	struct inode *inode = dentry->d_inode;
 	int rc;
 
-	rc = setattr_prepare(dentry, iattr);
+	rc = inode_change_ok(inode, iattr);
 	if (rc)
 		return rc;
 
--- a/fs/kernfs/inode.c
+++ b/fs/kernfs/inode.c
@@ -131,7 +131,7 @@ int kernfs_iop_setattr(struct dentry *de
 		return -EINVAL;
 
 	mutex_lock(&kernfs_mutex);
-	error = setattr_prepare(dentry, iattr);
+	error = inode_change_ok(inode, iattr);
 	if (error)
 		goto out;
 
--- a/fs/libfs.c
+++ b/fs/libfs.c
@@ -371,7 +371,7 @@ int simple_setattr(struct dentry *dentry
 	struct inode *inode = dentry->d_inode;
 	int error;
 
-	error = setattr_prepare(dentry, iattr);
+	error = inode_change_ok(inode, iattr);
 	if (error)
 		return error;
 
--- a/fs/logfs/file.c
+++ b/fs/logfs/file.c
@@ -244,7 +244,7 @@ static int logfs_setattr(struct dentry *
 	struct inode *inode = dentry->d_inode;
 	int err = 0;
 
-	err = setattr_prepare(dentry, attr);
+	err = inode_change_ok(inode, attr);
 	if (err)
 		return err;
 
--- a/fs/minix/file.c
+++ b/fs/minix/file.c
@@ -28,7 +28,7 @@ static int minix_setattr(struct dentry *
 	struct inode *inode = dentry->d_inode;
 	int error;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/ncpfs/inode.c
+++ b/fs/ncpfs/inode.c
@@ -885,7 +885,7 @@ int ncp_notify_change(struct dentry *den
 	/* ageing the dentry to force validation */
 	ncp_age_dentry(server, dentry);
 
-	result = setattr_prepare(dentry, attr);
+	result = inode_change_ok(inode, attr);
 	if (result < 0)
 		goto out;
 
--- a/fs/nfsd/vfs.c
+++ b/fs/nfsd/vfs.c
@@ -300,19 +300,17 @@ commit_metadata(struct svc_fh *fhp)
  * NFS semantics and what Linux expects.
  */
 static void
-nfsd_sanitize_attrs(struct dentry *dentry, struct iattr *iap)
+nfsd_sanitize_attrs(struct inode *inode, struct iattr *iap)
 {
-	struct inode *inode = dentry->d_inode;
-
 	/*
 	 * NFSv2 does not differentiate between "set-[ac]time-to-now"
 	 * which only requires access, and "set-[ac]time-to-X" which
 	 * requires ownership.
 	 * So if it looks like it might be "set both to the same time which
-	 * is close to now", and if setattr_prepare fails, then we
+	 * is close to now", and if inode_change_ok fails, then we
 	 * convert to "set to now" instead of "set to explicit time"
 	 *
-	 * We only call setattr_prepare as the last test as technically
+	 * We only call inode_change_ok as the last test as technically
 	 * it is not an interface that we should be using.
 	 */
 #define BOTH_TIME_SET (ATTR_ATIME_SET | ATTR_MTIME_SET)
@@ -330,7 +328,7 @@ nfsd_sanitize_attrs(struct dentry *dentr
 		if (delta < 0)
 			delta = -delta;
 		if (delta < MAX_TOUCH_TIME_ERROR &&
-		    setattr_prepare(dentry, iap) != 0) {
+		    inode_change_ok(inode, iap) != 0) {
 			/*
 			 * Turn off ATTR_[AM]TIME_SET but leave ATTR_[AM]TIME.
 			 * This will cause notify_change to set these times
@@ -437,7 +435,7 @@ nfsd_setattr(struct svc_rqst *rqstp, str
 	if (!iap->ia_valid)
 		goto out;
 
-	nfsd_sanitize_attrs(dentry, iap);
+	nfsd_sanitize_attrs(inode, iap);
 
 	/*
 	 * The size case is special, it changes the file in addition to the
--- a/fs/nilfs2/inode.c
+++ b/fs/nilfs2/inode.c
@@ -839,7 +839,7 @@ int nilfs_setattr(struct dentry *dentry,
 	struct super_block *sb = inode->i_sb;
 	int err;
 
-	err = setattr_prepare(dentry, iattr);
+	err = inode_change_ok(inode, iattr);
 	if (err)
 		return err;
 
--- a/fs/ntfs/inode.c
+++ b/fs/ntfs/inode.c
@@ -2891,7 +2891,7 @@ int ntfs_setattr(struct dentry *dentry,
 	int err;
 	unsigned int ia_valid = attr->ia_valid;
 
-	err = setattr_prepare(dentry, attr);
+	err = inode_change_ok(vi, attr);
 	if (err)
 		goto out;
 	/* We do not support NTFS ACLs yet. */
--- a/fs/ocfs2/dlmfs/dlmfs.c
+++ b/fs/ocfs2/dlmfs/dlmfs.c
@@ -211,7 +211,7 @@ static int dlmfs_file_setattr(struct den
 	struct inode *inode = dentry->d_inode;
 
 	attr->ia_valid &= ~ATTR_SIZE;
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/ocfs2/file.c
+++ b/fs/ocfs2/file.c
@@ -1144,7 +1144,7 @@ int ocfs2_setattr(struct dentry *dentry,
 	if (!(attr->ia_valid & OCFS2_VALID_ATTRS))
 		return 0;
 
-	status = setattr_prepare(dentry, attr);
+	status = inode_change_ok(inode, attr);
 	if (status)
 		return status;
 
--- a/fs/omfs/file.c
+++ b/fs/omfs/file.c
@@ -351,7 +351,7 @@ static int omfs_setattr(struct dentry *d
 	struct inode *inode = dentry->d_inode;
 	int error;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/proc/base.c
+++ b/fs/proc/base.c
@@ -536,7 +536,7 @@ int proc_setattr(struct dentry *dentry,
 	if (attr->ia_valid & ATTR_MODE)
 		return -EPERM;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/proc/generic.c
+++ b/fs/proc/generic.c
@@ -41,7 +41,7 @@ static int proc_notify_change(struct den
 	struct proc_dir_entry *de = PDE(inode);
 	int error;
 
-	error = setattr_prepare(dentry, iattr);
+	error = inode_change_ok(inode, iattr);
 	if (error)
 		return error;
 
--- a/fs/proc/proc_sysctl.c
+++ b/fs/proc/proc_sysctl.c
@@ -753,7 +753,7 @@ static int proc_sys_setattr(struct dentr
 	if (attr->ia_valid & (ATTR_MODE | ATTR_UID | ATTR_GID))
 		return -EPERM;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/ramfs/file-nommu.c
+++ b/fs/ramfs/file-nommu.c
@@ -163,7 +163,7 @@ static int ramfs_nommu_setattr(struct de
 	int ret = 0;
 
 	/* POSIX UID/GID verification for setting inode attributes */
-	ret = setattr_prepare(dentry, ia);
+	ret = inode_change_ok(inode, ia);
 	if (ret)
 		return ret;
 
--- a/fs/reiserfs/inode.c
+++ b/fs/reiserfs/inode.c
@@ -3312,7 +3312,7 @@ int reiserfs_setattr(struct dentry *dent
 	unsigned int ia_valid;
 	int error;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/sysv/file.c
+++ b/fs/sysv/file.c
@@ -35,7 +35,7 @@ static int sysv_setattr(struct dentry *d
 	struct inode *inode = dentry->d_inode;
 	int error;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/ubifs/file.c
+++ b/fs/ubifs/file.c
@@ -1262,7 +1262,7 @@ int ubifs_setattr(struct dentry *dentry,
 
 	dbg_gen("ino %lu, mode %#x, ia_valid %#x",
 		inode->i_ino, inode->i_mode, attr->ia_valid);
-	err = setattr_prepare(dentry, attr);
+	err = inode_change_ok(inode, attr);
 	if (err)
 		return err;
 
--- a/fs/udf/file.c
+++ b/fs/udf/file.c
@@ -269,7 +269,7 @@ static int udf_setattr(struct dentry *de
 	struct inode *inode = dentry->d_inode;
 	int error;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/ufs/truncate.c
+++ b/fs/ufs/truncate.c
@@ -496,7 +496,7 @@ int ufs_setattr(struct dentry *dentry, s
 	unsigned int ia_valid = attr->ia_valid;
 	int error;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 
--- a/fs/utimes.c
+++ b/fs/utimes.c
@@ -81,7 +81,7 @@ static int utimes_common(struct path *pa
 			newattrs.ia_valid |= ATTR_MTIME_SET;
 		}
 		/*
-		 * Tell setattr_prepare(), that this is an explicit time
+		 * Tell inode_change_ok(), that this is an explicit time
 		 * update, even if neither ATTR_ATIME_SET nor ATTR_MTIME_SET
 		 * were used.
 		 */
@@ -90,7 +90,7 @@ static int utimes_common(struct path *pa
 		/*
 		 * If times is NULL (or both times are UTIME_NOW),
 		 * then we need to check permissions, because
-		 * setattr_prepare() won't do it.
+		 * inode_change_ok() won't do it.
 		 */
 		error = -EACCES;
                 if (IS_IMMUTABLE(inode))
--- a/fs/xfs/xfs_acl.c
+++ b/fs/xfs/xfs_acl.c
@@ -244,8 +244,7 @@ xfs_set_mode(struct inode *inode, umode_
 		iattr.ia_mode = mode;
 		iattr.ia_ctime = current_fs_time(inode->i_sb);
 
-		error = -xfs_setattr_nonsize(NULL, XFS_I(inode), &iattr,
-					     XFS_ATTR_NOACL);
+		error = -xfs_setattr_nonsize(XFS_I(inode), &iattr, XFS_ATTR_NOACL);
 	}
 
 	return error;
--- a/fs/xfs/xfs_file.c
+++ b/fs/xfs/xfs_file.c
@@ -862,7 +862,7 @@ xfs_file_fallocate(
 
 		iattr.ia_valid = ATTR_SIZE;
 		iattr.ia_size = new_size;
-		error = xfs_setattr_size(file->f_dentry, &iattr);
+		error = xfs_setattr_size(ip, &iattr);
 	}
 
 out_unlock:
--- a/fs/xfs/xfs_ioctl.c
+++ b/fs/xfs/xfs_ioctl.c
@@ -717,7 +717,7 @@ xfs_ioc_space(
 		iattr.ia_valid = ATTR_SIZE;
 		iattr.ia_size = bf->l_start;
 
-		error = xfs_setattr_size(filp->f_dentry, &iattr);
+		error = xfs_setattr_size(ip, &iattr);
 		if (!error)
 			clrprealloc = true;
 		break;
--- a/fs/xfs/xfs_iops.c
+++ b/fs/xfs/xfs_iops.c
@@ -527,7 +527,6 @@ xfs_setattr_time(
 
 int
 xfs_setattr_nonsize(
-	struct dentry		*dentry,
 	struct xfs_inode	*ip,
 	struct iattr		*iattr,
 	int			flags)
@@ -552,7 +551,7 @@ xfs_setattr_nonsize(
 		if (XFS_FORCED_SHUTDOWN(mp))
 			return XFS_ERROR(EIO);
 
-		error = -setattr_prepare(dentry, iattr);
+		error = -inode_change_ok(inode, iattr);
 		if (error)
 			return XFS_ERROR(error);
 	}
@@ -735,12 +734,11 @@ out_dqrele:
  */
 int
 xfs_setattr_size(
-	struct dentry		*dentry,
+	struct xfs_inode	*ip,
 	struct iattr		*iattr)
 {
-	struct inode		*inode = dentry->d_inode;
-	struct xfs_inode	*ip = XFS_I(inode);
 	struct xfs_mount	*mp = ip->i_mount;
+	struct inode		*inode = VFS_I(ip);
 	xfs_off_t		oldsize, newsize;
 	struct xfs_trans	*tp;
 	int			error;
@@ -756,7 +754,7 @@ xfs_setattr_size(
 	if (XFS_FORCED_SHUTDOWN(mp))
 		return XFS_ERROR(EIO);
 
-	error = -setattr_prepare(dentry, iattr);
+	error = -inode_change_ok(inode, iattr);
 	if (error)
 		return XFS_ERROR(error);
 
@@ -780,7 +778,7 @@ xfs_setattr_size(
 		 * Use the regular setattr path to update the timestamps.
 		 */
 		iattr->ia_valid &= ~ATTR_SIZE;
-		return xfs_setattr_nonsize(dentry, ip, iattr, 0);
+		return xfs_setattr_nonsize(ip, iattr, 0);
 	}
 
 	/*
@@ -941,10 +939,10 @@ xfs_vn_setattr(
 
 	if (iattr->ia_valid & ATTR_SIZE) {
 		xfs_ilock(ip, XFS_IOLOCK_EXCL | XFS_MMAPLOCK_EXCL);
-		error = xfs_setattr_size(dentry, iattr);
+		error = xfs_setattr_size(ip, iattr);
 		xfs_iunlock(ip, XFS_IOLOCK_EXCL | XFS_MMAPLOCK_EXCL);
 	} else {
-		error = xfs_setattr_nonsize(dentry, ip, iattr, 0);
+		error = xfs_setattr_nonsize(ip, iattr, 0);
 	}
 
 	return -error;
--- a/fs/xfs/xfs_iops.h
+++ b/fs/xfs/xfs_iops.h
@@ -32,8 +32,8 @@ extern void xfs_setup_inode(struct xfs_i
  */
 #define XFS_ATTR_NOACL		0x01	/* Don't call posix_acl_chmod */
 
-extern int xfs_setattr_nonsize(struct dentry *dentry, struct xfs_inode *ip,
-			       struct iattr *vap, int flags);
-extern int xfs_setattr_size(struct dentry *dentry, struct iattr *vap);
+extern int xfs_setattr_nonsize(struct xfs_inode *ip, struct iattr *vap,
+			       int flags);
+extern int xfs_setattr_size(struct xfs_inode *ip, struct iattr *vap);
 
 #endif /* __XFS_IOPS_H__ */
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -2627,7 +2627,7 @@ extern int buffer_migrate_page(struct ad
 #define buffer_migrate_page NULL
 #endif
 
-extern int setattr_prepare(struct dentry *, struct iattr *);
+extern int inode_change_ok(const struct inode *, struct iattr *);
 extern int inode_newsize_ok(const struct inode *, loff_t offset);
 extern void setattr_copy(struct inode *inode, const struct iattr *attr);
 
--- a/mm/shmem.c
+++ b/mm/shmem.c
@@ -540,7 +540,7 @@ static int shmem_setattr(struct dentry *
 	struct inode *inode = dentry->d_inode;
 	int error;
 
-	error = setattr_prepare(dentry, attr);
+	error = inode_change_ok(inode, attr);
 	if (error)
 		return error;
 

  parent reply	other threads:[~2017-02-15 23:20 UTC|newest]

Thread overview: 316+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-15 22:41 [PATCH 3.16 000/306] 3.16.40-rc1 review Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 119/306] Do not send SMB3 SET_INFO request if nothing is changing Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 171/306] tty: limit terminal size to 4M chars Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 232/306] usb: chipidea: move the lock initialization to core file Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 087/306] staging: rtl8188eu: fix double unlock error in rtw_resume_process() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 206/306] i2c: core: fix NULL pointer dereference under race condition Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 167/306] scsi: scsi_debug: Fix memory leak if LBP enabled and module is unloaded Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 191/306] netfilter: nf_tables: destroy the set if fail to add transaction Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 208/306] iio: hid-sensors: Increase the precision of scale to fix wrong reading interpretation Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 188/306] m68k: Fix ndelay() macro Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 222/306] ALSA: hda - Fix mic regression by ASRock mobo fixup Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 040/306] ipv4: accept u8 in IP_TOS ancillary data Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 146/306] target: Don't override EXTENDED_COPY xcopy_pt_cmd SCSI status code Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 091/306] ubi: Fix Fastmap's update_vol() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 063/306] netfilter: nft_exthdr: Add size check on u8 nft_exthdr attributes Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 077/306] drm/radeon/si/dpm: fix phase shedding setup Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 261/306] mpi: Fix NULL ptr dereference in mpi_powm() [ver #3] Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 122/306] mmc: core: Annotate cmd_hdr as __le32 Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 061/306] powerpc/eeh: Null check uses of eeh_pe_bus_get Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 129/306] scsi: zfcp: spin_lock_irqsave() is not nestable Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 202/306] firewire: net: fix fragmented datagram_size off-by-one Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 250/306] net: ethernet: ti: cpsw: fix secondary-emac probe error path Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 247/306] cfg80211: limit scan results cache size Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 224/306] coredump: fix unfreezable coredumping task Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 066/306] blkcg: Annotate blkg_hint correctly Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 136/306] arm64: kernel: Init MDCR_EL2 even in the absence of a PMU Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 102/306] Input: elantech - add Fujitsu Lifebook E556 to force crc_enabled Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 031/306] pwm: Unexport children before chip removal Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 157/306] mei: txe: don't clean an unprocessed interrupt cause Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 086/306] staging: rtl8188eu: fix missing unlock on error in rtw_resume_process() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 126/306] jbd2: fix incorrect unlock on j_list_lock Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 159/306] hv: do not lose pending heartbeat vmbus packets Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 256/306] x86/traps: Ignore high word of regs->cs in early_fixup_exception() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 054/306] powerpc/nvram: Fix an incorrect partition merge Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 192/306] mei: bus: fix received data size check in NFC fixup Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 127/306] drm/radeon: change vblank_time's calculation method to reduce computational error Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 168/306] scsi: arcmsr: Send SYNCHRONIZE_CACHE command to firmware Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 103/306] mm/hugetlb: fix memory offline with hugepage size > memory block size Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 160/306] ALSA: hda - Fix surround output pins for ASRock B150M mobo Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 178/306] KVM: x86: fix wbinvd_dirty_mask use-after-free Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 162/306] drm/radeon: drop register readback in cayman_cp_int_cntl_setup Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 134/306] memstick: rtsx_usb_ms: Manage runtime PM when accessing the device Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 189/306] iommu/vt-d: Fix IOMMU lookup for SR-IOV Virtual Functions Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 183/306] packet: on direct_xmit, limit tso and csum to supported devices Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 124/306] scsi: Fix use-after-free Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 207/306] iio: hid-sensors: Fix compilation warning Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 227/306] neigh: check error pointer instead of NULL for ipv4_neigh_lookup() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 210/306] drivers: staging: nvec: remove bogus reset command for PS/2 interface Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 263/306] parisc: Also flush data TLB in flush_icache_page_asm Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 221/306] PM / sleep: don't suspend parent when async child suspend_{noirq, late} fails Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 042/306] phy: sun4i-usb: Use spinlock to guard phyctl register access Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 094/306] mfd: wm8350-i2c: Make sure the i2c regmap functions are compiled Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 245/306] mwifiex: printk() overflow with 32-byte SSIDs Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 139/306] isofs: Do not return EACCES for unknown filesystems Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 152/306] arm64: KVM: Take S1 walks into account when determining S2 write faults Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 099/306] netlink: do not enter direct reclaim from netlink_dump() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 259/306] x86/apic/uv: Silence a shift wrapping warning Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 229/306] Fix USB CB/CBI storage devices with CONFIG_VMAP_STACK=y Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 254/306] l2tp: fix racy SOCK_ZAPPED flag check in l2tp_ip{,6}_bind() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 018/306] clk: divider: Fix clk_divider_round_rate() to use clk_readl() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 184/306] net/mlx4_core: Fix the resource-type enum in res tracker to conform to FW spec Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 073/306] KVM: PPC: Book3s PR: Allow access to unprivileged MMCR2 register Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 015/306] zfcp: fix D_ID field with actual value on tracing SAN responses Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 111/306] ipc: remove use of seq_printf return value Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 052/306] iommu/amd: Free domain id when free a domain of struct dma_ops_domain Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 101/306] IB/srp: Fix infinite loop when FMR sg[0].offset != 0 Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 019/306] x86/dumpstack: Fix x86_32 kernel_stack_pointer() previous stack access Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 180/306] ubifs: Fix regression in ubifs_readdir() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 130/306] mmc: sdhci: cast unsigned int to unsigned long long to avoid unexpeted error Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 128/306] ipv6: correctly add local routes when lo goes up Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 135/306] USB: serial: ftdi_sio: add support for Infineon TriBoard TC2X7 Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 045/306] dm mpath: check if path's request_queue is dying in activate_path() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 225/306] dib0700: fix nec repeat handling Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 198/306] gpio/mvebu: Use irq_domain_add_linear Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 166/306] drm/radeon/si_dpm: workaround for SI kickers Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 117/306] SMB3: GUIDs should be constructed as random but valid uuids Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 248/306] net: ethernet: ti: cpsw: fix bad register access in probe error path Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 170/306] tty: vt, fix bogus division in csi_J Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 002/306] xfs: Propagate dentry down to inode_change_ok() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 039/306] pstore/ram: Use memcpy_fromio() to save old buffer Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 105/306] vfs,mm: fix a dead loop in truncate_inode_pages_range() Ben Hutchings
2017-02-16  1:25   ` Wei Fang
2017-02-16 16:01     ` Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 014/306] zfcp: restore tracing of handle for port and LUN with HBA records Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 138/306] ALSA: hda - allow 40 bit DMA mask for NVidia devices Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 200/306] ip6_tunnel: Clear IP6CB in ip6tunnel_xmit() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 067/306] regulator: tps65910: Work around silicon erratum SWCZ010 Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 204/306] HID: usbhid: add ATEN CS962 to list of quirky devices Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 075/306] NFSv4: Open state recovery must account for file permission changes Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 118/306] Clarify locking of cifs file and tcon structures and make more granular Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 269/306] batman-adv: Check for alloc errors when preparing TT local data Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 082/306] fuse: invalidate dir dentry after chmod Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 125/306] mac80211: discard multicast and 4-addr A-MSDUs Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 142/306] Input: i8042 - add XMG C504 to keyboard reset table Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 044/306] dm: mark request_queue dead before destroying the DM device Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 008/306] zfcp: fix fc_host port_type with NPIV Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 234/306] rtnetlink: fix rtnl_vfinfo_size Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 179/306] GenWQE: Fix bad page access during abort of resource allocation Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 089/306] ubi: Deal with interrupted erasures in WL Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 175/306] btrfs: fix races on root_log_ctx lists Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 121/306] fs/super.c: fix race between freeze_super() and thaw_super() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 113/306] MIPS: ptrace: Fix regs_return_value for kernel context Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 035/306] [media] cx231xx: fix GPIOs for Pixelview SBTVD hybrid Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 098/306] mm: filemap: fix mapping->nrpages double accounting in fuse Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 017/306] zfcp: trace full payload of all SAN records (req,resp,iels) Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 106/306] powerpc/pseries: Fix stack corruption in htpe code Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 255/306] apparmor: fix change_hat not finding hat after policy replacement Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 169/306] ALSA: usb-audio: Add quirk for Syntek STK1160 Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 174/306] netfilter: nf_tables: fix type mismatch with error return from nft_parse_u32_check Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 005/306] drm/i915/vlv: Make intel_crt_reset() per-encoder Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 181/306] md: be careful not lot leak internal curr_resync value into metadata. -- (all) Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 145/306] target: Make EXTENDED_COPY 0xe4 failure return COPY TARGET DEVICE NOT REACHABLE Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 165/306] KVM: MIPS: Precalculate MMIO load resume PC Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 233/306] igmp: do not remove igmp souce list info when set link down Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 163/306] KVM: MIPS: Make ERET handle ERL before EXL Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 251/306] KVM: Disable irq while unregistering user notifier Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 033/306] [media] mb86a20s: fix demod settings Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 057/306] net/mlx4_en: Fix wrong indentation Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 036/306] ext4: reinforce check of i_dtime when clearing high fields of uid and gid Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 149/306] batman-adv: fix splat on disabling an interface Ben Hutchings
2017-02-16  7:43   ` Sven Eckelmann
2017-02-15 22:41 ` [PATCH 3.16 090/306] ubi: Fix races around ubi_refill_pools() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 083/306] fuse: fix killing s[ug]id in setattr Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 051/306] pkt_sched: fq: use proper locking in fq_dump_stats() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 097/306] async_pq_val: fix DMA memory leak Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 173/306] netfilter: nf_conntrack_sip: extend request line validation Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 216/306] scsi: megaraid_sas: fix macro MEGASAS_IS_LOGICAL to avoid regression Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 028/306] genirq/generic_chip: Add irq_unmap callback Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 266/306] pwm: Fix device reference leak Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 272/306] ipv4: Set skb->protocol properly for local output Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 244/306] IB/mlx4: Fix create CQ error flow Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 271/306] packet: fix race condition in packet_set_ring Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 223/306] swapfile: fix memory corruption via malformed swapfile Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 182/306] net/mlx5: Avoid passing dma address 0 to firmware Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 156/306] dm table: fix missing dm_put_target_type() in dm_table_add_target() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 078/306] powerpc/vdso64: Use double word compare on pointers Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 213/306] mmc: mxs: Initialize the spinlock prior to using it Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 100/306] metag: Only define atomic_dec_if_positive conditionally Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 093/306] powerpc/powernv: Use CPU-endian PEST in pnv_pci_dump_p7ioc_diag_data() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 010/306] zfcp: close window with unblocked rport during rport gone Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 154/306] ipv4: use the right lock for ping_group_range Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 085/306] crypto: gcm - Fix IV buffer size in crypto_gcm_setkey Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 080/306] s390/con3270: fix use of uninitialised data Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 195/306] bgmac: stop clearing DMA receive control register right after it is set Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 027/306] ASoC: dapm: Fix value setting for _ENUM_DOUBLE MUX's second channel Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 144/306] ubifs: Abort readdir upon error Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 020/306] PCI: Mark Atheros AR9580 to avoid bus reset Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 257/306] tile: avoid using clocksource_cyc2ns with absolute cycle count Ben Hutchings
2017-02-15 22:41 ` Ben Hutchings [this message]
2017-02-15 22:41 ` [PATCH 3.16 215/306] kbuild: add -fno-PIE Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 228/306] ipv4: use new_gw for redirect neigh lookup Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 084/306] fuse: listxattr: verify xattr list Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 013/306] zfcp: trace on request for open and close of WKA port Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 088/306] UBI: fastmap: scrub PEB when bitflips are detected in a free PEB EC header Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 046/306] ext4: bugfix for mmaped pages in mpage_release_unused_pages() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 107/306] powerpc/64: Fix incorrect return value from __copy_tofrom_user Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 217/306] scripts/has-stack-protector: add -fno-PIE Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 203/306] HID: usbhid: Add HID_QUIRK_NOGET for Aten DVI KVM switch Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 016/306] zfcp: fix payload trace length for SAN request&response Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 151/306] drm/radeon/si_dpm: Limit clocks on HD86xx part Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 143/306] ubifs: Fix xattr_names length in exit paths Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 141/306] hwrng: core - Don't use a stack buffer in add_early_randomness() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 209/306] USB: serial: ftdi_sio: add support for TI CC3200 LaunchPad Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 249/306] net: ethernet: ti: cpsw: fix mdio device reference leak Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 260/306] KVM: x86: drop error recovery in em_jmp_far and em_ret_far Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 164/306] MIPS: KVM: Fix unused variable build warning Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 034/306] [media] cx231xx: don't return error on success Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 025/306] arm64: debug: avoid resetting stepping state machine when TIF_SINGLESTEP Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 201/306] parisc: Ensure consistent state when switching to kernel stack at syscall entry Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 060/306] [media] dvb-usb: avoid link error with dib3000m{b,c| Ben Hutchings
2017-02-16  8:31   ` Arnd Bergmann
2017-02-16 16:07     ` Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 197/306] uwb: fix device reference leaks Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 187/306] net/mlx4_en: Fix potential deadlock in port statistics flow Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 158/306] scsi: megaraid_sas: Fix data integrity failure for JBOD (passthrough) devices Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 037/306] pstore/core: drop cmpxchg based updates Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 007/306] fbdev/efifb: Fix 16 color palette entry calculation Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 273/306] ipv6: Set skb->protocol properly for local output Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 270/306] locking/rtmutex: Prevent dequeue vs. unlock race Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 150/306] USB: serial: fix potential NULL-dereference at probe Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 161/306] staging: iio: ad5933: avoid uninitialized variable in error case Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 185/306] net/mlx4_en: Resolve dividing by zero in 32-bit system Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 199/306] PM / sleep: fix device reference leak in test_suspend Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 133/306] memstick: rtsx_usb_ms: Runtime resume the device when polling for cards Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 172/306] vt: clear selection before resizing Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 043/306] xfs: change mailing list address Ben Hutchings
2017-02-17  4:19   ` Dave Chinner
2017-03-06 18:23     ` Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 137/306] netfilter: nf_tables: underflow in nft_parse_u32_check() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 074/306] USB: serial: cp210x: Add ID for a Juniper console Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 205/306] ipv4: allow local fragmentation in ip_finish_output_gso() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 055/306] ALSA: ali5451: Fix out-of-bound position reporting Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 032/306] [media] mb86a20s: fix the locking logic Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 265/306] net/mlx4: Fix uninitialized fields in rule when adding promiscuous mode to device managed flow steering Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 241/306] IB/mlx5: Use cache line size to select CQE stride Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 211/306] Revert "staging: nvec: ps2: change serio type to passthrough" Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 012/306] zfcp: restore: Dont use 0 to indicate invalid LUN in rec trace Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 114/306] Display number of credits available Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 240/306] IB/core: Avoid unsigned int overflow in sg_alloc_table Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 238/306] IB/uverbs: Fix leak of XRC target QPs Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 049/306] reiserfs: Unlock superblock before calling reiserfs_quota_on_mount() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 246/306] of_mdio: fix node leak in of_phy_register_fixed_link error path Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 155/306] ACPI / APEI: Fix incorrect return value of ghes_proc() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 058/306] net/mlx4_core: Fix deadlock when switching between polling and event fw commands Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 196/306] usb: gadget: u_ether: remove interrupt throttling Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 252/306] KVM: x86: fix missed SRCU usage in kvm_lapic_set_vapic_addr Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 243/306] IB/mlx5: Fix NULL pointer dereference on debug print Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 065/306] svcrdma: Tail iovec leaves an orphaned DMA mapping Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 147/306] xhci: add restart quirk for Intel Wildcatpoint PCH Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 226/306] scsi: mpt3sas: Fix secure erase premature termination Ben Hutchings
2017-02-15 22:41   ` Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 059/306] drm/radeon: narrow asic_init for virtualization Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 064/306] netfilter: nf_tables: validate maximum value of u32 netlink attributes Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 004/306] fs: Give dentry to inode_change_ok() instead of inode Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 068/306] ALSA: hda - Adding one more ALC255 pin definition for headset problem Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 212/306] staging: nvec: remove managed resource from PS2 driver Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 235/306] mfd: core: Fix device reference leak in mfd_clone_cell Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 026/306] perf symbols: Fixup symbol sizes before picking best ones Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 041/306] ARM: pxa: fix GPIO double shifts Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 009/306] zfcp: fix ELS/GS request&response length for hardware data router Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 236/306] USB: serial: cp210x: add ID for the Zone DPMX Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 153/306] powerpc: Convert cmp to cmpd in idle enter sequence Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 193/306] ipv6: Don't use ufo handling on later transformed packets Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 140/306] bridge: multicast: restore perm router ports on multicast enable Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 218/306] rtnl: reset calcit fptr in rtnl_unregister() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 030/306] rtlwifi: Fix missing country code for Great Britain Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 267/306] netfilter: arp_tables: fix invoking 32bit "iptable -P INPUT ACCEPT" failed in 64bit kernel Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 096/306] mfd: rtsx_usb: Avoid setting ucr->current_sg.status Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 242/306] IB/mlx5: Resolve soft lock on massive reg MRs Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 268/306] powerpc/eeh: Fix deadlock when PE frozen state can't be cleared Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 177/306] s390/hypfs: Use get_free_page() instead of kmalloc to ensure page alignment Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 115/306] cifs: Limit the overall credit acquired Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 239/306] IB/cm: Mark stale CM id's whenever the mad agent was unregistered Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 131/306] mmc: rtsx_usb_sdmmc: Avoid keeping the device runtime resumed when unused Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 190/306] virtio: console: Unlock vqs while freeing buffers Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 022/306] netfilter: restart search if moved to other chain Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 176/306] lib/genalloc.c: start search from start of chunk Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 253/306] ext4: sanity check the block and cluster size at mount time Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 079/306] ext4: release bh in make_indexed_dir Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 053/306] scsi: ibmvfc: Fix I/O hang when port is not mapped Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 132/306] mmc: rtsx_usb_sdmmc: Handle runtime PM while changing the led Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 038/306] pstore/ram: Use memcpy_toio instead of memcpy Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 095/306] mfd: 88pm80x: Double shifting bug in suspend/resume Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 092/306] i40e: avoid NULL pointer dereference and recursive errors on early PCI error Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 231/306] kbuild: Steal gcc's pie from the very beginning Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 047/306] arc: don't leak bits of kernel stack into coredump Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 148/306] xhci: workaround for hosts missing CAS bit Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 024/306] platform: don't return 0 from platform_get_irq[_byname]() on error Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 062/306] ALSA: usb-audio: Extend DragonFly dB scale quirk to cover other variants Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 262/306] parisc: Fix race in pci-dma.c Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 109/306] mips/panic: replace smp_send_stop() with kdump friendly version in panic path Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 029/306] rtlwifi: Update regulatory database Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 023/306] uio: fix dmem_region_start computation Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 072/306] KVM: PPC: BookE: Fix a sanity check Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 123/306] ASoC: cs4270: fix DAPM stream name mismatch Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 230/306] fuse: fix fuse_write_end() if zero bytes were copied Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 214/306] net: ethernet: ti: cpsw: fix device and of_node leaks Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 011/306] zfcp: retain trace level for SCSI and HBA FSF response records Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 050/306] sctp: do not return the transmit err back to sctp_sendmsg Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 112/306] ipc/sem.c: fix complex_count vs. simple op race Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 076/306] Revert "usbtmc: convert to devm_kzalloc" Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 108/306] x86/panic: replace smp_send_stop() with kdump friendly version in panic path Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 110/306] compiler: Allow 1- and 2-byte smp_load_acquire() and smp_store_release() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 264/306] net: ethernet: mvneta: Remove IFF_UNICAST_FLT which is not implemented Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 104/306] mm/hugetlb: check for reserved hugepages during memory offline Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 069/306] mmc: moxart: fix wait_for_completion_interruptible_timeout return variable type Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 070/306] mmc: block: don't use CMD23 with very old MMC cards Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 120/306] Cleanup missing frees on some ioctls Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 081/306] s390/con3270: fix insufficient space padding Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 186/306] net/mlx4_en: Process all completions in RX rings after port goes up Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 048/306] ARM: dts: exynos: Fix mismatched value for SD4 pull up/down configuration on exynos4210 Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 006/306] drm/i915/vlv: Reset the ADPA in vlv_display_power_well_init() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 220/306] USB: cdc-acm: fix TIOCMIWAIT Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 056/306] usb: misc: legousbtower: Fix NULL pointer deference Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 258/306] xc2028: Fix use-after-free bug properly Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 003/306] fuse: Propagate dentry down to inode_change_ok() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 116/306] Set previous session id correctly on SMB3 reconnect Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 071/306] KVM: PPC: Book3S: Treat VTB as a per-subcore register, not per-thread Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 237/306] nvme/pci: Don't free queues on error Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 194/306] can: bcm: fix warning in bcm_connect/proc_register Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 021/306] net: systemport: Fix ordering in intrl2_*_mask_clear macro Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 219/306] ALSA: hda - add a new condition to check if it is thinkpad Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 294/306] netfilter: nfnetlink: correctly validate length of batch messages Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 280/306] fuse: fix clearing suid, sgid for chown() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 287/306] perf: Fix race in swevent hash Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 281/306] parisc: Purge TLB before setting PTE Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 278/306] net: ep93xx_eth: Do not crash unloading module Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 282/306] parisc: Remove unnecessary TLB purges from flush_dcache_page_asm and flush_icache_page_asm Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 291/306] perf/core: Fix concurrent sys_perf_event_open() vs. 'move_group' race Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 289/306] perf: Fix event->ctx locking Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 297/306] rose: limit sk_filter trim to payload Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 290/306] perf: Do not double free Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 299/306] tcp: take care of truncations done by sk_filter() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 296/306] net: Add __sock_queue_rcv_skb() Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 285/306] ser_gigaset: return -ENOMEM on error instead of success Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 286/306] sg: Fix double-free when drives detach during SG_IO Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 293/306] HID: core: prevent out-of-bound readings Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 275/306] sh_eth: remove unchecked interrupts for RZ/A1 Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 304/306] sg_write()/bsg_write() is not fit to be called under KERNEL_DS Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 295/306] fbdev: color map copying bounds checking Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 283/306] can: raw: raw_setsockopt: limit number of can_filter that can be set Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 274/306] net: bcmgenet: Utilize correct struct device for all DMA operations Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 288/306] tty: Prevent ldisc drivers from re-using stale tty fields Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 300/306] staging/android/ion : fix a race condition in the ion driver Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 276/306] tipc: check minimum bearer MTU Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 305/306] net: avoid signed overflows for SO_{SND|RCV}BUFFORCE Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 292/306] usb: gadget: f_fs: Fix use-after-free Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 279/306] perf/x86: Fix full width counter, counter overflow Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 301/306] Fix potential infoleak in older kernels Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 284/306] can: peak: fix bad memory access and free sequence Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 302/306] sysctl: Drop reference added by grab_header in proc_sys_readdir Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 298/306] dccp: limit sk_filter trim to payload Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 303/306] sctp: validate chunk len before actually using it Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 306/306] ALSA: pcm : Call kill_fasync() in stream lock Ben Hutchings
2017-02-15 22:41 ` [PATCH 3.16 277/306] net: ping: check minimum size on ICMP header length Ben Hutchings
2017-02-16  0:04 ` [PATCH 3.16 000/306] 3.16.40-rc1 review Ben Hutchings

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=lsq.1487198500.626956962@decadent.org.uk \
    --to=ben@decadent.org.uk \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.