lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20120106134658.7589dec177541808dad20eb9@canb.auug.org.au>
Date:	Fri, 6 Jan 2012 13:46:58 +1100
From:	Stephen Rothwell <sfr@...b.auug.org.au>
To:	Al Viro <viro@...IV.linux.org.uk>
Cc:	linux-next@...r.kernel.org, linux-kernel@...r.kernel.org,
	Joe Perches <joe@...ches.com>,
	Eric Van Hensbergen <ericvh@...il.com>
Subject: linux-next: manual merge of the vfs tree with the v9fs tree

Hi Al,

Today's linux-next merge of the vfs tree got conflicts in
fs/9p/vfs_inode.c and fs/9p/vfs_inode_dotl.c between commit 5d3851530d6d
("9p: Reduce object size with CONFIG_NET_9P_DEBUG") from the v9fs tree
and commits c2837de73e80 ("9p: don't bother with unixmode2p9mode() for
link() and symlink()") and 3eda0de677b5 ("9p: propagate umode_t") from
the vfs tree.

I fixed it up (see below) and can carry the fix as necessary.
-- 
Cheers,
Stephen Rothwell                    sfr@...b.auug.org.au

diff --cc fs/9p/vfs_inode.c
index c8fe480,e0f20de..0000000
--- a/fs/9p/vfs_inode.c
+++ b/fs/9p/vfs_inode.c
@@@ -127,14 -94,14 +122,14 @@@ static int p9mode2perm(struct v9fs_sess
   * @rdev: major number, minor number in case of device files.
   *
   */
- static int p9mode2unixmode(struct v9fs_session_info *v9ses,
- 			   struct p9_wstat *stat, dev_t *rdev)
+ static umode_t p9mode2unixmode(struct v9fs_session_info *v9ses,
+ 			       struct p9_wstat *stat, dev_t *rdev)
  {
  	int res;
- 	int mode = stat->mode;
+ 	u32 mode = stat->mode;
  
 -	res = mode & S_IALLUGO;
  	*rdev = 0;
 +	res = p9mode2perm(v9ses, stat);
  
  	if ((mode & P9_DMDIR) == P9_DMDIR)
  		res |= S_IFDIR;
@@@ -352,8 -329,8 +346,8 @@@ int v9fs_init_inode(struct v9fs_session
  
  		break;
  	default:
- 		p9_debug(P9_DEBUG_ERROR, "BAD mode 0x%x S_IFMT 0x%x\n",
 -		P9_DPRINTK(P9_DEBUG_ERROR, "BAD mode 0x%hx S_IFMT 0x%x\n",
 -			   mode, mode & S_IFMT);
++		p9_debug(P9_DEBUG_ERROR, "BAD mode 0x%hx S_IFMT 0x%x\n",
 +			 mode, mode & S_IFMT);
  		err = -EINVAL;
  		goto error;
  	}
@@@ -375,7 -352,7 +369,7 @@@ struct inode *v9fs_get_inode(struct sup
  	struct inode *inode;
  	struct v9fs_session_info *v9ses = sb->s_fs_info;
  
- 	p9_debug(P9_DEBUG_VFS, "super block: %p mode: %o\n", sb, mode);
 -	P9_DPRINTK(P9_DEBUG_VFS, "super block: %p mode: %ho\n", sb, mode);
++	p9_debug(P9_DEBUG_VFS, "super block: %p mode: %ho\n", sb, mode);
  
  	inode = new_inode(sb);
  	if (!inode) {
@@@ -1362,10 -1333,10 +1355,10 @@@ static int v9fs_vfs_mkspecial(struct in
  static int
  v9fs_vfs_symlink(struct inode *dir, struct dentry *dentry, const char *symname)
  {
 -	P9_DPRINTK(P9_DEBUG_VFS, " %lu,%s,%s\n", dir->i_ino,
 -					dentry->d_name.name, symname);
 +	p9_debug(P9_DEBUG_VFS, " %lu,%s,%s\n",
 +		 dir->i_ino, dentry->d_name.name, symname);
  
- 	return v9fs_vfs_mkspecial(dir, dentry, S_IFLNK, symname);
+ 	return v9fs_vfs_mkspecial(dir, dentry, P9_DMSYMLINK, symname);
  }
  
  /**
@@@ -1419,14 -1391,16 +1412,16 @@@ clunk_fid
   */
  
  static int
- v9fs_vfs_mknod(struct inode *dir, struct dentry *dentry, int mode, dev_t rdev)
+ v9fs_vfs_mknod(struct inode *dir, struct dentry *dentry, umode_t mode, dev_t rdev)
  {
+ 	struct v9fs_session_info *v9ses = v9fs_inode2v9ses(dir);
  	int retval;
  	char *name;
+ 	u32 perm;
  
- 	p9_debug(P9_DEBUG_VFS, " %lu,%s mode: %x MAJOR: %u MINOR: %u\n",
 -	P9_DPRINTK(P9_DEBUG_VFS,
 -		" %lu,%s mode: %hx MAJOR: %u MINOR: %u\n", dir->i_ino,
 -		dentry->d_name.name, mode, MAJOR(rdev), MINOR(rdev));
++	p9_debug(P9_DEBUG_VFS, " %lu,%s mode: %hx MAJOR: %u MINOR: %u\n",
 +		 dir->i_ino, dentry->d_name.name, mode,
 +		 MAJOR(rdev), MINOR(rdev));
  
  	if (!new_valid_dev(rdev))
  		return -EINVAL;
diff --cc fs/9p/vfs_inode_dotl.c
index 73488fb,8ef152a..0000000
--- a/fs/9p/vfs_inode_dotl.c
+++ b/fs/9p/vfs_inode_dotl.c
@@@ -283,8 -283,8 +283,8 @@@ v9fs_vfs_create_dotl(struct inode *dir
  	}
  
  	name = (char *) dentry->d_name.name;
- 	p9_debug(P9_DEBUG_VFS, "name:%s flags:0x%x mode:0x%x\n",
- 		 name, flags, omode);
 -	P9_DPRINTK(P9_DEBUG_VFS, "v9fs_vfs_create_dotl: name:%s flags:0x%x "
++	p9_debug(P9_DEBUG_VFS, "v9fs_vfs_create_dotl: name:%s flags:0x%x "
+ 			"mode:0x%hx\n", name, flags, omode);
  
  	dfid = v9fs_fid_lookup(dentry->d_parent);
  	if (IS_ERR(dfid)) {
@@@ -810,9 -813,9 +810,9 @@@ v9fs_vfs_mknod_dotl(struct inode *dir, 
  	struct dentry *dir_dentry;
  	struct posix_acl *dacl = NULL, *pacl = NULL;
  
- 	p9_debug(P9_DEBUG_VFS, " %lu,%s mode: %x MAJOR: %u MINOR: %u\n",
 -	P9_DPRINTK(P9_DEBUG_VFS,
 -		" %lu,%s mode: %hx MAJOR: %u MINOR: %u\n", dir->i_ino,
 -		dentry->d_name.name, omode, MAJOR(rdev), MINOR(rdev));
++	p9_debug(P9_DEBUG_VFS, " %lu,%s mode: %hx MAJOR: %u MINOR: %u\n",
 +		 dir->i_ino, dentry->d_name.name, omode,
 +		 MAJOR(rdev), MINOR(rdev));
  
  	if (!new_valid_dev(rdev))
  		return -EINVAL;

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ