[CUWiN-Dev] whither quagga?

Bill Comisky bcomisky at pobox.com
Thu Sep 21 13:53:02 CDT 2006


On Tue, 19 Sep 2006, David Young wrote:

> On Mon, Sep 18, 2006 at 12:19:01PM -0500, Bill Comisky wrote:
>>
>> I noticed quagga 0.99.5 was released recently, see release announcement:
>> http://lists.quagga.net/pipermail/quagga-users/2006-August/007456.html
>>
>> It contains a fix for the zebra RIB add/delete work-queue race (bug #268)
>> that Dave mentioned a while back.  It's marked as a 0.99.4 bug, so it
>> shouldn't have affected any builds from trunk, which is still using 0.99.2
>> (which probably has it's own issues).  But it sounds like a good time to
>> revisit updating quagga, now that we're post 0.7.0.  Unless there are
>> objections I'll import 0.99.5 on the vendor branch and merge the changes
>> to the quagga-zrib-update branch.  I'll build and test the
>> quagga-zrib-update changes against 0.7.0, and then if there are no
>> surprises maybe we can merge to trunk so it can get more testing.
>>
>> Any thoughts?
>
> All of that sounds good to me.
>
> Dave
>

So I've done the above and the node I have quagga 0.99.5 running on is up 
and talking to everyone fine, routing table looks good.  The only thing 
I'm seeing from zebra in the logs are a few of these (maybe 4x in 
~20hrs) in /var/log/daemon:

Apr 25 10:17:02 cuw zebra[1871]: write : Too many references: can't splice (59)
Apr 25 10:17:05 cuw zebra[1871]: write : Too many references: can't splice (59)

Google tells me this is the ETOOMANYREFS unix error code, but that's all I got.

Dave, in extern-src/quagga/lib/ on the quagga-zrib-update branch there are 
some new route_types.* files.  The .h file is generated using gawk from 
the route_types.txt file.  There are some comments in route_types.txt 
about "switching on redist support" for HSLS.  I'm not sure what this 
means, but I tried compiling/running with it as-is and with the attached 
patch and didn't notice any difference.  Should the the patch be applied?

Bill

--
Bill Comisky
bcomisky at pobox.com
-------------- next part --------------
Index: extern-src/quagga/lib/route_types.txt
===================================================================
--- extern-src/quagga/lib/route_types.txt	(revision 4243)
+++ extern-src/quagga/lib/route_types.txt	(working copy)
@@ -56,7 +56,7 @@
 # This at least makes it trivial for users of these protocols
 # to 'switch on' redist support (direct numeric entry remaining
 # possible).
-ZEBRA_ROUTE_HSLS,       hsls,      hslsd,  'H', 0, 0, "HSLS"
+ZEBRA_ROUTE_HSLS,       hsls,      hslsd,  'H', 1, 1, "HSLS"
 ZEBRA_ROUTE_OLSR,       olsr,      oslrd,  'o', 0, 0, "OLSR"
 
 ## help strings
Index: extern-src/quagga/lib/route_types.h
===================================================================
--- extern-src/quagga/lib/route_types.h	(revision 4243)
+++ extern-src/quagga/lib/route_types.h	(working copy)
@@ -6,62 +6,67 @@
 
 /* zebra */
 #define QUAGGA_REDIST_STR_ZEBRA \
-"(rip|ripng|ospf|ospf6|isis|bgp)"
+"(rip|ripng|ospf|ospf6|isis|bgp|hsls)"
 #define QUAGGA_REDIST_HELP_STR_ZEBRA \
   "Routing Information Protocol (RIP)\n" \
   "Routing Information Protocol next-generation (IPv6) (RIPng)\n" \
   "Open Shortest Path First (OSPFv2)\n" \
   "Open Shortest Path First (IPv6) (OSPFv3)\n" \
   "Intermediate System to Intermediate System (IS-IS)\n" \
-  "Border Gateway Protocol (BGP)\n"
+  "Border Gateway Protocol (BGP)\n" \
+  "Hazy-Sighted Link State Protocol (HSLS)\n"
 
 /* ripd */
 #define QUAGGA_REDIST_STR_RIPD \
-"(kernel|connected|static|ospf|isis|bgp)"
+"(kernel|connected|static|ospf|isis|bgp|hsls)"
 #define QUAGGA_REDIST_HELP_STR_RIPD \
   "Kernel routes (not installed via the zebra RIB)\n" \
   "Connected routes (directly attached subnet or host)\n" \
   "Statically configured routes\n" \
   "Open Shortest Path First (OSPFv2)\n" \
   "Intermediate System to Intermediate System (IS-IS)\n" \
-  "Border Gateway Protocol (BGP)\n"
+  "Border Gateway Protocol (BGP)\n" \
+  "Hazy-Sighted Link State Protocol (HSLS)\n"
 
 /* ripngd */
 #define QUAGGA_REDIST_STR_RIPNGD \
-"(kernel|connected|static|ospf6|isis|bgp)"
+"(kernel|connected|static|ospf6|isis|bgp|hsls)"
 #define QUAGGA_REDIST_HELP_STR_RIPNGD \
   "Kernel routes (not installed via the zebra RIB)\n" \
   "Connected routes (directly attached subnet or host)\n" \
   "Statically configured routes\n" \
   "Open Shortest Path First (IPv6) (OSPFv3)\n" \
   "Intermediate System to Intermediate System (IS-IS)\n" \
-  "Border Gateway Protocol (BGP)\n"
+  "Border Gateway Protocol (BGP)\n" \
+  "Hazy-Sighted Link State Protocol (HSLS)\n"
 
 /* ospfd */
 #define QUAGGA_REDIST_STR_OSPFD \
-"(kernel|connected|static|rip|isis|bgp)"
+"(kernel|connected|static|rip|isis|bgp|hsls)"
 #define QUAGGA_REDIST_HELP_STR_OSPFD \
   "Kernel routes (not installed via the zebra RIB)\n" \
   "Connected routes (directly attached subnet or host)\n" \
   "Statically configured routes\n" \
   "Routing Information Protocol (RIP)\n" \
   "Intermediate System to Intermediate System (IS-IS)\n" \
-  "Border Gateway Protocol (BGP)\n"
+  "Border Gateway Protocol (BGP)\n" \
+  "Hazy-Sighted Link State Protocol (HSLS)\n"
 
 /* ospf6d */
 #define QUAGGA_REDIST_STR_OSPF6D \
-"(kernel|connected|static|ripng|isis|bgp)"
+"(kernel|connected|static|ripng|isis|bgp|hsls)"
 #define QUAGGA_REDIST_HELP_STR_OSPF6D \
   "Kernel routes (not installed via the zebra RIB)\n" \
   "Connected routes (directly attached subnet or host)\n" \
   "Statically configured routes\n" \
   "Routing Information Protocol next-generation (IPv6) (RIPng)\n" \
   "Intermediate System to Intermediate System (IS-IS)\n" \
-  "Border Gateway Protocol (BGP)\n"
+  "Border Gateway Protocol (BGP)\n" \
+  "Hazy-Sighted Link State Protocol (HSLS)\n"
 
 /* isisd */
 #define QUAGGA_REDIST_STR_ISISD \
-"(kernel|connected|static|rip|ripng|ospf|ospf6|bgp)"
+"(kernel|connected|static|rip|ripng|ospf|ospf6|bgp|hsls)"
 #define QUAGGA_REDIST_HELP_STR_ISISD \
   "Kernel routes (not installed via the zebra RIB)\n" \
   "Connected routes (directly attached subnet or host)\n" \
@@ -70,11 +75,12 @@
   "Routing Information Protocol next-generation (IPv6) (RIPng)\n" \
   "Open Shortest Path First (OSPFv2)\n" \
   "Open Shortest Path First (IPv6) (OSPFv3)\n" \
-  "Border Gateway Protocol (BGP)\n"
+  "Border Gateway Protocol (BGP)\n" \
+  "Hazy-Sighted Link State Protocol (HSLS)\n"
 
 /* bgpd */
 #define QUAGGA_REDIST_STR_BGPD \
-"(kernel|connected|static|rip|ripng|ospf|ospf6|isis)"
+"(kernel|connected|static|rip|ripng|ospf|ospf6|isis|hsls)"
 #define QUAGGA_REDIST_HELP_STR_BGPD \
   "Kernel routes (not installed via the zebra RIB)\n" \
   "Connected routes (directly attached subnet or host)\n" \
@@ -83,6 +89,21 @@
   "Routing Information Protocol next-generation (IPv6) (RIPng)\n" \
   "Open Shortest Path First (OSPFv2)\n" \
   "Open Shortest Path First (IPv6) (OSPFv3)\n" \
-  "Intermediate System to Intermediate System (IS-IS)\n"
+  "Intermediate System to Intermediate System (IS-IS)\n" \
+  "Hazy-Sighted Link State Protocol (HSLS)\n"
 
+/* hslsd */
+#define QUAGGA_REDIST_STR_HSLSD \
+"(kernel|connected|static|rip|ripng|ospf|ospf6|isis|bgp)"
+#define QUAGGA_REDIST_HELP_STR_HSLSD \
+  "Kernel routes (not installed via the zebra RIB)\n" \
+  "Connected routes (directly attached subnet or host)\n" \
+  "Statically configured routes\n" \
+  "Routing Information Protocol (RIP)\n" \
+  "Routing Information Protocol next-generation (IPv6) (RIPng)\n" \
+  "Open Shortest Path First (OSPFv2)\n" \
+  "Open Shortest Path First (IPv6) (OSPFv3)\n" \
+  "Intermediate System to Intermediate System (IS-IS)\n" \
+  "Border Gateway Protocol (BGP)\n"
+
 #endif /* _QUAGGA_ROUTE_TYPES_H */


More information about the CU-Wireless-Dev mailing list