I ran into this issue too and had reverted to using our version of the patch to push out the newly rebased code.
Why I didn't attempt to fix this was because work_queue_item_requeue uses the same set of calls and doesn't seem to have a problem. I'll give your version a spin and get back with the result today, Dinesh On 12/21/2014 04:41 AM, David Lamparter wrote: > LISTNODE_DETACH doesn't clear out the node, and LISTNODE_ATTACH doesn't > set ->next (since it assumes a fresh/zeroed listnode). As a result, the > new listnode_move_to_tail() created a nice circular list, in turn > crashing ospfd in ospf_write() later. > > Reported-by: Martin Winter <[email protected]> > Fixes: 6d83113 ("ospfd: Tweak previous iface RR write patch to avoid > free/malloc & redundant log") > Cc: Paul Jakma <[email protected]> > Signed-off-by: David Lamparter <[email protected]> > --- > One more fix... > ... will push relatively quickly. > > -David > --- > lib/linklist.h | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/lib/linklist.h b/lib/linklist.h > index c8d715e..6209c8b 100644 > --- a/lib/linklist.h > +++ b/lib/linklist.h > @@ -113,6 +113,7 @@ extern void list_add_list (struct list *, struct list *); > #define LISTNODE_ATTACH(L,N) \ > do { \ > (N)->prev = (L)->tail; \ > + (N)->next = NULL; \ > if ((L)->head == NULL) \ > (L)->head = (N); \ > else \ _______________________________________________ Quagga-dev mailing list [email protected] https://lists.quagga.net/mailman/listinfo/quagga-dev
