From db1ef3f0ec888af886c1b25900f9fb260b5f69df Mon Sep 17 00:00:00 2001 From: shaver Date: Sat, 16 Aug 2003 19:38:35 +0000 Subject: [PATCH] b=1541: fix LASSERT on mismatched transnos during open-unlink testing r=phik - the open request now keeps a pair of pointers in its replay data: - the och that has always been there for fixing up open filehandles - the close request that has been created to balance it, which may or may not have made it over the wire yet, for fixing up the filehandle cookie it sends to the MDS - the explicit updating of the close req replaces the previous walking of the sending list, which was both insufficient _and_ excessive - suppress the "asked for EA, got none" message in the case of a 0-nlink file - when processing an INTENT_ONLY enqueue request, return a successful 0 rather than ELDLM_LOCK_ABORTED, which only confused the clients - when opening by FID, be sure to set the intent disposition flags appropriately - triple the timeout, instead of doubling it, for the replay-completed PING, to better suit the numerology of the pinger and timeout values --- lustre/obdclass/otree.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lustre/obdclass/otree.c b/lustre/obdclass/otree.c index e35424d..70f3077 100644 --- a/lustre/obdclass/otree.c +++ b/lustre/obdclass/otree.c @@ -70,7 +70,7 @@ static struct offset_extent * ot_find_oe(rb_root_t *root, /* do the rbtree mechanics to insert a node, callers are responsible * for making sure that this new node doesn't overlap with existing * nodes */ -static void ot_indert_oe(rb_root_t *root, struct offset_extent *new_oe) +static void ot_insert_oe(rb_root_t *root, struct offset_extent *new_oe) { rb_node_t ** p = &root->rb_node; rb_node_t * parent = NULL; @@ -113,7 +113,7 @@ int ot_mark_offset(struct otree *ot, unsigned long offset) if ( oe == NULL ) { new_oe->oe_start = offset; new_oe->oe_end = offset; - ot_indert_oe(&ot->ot_root, new_oe); + ot_insert_oe(&ot->ot_root, new_oe); ot->ot_num_marked++; new_oe = NULL; GOTO(out, rc); @@ -169,7 +169,7 @@ int ot_clear_extent(struct otree *ot, unsigned long start, unsigned long end) new_oe->oe_start = end + 1; new_oe->oe_end = oe->oe_end; oe->oe_end = start - 1; - ot_indert_oe(&ot->ot_root, new_oe); + ot_insert_oe(&ot->ot_root, new_oe); new_oe = NULL; ot->ot_num_marked -= end - start + 1; break; -- 1.8.3.1