• Jeff Layton's avatar
    rpc_pipe: set dentry operations at d_alloc time · 76fa6665
    Jeff Layton authored
    Currently the way these get set is a little convoluted. If the dentry is
    allocated via lookup from userland, then it gets set by simple_lookup.
    If it gets allocated when the kernel is populating the directory, then
    it gets set via __rpc_lookup_create_exclusive, which has to check
    whether they might already be set. Between both of these, this ensures
    that all dentries have their d_op pointer set.
    
    Instead of doing that, just have them set at d_alloc time by pointing
    sb->s_d_op at them. With that change, we no longer want the lookup op
    to set them, so we must move to using our own lookup routine.
    Signed-off-by: default avatarJeff Layton <jlayton@redhat.com>
    Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
    76fa6665
rpc_pipe.c 29.1 KB