summaryrefslogtreecommitdiffstats
path: root/fs/coda/cnode.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-01-10 16:20:35 +0100
committerAl Viro <viro@zeniv.linux.org.uk>2012-01-10 16:20:35 +0100
commit3e25eb9c4bb649acdddb333d10774b640190f727 (patch)
treed51009557e95437dd7b7ef6b0f3a51aacccec743 /fs/coda/cnode.c
parentMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vir... (diff)
downloadlinux-3e25eb9c4bb649acdddb333d10774b640190f727.tar.xz
linux-3e25eb9c4bb649acdddb333d10774b640190f727.zip
securityfs: fix object creation races
inode needs to be fully set up before we feed it to d_instantiate(). securityfs_create_file() does *not* do so; it sets ->i_fop and ->i_private only after we'd exposed the inode. Unfortunately, that's done fairly deep in call chain, so the amount of churn is considerable. Helper functions killed by substituting into their solitary call sites, dead code removed. We finally can bury default_file_ops, now that the final value of ->i_fop is available (and assigned) at the point where inode is allocated. Reviewed-by: James Morris <jmorris@namei.org> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/coda/cnode.c')
0 files changed, 0 insertions, 0 deletions