What's typically the right process for me to prep the merge for Linus? Should I pull Al's patchset and then apply mine on top of it so I can merge your merge fix or just have my for-linus tree based on his current working merge (which I assume has Al's by now). Just a bit confused because rebasing was discouraged last merge window -- but not sure how to deal with the conflict without a rebase.... -eric On Thu, Jan 5, 2012 at 8:46 PM, Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: > 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@xxxxxxxxxxxxxxxx > > 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; -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html