On Fri, Apr 06, 2007 at 04:32:24PM -0700, [EMAIL PROTECTED] wrote: > -static int container_create_dir(struct container *cont, const char *name, > int mode) > +static int container_create_dir(struct container *cont, struct dentry > *dentry, > + int mode) > { > - struct dentry *dentry = NULL; > struct dentry *parent; > int error = 0; > > parent = cont->parent->dentry; > - dentry = container_get_dentry(parent, name);
If you removed this line, then: > if (IS_ERR(dentry)) > return PTR_ERR(dentry); > - error = container_create_file(dentry, S_IFDIR | mode); > + error = container_create_file(dentry, S_IFDIR | mode, cont->root->sb); > if (!error) { > dentry->d_fsdata = cont; > - parent->d_inode->i_nlink++; > + inc_nlink(parent->d_inode); > cont->dentry = dentry; > } > dput(dentry); We should remove this dput as well, otherwise we will be short of required reference count on dentry by 1? Basically, when user does: # cd /dev/container # mkdir a and mkdir returns, what should be the (min) ref count of a's dentry? From my understanding it should be total number of files under a + 1. The dput above will cause this reqd count to be short by 1 .. -- Regards, vatsa ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ ckrm-tech mailing list https://lists.sourceforge.net/lists/listinfo/ckrm-tech