*/
/*
* This file is part of Lustre, http://www.lustre.org/
- * Lustre is a trademark of Sun Microsystems, Inc.
*
* lustre/ofd/ofd_fs.c
*
*/
void ofd_seqs_free(const struct lu_env *env, struct ofd_device *ofd)
{
- struct ofd_seq *oseq;
- struct ofd_seq *tmp;
- struct list_head dispose;
+ struct ofd_seq *oseq;
+ struct ofd_seq *tmp;
+ LIST_HEAD(dispose);
- INIT_LIST_HEAD(&dispose);
write_lock(&ofd->ofd_seq_list_lock);
list_for_each_entry_safe(oseq, tmp, &ofd->ofd_seq_list, os_list)
list_move(&oseq->os_list, &dispose);
write_unlock(&ofd->ofd_seq_list_lock);
while (!list_empty(&dispose)) {
- oseq = container_of0(dispose.next, struct ofd_seq, os_list);
+ oseq = container_of(dispose.next, struct ofd_seq, os_list);
list_del_init(&oseq->os_list);
ofd_seq_put(env, oseq);
}
/* if seq is already initialized */
oseq = ofd_seq_get(ofd, seq);
- if (oseq != NULL)
+ if (oseq != NULL) {
+ CDEBUG(D_TRACE, "%s: got sequence %#llx "DOSTID"\n",
+ ofd_name(ofd), seq, POSTID(&oseq->os_oi));
RETURN(oseq);
+ }
OBD_ALLOC_PTR(oseq);
if (oseq == NULL)
GOTO(cleanup, rc = -EINVAL);
}
+ CDEBUG(D_HA, "%s: adding sequence %#llx\n", ofd_name(ofd), seq);
+
oseq = ofd_seq_add(env, ofd, oseq);
RETURN((oseq != NULL) ? oseq : ERR_PTR(-ENOENT));
cleanup: