[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: frozen-proposed-updates?



Hello

Am Fri, 26 Apr 2013 09:47:27 +0200
schrieb Julien Cristau <jcristau@debian.org>:

> On Fri, Apr 26, 2013 at 02:44:05 +0200, Christian Hammers wrote:
> 
> > Hello
> > 
> > I'd like to upload a package that fixes a bug in testing's
> > quagga_0.99.21-4. I can't upload it via unstable as we have
> > already 0.99.22 there and neither can I upload it to
> > stable-proposed-updates as this is still for squeeze, right?
> > 
> > So I have to wait a week for the release and then use s-p-u?
> > 
> Please describe the fixes and include the debdiff, we'll figure things
> out from there.

Here is the debdiff with changelog entry and diff: 

-=(~/debian/quagga/wheezy)$ debdiff quagga_0.99.21-4.dsc quagga_0.99.21-4+wheezy1.dsc
diff -Nru quagga-0.99.21/debian/changelog quagga-0.99.21/debian/changelog
--- quagga-0.99.21/debian/changelog     2013-01-06 15:58:00.000000000 +0100
+++ quagga-0.99.21/debian/changelog     2013-04-25 02:09:06.000000000 +0200
@@ -1,3 +1,10 @@
+quagga (0.99.21-4+wheezy1) testing-proposed-updates; urgency=medium
+
+  * Applied a patch to prevent ospfd to crash randomly when a neighbor
+    goes down. Thanks to David Lamparter for pointing out. Closes: #706120
+
+ -- Christian Hammers <ch@debian.org>  Mon, 22 Apr 2013 23:00:01 +0200
+
 quagga (0.99.21-4) unstable; urgency=medium
 
   * Fixed regression bug that caused OSPF "distribute-list" statements to be
diff -Nru quagga-0.99.21/debian/patches/99_fix_thread_cancel_event.diff quagga-0.99.21/debian/patches/99_fix_thread_cancel_event.diff
--- quagga-0.99.21/debian/patches/99_fix_thread_cancel_event.diff       1970-01-01 01:00:00.000000000 +0100
+++ quagga-0.99.21/debian/patches/99_fix_thread_cancel_event.diff       2013-04-22 22:09:13.000000000 +0200
@@ -0,0 +1,51 @@
+From aaa964a8f861d5cd68723adc27236548f3f05713 Mon Sep 17 00:00:00 2001
+From: Jorge Boncompte [DTI2] <jorge@dti2.net>
+Date: Mon, 07 May 2012 15:17:31 +0000
+Subject: lib: fix thread_cancel_event()
+
+  ospfd was crashing some times on neighbour going down. The cause was that
+ospf_nsm_event() was accessing already freed memory in ospf_nbr_delete()
+call from ospf_nsm_event().
+
+  What happens is that since commit b5043aab (lib: fix incorrect thread
+list...) now a thread can be on the event and ready lists but
+thread_cancel_event() doesn't account for that.
+
+* thread.c: (thread_cancel_event) loop on the ready list too to cancel
+  pending events.
+
+Signed-off-by: Jorge Boncompte [DTI2] <jorge@dti2.net>
+Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
+---
+diff --git a/lib/thread.c b/lib/thread.c
+index b36c43a..dd0413b 100644
+--- a/lib/thread.c
++++ b/lib/thread.c
+@@ -916,6 +916,24 @@ thread_cancel_event (struct thread_master *m, void *arg)
+           thread_add_unuse (m, t);
+         }
+     }
++
++  /* thread can be on the ready list too */
++  thread = m->ready.head;
++  while (thread)
++    {
++      struct thread *t;
++
++      t = thread;
++      thread = t->next;
++
++      if (t->arg == arg)
++        {
++          ret++;
++          thread_list_delete (&m->ready, t);
++          t->type = THREAD_UNUSED;
++          thread_add_unuse (m, t);
++        }
++    }
+   return ret;
+ }
+ 
+--
+cgit v0.9.0.2
+curl: try 'curl --help' or 'curl --manual' for more information
diff -Nru quagga-0.99.21/debian/patches/series quagga-0.99.21/debian/patches/series
--- quagga-0.99.21/debian/patches/series        2013-01-06 15:45:54.000000000 +0100
+++ quagga-0.99.21/debian/patches/series        2013-04-25 02:33:43.000000000 +0200
@@ -7,3 +7,4 @@
 10_doc__Makefiles__makeinfo-force.diff
 99_CVE-2012-1820_bgp_capability_orf.diff
 99_distribute_list.diff
+99_fix_thread_cancel_event.diff

bye,

-christian-

Attachment: signature.asc
Description: PGP signature


Reply to: