staging/lustre/obdclass: use a dummy structure for lu_ref_link
Move the definition of struct lu_ref_link to lu_ref.h. If USE_LU_REF is not defined then define it to be the empty struct. Change the return type of lu_ref_add() and lu_ref_add_atomic() to void. Add lu_ref_add_at() taking same arguments as lu_ref_add() togerther with a pointer to a struct lu_ref_link and returning void. Adjust all structures containing a lu_ref_link pointer to contain a struct lu_ref_link instead. Use lu_ref_add_at() and lu_ref_del_at() to handle embedded lu_ref_links. [Original patch mainly changes lu_ref.[ch] but in upstream client we don't have lu_ref code in the hope of moving to kobject refcounting. So the patch only picks the other pieces of original patch, in order to keep code in sync and make it easier to port future patches.] Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-3059 Lustre-change: http://review.whamcloud.com/5920Signed-off-by: NJohn L. Hammond <john.hammond@intel.com> Reviewed-by: NAlex Zhuravlev <alexey.zhuravlev@intel.com> Reviewed-by: NJinshan Xiong <jinshan.xiong@intel.com> Reviewed-by: NMike Pershin <mike.pershin@intel.com> Reviewed-by: NOleg Drokin <oleg.drokin@intel.com> Signed-off-by: NPeng Tao <tao.peng@emc.com> Signed-off-by: NAndreas Dilger <andreas.dilger@intel.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Showing
想要评论请 注册 或 登录