I have done exhaustive testing and looked very closely at the what states lustre procfs handling is in for the case of client and server being on the same node. I loaded lod then lov and vice versa as well as unload the modules in the two possible orders. I detected no leaks in either case. In order to fill out out proc trees we have to preform mounting/unmounting of the MDT and the client. I tried both orders of mounting and
umount and saw no issues with remove_proc_subtree. Tired various combos of mounting/unmounting and module loading/unloading. No memory leaks/disappearing directories or handling symlinks occurred. Please note this is all done on a 3.12 kernel. Also looking at detail of the procfs initialization and removal don't show a issue with remove_proc_subtree.
John L. Hammond (john.hammond@intel.com) uploaded a new patch: http://review.whamcloud.com/13463
Subject:
LU-5275build: add LPROCFS to the deprecated symbol listProject: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: f0b41cec79d7b8f86387afb94820e8e507c2b21b