• Al Viro's avatar
    securityfs: fix object creation races · 3e25eb9c
    Al Viro authored
    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: default avatarJames Morris <jmorris@namei.org>
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
    3e25eb9c
inode.c 6.69 KB