LU-5829 removed a lot of EXPORT_SYMBOL, including for the lu_ref_*
functions. As these functions are only compiled in when the
--enable-lu_ref is passed to configure, the breakage was missed. This
patch restores the missing EXPORT_SYMBOLS that were present, except
for lu_ref_print and lu_ref_is_marker which are only used in the
obdclass module.
Test-Parameters: trivial
Signed-off-by: Frank Zago <fzago@cray.com>
Change-Id: I16e6065b75c568a18386c0f0a746484fdad38d6e
Reviewed-on: http://review.whamcloud.com/21640
Reviewed-by: Andrew Perepechko <andrew.perepechko@seagate.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
list_add(&ref->lf_linkage, &lu_ref_refs);
spin_unlock(&lu_ref_refs_guard);
}
list_add(&ref->lf_linkage, &lu_ref_refs);
spin_unlock(&lu_ref_refs_guard);
}
+EXPORT_SYMBOL(lu_ref_init_loc);
void lu_ref_fini(struct lu_ref *ref)
{
void lu_ref_fini(struct lu_ref *ref)
{
list_del_init(&ref->lf_linkage);
spin_unlock(&lu_ref_refs_guard);
}
list_del_init(&ref->lf_linkage);
spin_unlock(&lu_ref_refs_guard);
}
+EXPORT_SYMBOL(lu_ref_fini);
static struct lu_ref_link *lu_ref_add_context(struct lu_ref *ref,
int flags,
static struct lu_ref_link *lu_ref_add_context(struct lu_ref *ref,
int flags,
might_sleep();
lu_ref_add_context(ref, GFP_IOFS, scope, source);
}
might_sleep();
lu_ref_add_context(ref, GFP_IOFS, scope, source);
}
+EXPORT_SYMBOL(lu_ref_add);
void lu_ref_add_at(struct lu_ref *ref, struct lu_ref_link *link,
const char *scope, const void *source)
void lu_ref_add_at(struct lu_ref *ref, struct lu_ref_link *link,
const char *scope, const void *source)
ref->lf_refs++;
spin_unlock(&ref->lf_guard);
}
ref->lf_refs++;
spin_unlock(&ref->lf_guard);
}
+EXPORT_SYMBOL(lu_ref_add_at);
/**
* Version of lu_ref_add() to be used in non-blockable contexts.
/**
* Version of lu_ref_add() to be used in non-blockable contexts.
{
lu_ref_add_context(ref, GFP_ATOMIC, scope, source);
}
{
lu_ref_add_context(ref, GFP_ATOMIC, scope, source);
}
+EXPORT_SYMBOL(lu_ref_add_atomic);
static inline int lu_ref_link_eq(const struct lu_ref_link *link,
const char *scope, const void *source)
static inline int lu_ref_link_eq(const struct lu_ref_link *link,
const char *scope, const void *source)
spin_unlock(&ref->lf_guard);
}
}
spin_unlock(&ref->lf_guard);
}
}
+EXPORT_SYMBOL(lu_ref_del);
void lu_ref_set_at(struct lu_ref *ref, struct lu_ref_link *link,
const char *scope,
void lu_ref_set_at(struct lu_ref *ref, struct lu_ref_link *link,
const char *scope,
link->ll_source = source1;
spin_unlock(&ref->lf_guard);
}
link->ll_source = source1;
spin_unlock(&ref->lf_guard);
}
+EXPORT_SYMBOL(lu_ref_set_at);
void lu_ref_del_at(struct lu_ref *ref, struct lu_ref_link *link,
const char *scope, const void *source)
void lu_ref_del_at(struct lu_ref *ref, struct lu_ref_link *link,
const char *scope, const void *source)
ref->lf_refs--;
spin_unlock(&ref->lf_guard);
}
ref->lf_refs--;
spin_unlock(&ref->lf_guard);
}
+EXPORT_SYMBOL(lu_ref_del_at);