• Tejun Heo's avatar
    9p: implement proper trans module refcounting and unregistration · 72029fe8
    Tejun Heo authored
    9p trans modules aren't refcounted nor were they unregistered
    properly.  Fix it.
    
    * Add 9p_trans_module->owner and reference the module on each trans
      instance creation and put it on destruction.
    
    * Protect v9fs_trans_list with a spinlock.  This isn't strictly
      necessary as the list is manipulated only during module loading /
      unloading but it's a good idea to make the API safe.
    
    * Unregister trans modules when the corresponding module is being
      unloaded.
    
    * While at it, kill unnecessary EXPORT_SYMBOL on p9_trans_fd_init().
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Signed-off-by: default avatarEric Van Hensbergen <ericvh@gmail.com>
    72029fe8
trans_fd.c 35.8 KB