Details
-
Bug
-
Resolution: Fixed
-
Blocker
-
Lustre 2.4.0
-
3
-
7896
Description
fld_cache_lookup() keeps a prev pointer to a struct fld_cache_entry. But when it uses this pointer to return the prev range, it copies the entry onto the range argument and not the entry's fce_range member.
int fld_cache_lookup(struct fld_cache *cache, const seqno_t seq, struct lu_seq_range *range) { struct fld_cache_entry *flde; struct fld_cache_entry *prev = NULL; cfs_list_t *head; ENTRY; ... cfs_list_for_each_entry(flde, head, fce_list) { if (flde->fce_range.lsr_start > seq) { if (prev != NULL) memcpy(range, prev, sizeof(*range)); break; } ... }
Attachments
Issue Links
- is related to
-
LU-3233 tgt_cb_last_committed()) ASSERTION( ccb->llcc_exp->exp_obd == ccb->llcc_tgt->lut_obd ) failed:
- Resolved