[cc'ing Christoph properly this time. The author field in the commit in Liunus' tree has an unqualified email address which I copy-and-pasted ...] On Fri, 31 Dec 2010 10:54:32 +1100 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: > > Today's linux-next merge of the vfs-scale tree got a conflict in > Documentation/filesystems/Locking between commit > b83be6f20a0e468f715b14225c9f897538dfe5ad ("update > Documentation/filesystems/Locking") from Linus' tree and various commits > from the vfs-scale tree. > > I fixed it up (as best I could - see below) and can carry the fix as > necessary. > -- > Cheers, > Stephen Rothwell sfr@xxxxxxxxxxxxxxxx > > diff --cc Documentation/filesystems/Locking > index 7686e76,c1a7e72..0000000 > --- a/Documentation/filesystems/Locking > +++ b/Documentation/filesystems/Locking > @@@ -18,13 -22,15 +22,14 @@@ prototypes > char *(*d_dname)((struct dentry *dentry, char *buffer, int buflen); > > locking rules: > - dcache_lock rename_lock ->d_lock may block > - d_revalidate: no no no yes > - d_hash no no no yes > - d_compare: no yes no no > - d_delete: yes no yes no > - d_release: no no no yes > - d_iput: no no no yes > - none have BKL > + rename_lock ->d_lock may block rcu-walk > + d_revalidate: no no yes no > + d_revalidate_rcu:no no yes (ref-walk) maybe > + d_hash no no no maybe > + d_compare: yes no no maybe > + d_delete: no yes no no > + d_release: no no yes no > + d_iput: no no yes no > d_dname: no no no no > > --------------------------- inode_operations --------------------------- > @@@ -41,11 -47,12 +46,13 @@@ ata *) > int (*rename) (struct inode *, struct dentry *, > struct inode *, struct dentry *); > int (*readlink) (struct dentry *, char __user *,int); > - int (*follow_link) (struct dentry *, struct nameidata *); > + void * (*follow_link) (struct dentry *, struct nameidata *); > + void (*put_link) (struct dentry *, struct nameidata *, void *); > void (*truncate) (struct inode *); > - int (*permission) (struct inode *, int, struct nameidata *); > + int (*permission) (struct inode *, int); > + int (*permission_rcu) (struct inode *, int, unsigned int); > int (*check_acl)(struct inode *, int); > + int (*check_acl_rcu)(struct inode *, int, unsigned int); > int (*setattr) (struct dentry *, struct iattr *); > int (*getattr) (struct vfsmount *, struct dentry *, struct kstat *); > int (*setxattr) (struct dentry *, const char *,const void *,size_t,int); > @@@ -74,7 -77,7 +81,8 @@@ put_link: n > truncate: yes (see below) > setattr: yes > permission: no > + permission_rcu: no (may not block if called in rcu-walk mode) > +check_acl: no > getattr: no > setxattr: yes > getxattr: no -- Cheers, Stephen Rothwell sfr@xxxxxxxxxxxxxxxx http://www.canb.auug.org.au/~sfr/
Attachment:
pgpbkOb3RblqW.pgp
Description: PGP signature