[Babel-users] resuming 1.8.3 deployment

Dave Taht dave.taht at gmail.com
Wed Oct 31 17:11:41 GMT 2018


ok, so, patching the xroute-nlogn branch with the attached patch,
(essentially the same as christofs),  and running with a mix of
unicast and multicast routers doesn't crash.

Carnage still eventually ensues with injecting 8192 (* 2)  routes from
two places, but  I think replacing the existing linked list with a
binary tree in the resend routines will lick this. Possibly also
limiting garbage collection attempts in resend_expired as well.

Each sample counts as 0.01 seconds.
  %   cumulative   self              self     total
 time   seconds   seconds    calls  ms/call  ms/call  name
 80.97     57.77    57.77   938622     0.06     0.06  find_resend
  3.74     60.44     2.67 159556840     0.00     0.00  timeval_minus_msec
  3.67     63.06     2.62  4980064     0.00     0.00  find_route_slot
  1.35     64.02     0.96     6907     0.14     0.14  route_stream
  1.12     64.82     0.80 48779070     0.00     0.00  route_stream_next
  0.78     65.38     0.56 211642614     0.00     0.00  resend_expired
  0.70     65.88     0.50    27750     0.02     0.13  recompute_resend_time
  0.60     66.31     0.43 50625680     0.00     0.00  chg_route_metric
  0.57     66.72     0.41  4733838     0.00     0.00  really_buffer_update
  0.57     67.13     0.41     4544     0.09     3.00  update_neighbour_metric
  0.49     67.48     0.35 51329597     0.00     0.00  prefix_cmp
  0.34     67.72     0.24   450100     0.00     0.00  netlink_read
  0.34     67.96     0.24  8705959     0.00     0.00  roughly
  0.25     68.14     0.18   246825     0.00     0.00  kernel_route
  0.22     68.30     0.16                             timeval_minus
  0.18     68.42     0.13 17959773     0.00     0.00  timeval_add_msec
  0.17     68.54     0.12   792003     0.00     0.00  really_send_update
  0.16     68.66     0.12  4939380     0.00     0.00  route_expired
  0.15     68.77     0.11 68291064     0.00     0.00  is_default
  0.15     68.88     0.11   998027     0.00     0.00  find_route
  0.15     68.99     0.11   431076     0.00     0.00  netlink_talk
  0.14     69.09     0.10  9417335     0.00     0.00  route_smoothed_metric
  0.14     69.19     0.10  2897419     0.00     0.00  update_route_metric
  0.14     69.29     0.10   544065     0.00     0.02  send_update
  0.14     69.39     0.10   178975     0.00     0.00  find_source
  0.14     69.49     0.10       86     1.16    32.92  conflict_solution
  0.11     69.57     0.08   498328     0.00     0.00  find_best_route
  0.10     69.64     0.07 14280435     0.00     0.00  accumulate_short
  0.10     69.71     0.07  4875431     0.00     0.00  accumulate_bytes
:
On Wed, Oct 31, 2018 at 9:32 AM Dave Taht <dave.taht at gmail.com> wrote:
>
> I merged the first two against the nlogn branch (it looked like
> juliusz had fixed the dref), and am testing it now, using a mixture of
> unicast and multicast. )
>
> however, after a few minutes after injecting rtod -r 8192 from two places...
>
> It looks like it crashing on the same kind of dref on a different
> path. Your patch was different, so I'll try that in a sec.
>
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> Core was generated by `./babeld -L /tmp/babel.log -l -g 33123 -S
> /var/lib/babeld/state eno1 wlp2s0 wlx'.
> Program terminated with signal SIGSEGV, Segmentation fault.
> #0  0x000000000040c21c in start_message (buf=buf at entry=0x14af6c8,
>     type=type at entry=10, len=len at entry=22) at message.c:957
> 957     buf->buf[buf->len++] = type;
> (gdb) up
> #1  0x000000000040c5b0 in send_multihop_request (buf=0x14af6c8,
>     prefix=0x14cefc8 "\374\346\022\302ؑ\b\201", plen=<optimized out>,
>     src_prefix=0x14cefd9 "", src_plen=<optimized out>, seqno=<optimized out>,
>     id=0x14cefc0 "\002%\220\377\376\301bR\374\346\022\302ؑ\b\201",
>     hop_count=127) at message.c:1809
> 1809     start_message(buf, MESSAGE_MH_REQUEST, len);
> (gdb) bt
> #0  0x000000000040c21c in start_message (buf=buf at entry=0x14af6c8,
>     type=type at entry=10, len=len at entry=22) at message.c:957
> #1  0x000000000040c5b0 in send_multihop_request (buf=0x14af6c8,
>     prefix=0x14cefc8 "\374\346\022\302ؑ\b\201", plen=<optimized out>,
>     src_prefix=0x14cefd9 "", src_plen=<optimized out>, seqno=<optimized out>,
>     id=0x14cefc0 "\002%\220\377\376\301bR\374\346\022\302ؑ\b\201",
>     hop_count=127) at message.c:1809
> #2  0x000000000040e019 in send_request_resend (
>     prefix=0x14cefc8 "\374\346\022\302ؑ\b\201", plen=64 '@',
>     src_prefix=0x14cefd9 "", src_plen=0 '\000', seqno=<optimized out>,
>     id=0x14cefc0 "\002%\220\377\376\301bR\374\346\022\302ؑ\b\201")
>     at message.c:1907
> #3  0x000000000040a836 in flush_route (route=route at entry=0x1628180)
>     at route.c:300
> #4  0x000000000040b076 in expire_routes () at route.c:1216
> #5  0x0000000000403121 in main (argc=<optimized out>, argv=<optimized out>)
>     at babeld.c:751
>
> On Tue, Oct 30, 2018 at 12:03 PM Christof Schulze
> <christof.schulze at gmx.net> wrote:
> >
> > On Thu, Oct 25, 2018 at 09:26:51PM +0200, Juliusz Chroboczek wrote:
> > >> Also it would be really helpful if that remaining PR (prefsrc) could be
> > >> considered.
> > Sure! I attached the two patches on this mail.
> >
> > Patch 0001 removes outdated information from the manpage
> > Patch 0002 adds prefsrc capabilities
> > Patch 0003 fixes a build issue in rfc6126bis in message.c
> >
> >
> >
> > viele Grüße
> >
> > Christof
> >
> >
> >
> > >
> > >Christof, are you willing to send me a clean patch against the rfc6126bis
> > >branch, or shall I do the merge myself?
> > >
> > >-- Juliusz
> >
> > --
> > ()  ascii ribbon campaign - against html e-mail
> > /\  against proprietary attachments
> >
> > _______________________________________________
> > Babel-users mailing list
> > Babel-users at alioth-lists.debian.net
> > https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/babel-users
>
>
>
> --
>
> Dave Täht
> CTO, TekLibre, LLC
> http://www.teklibre.com
> Tel: 1-831-205-9740



-- 

Dave Täht
CTO, TekLibre, LLC
http://www.teklibre.com
Tel: 1-831-205-9740
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-yet-another-fix-for-interface-deref.patch
Type: text/x-patch
Size: 1204 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/babel-users/attachments/20181031/df3a3590/attachment.bin>


More information about the Babel-users mailing list