[Cerowrt-devel] cerowrt issues (3.10.24-8)
Sebastian Moeller
moeller0 at gmx.de
Wed Jan 29 11:51:15 PST 2014
Hi Dave,
On Jan 29, 2014, at 19:21 , Dave Taht <dave.taht at gmail.com> wrote:
> On Wed, Jan 29, 2014 at 9:44 AM, Sebastian Moeller <moeller0 at gmx.de> wrote:
>> On January 29, 2014 5:10:18 PM CET, Dave Taht <dave.taht at gmail.com> wrote:
>>> On Wed, Jan 29, 2014 at 4:45 AM, Sebastian Moeller <moeller0 at gmx.de>
>>> wrote:
>>>> Hi Dave,
>>>>
>>>> quick question, how does one turn of logging for babeld? It seems
>>> that if daemonized it defaults to logging to /var/log/babeld.log (or
>>> similar). Is setting the log file to /dev/null really the answer?
>>>
>>> seems so.
>>
>> Okay, I guess I will try that then...
>>
>>
>>>
>>>> (Since I have no the IPv6 issue not yet resolved, I assume
>>> babeld is unhappy) I resorted to stopping babeld completely, but that
>>> feels like a crutch...
>>>
>>> no daemon in an embedded system should ever write to flash in an
>>> uncontrollable manner.
>>
>> What bugs me is that it basically keeps repeating the same error over and over again. If it would rate limit and:or push messages to the system log it would be nicer.
>>
>>
>>>
>>> I will also argue that not being able to find the channel is a bug
>>> that messes with diversity routing
>>> in particular.
>>
>> I have actually not yet understood what it wants to tell me ;), since I got your attention, is there an easy way to run a babel client under macosx?
>
> for coping with the mac I use "macports" to get a compiler and support
> for open source software.
Ah, same here (even though I would have thought you a homebrew user, no idea why) ;)
Alas, "port search babel" does not find anything babeld related...
>
> I haven't ever tried to run babeld on the mac I have, I will put it on
> my list…
I just thought it would be nice to finally get into the "stay connected while switching between wired and wire-less fun", but this is in no way essential for me.
Best Regards
Sebastian
>
>>
>>
>> Best Regards
>> Sebastian
>>
>>
>>>
>>>>
>>>> Best
>>>> Sebastian
>>>>
>>>>
>>>>
>>>> On Jan 27, 2014, at 22:14 , Dave Taht <dave.taht at gmail.com> wrote:
>>>>
>>>>> certainly turn off the babeld log! I will leave it off in the next
>>> release.
>>>>>
>>>>> On Mon, Jan 27, 2014 at 4:10 PM, Steve Jenson <stevej at fruitless.org>
>>> wrote:
>>>>>> Looking more, the buffer errors are showing up in syslog well
>>> before tmpfs
>>>>>> fills up. Is the memtester openwrt package available for cerowrt? I
>>> don't
>>>>>> see it under `Available packages`.
>>>>>>
>>>>>> Thanks,
>>>>>> Steve
>>>>>>
>>>>>>
>>>>>> On Mon, Jan 27, 2014 at 1:06 PM, Steve Jenson
>>> <stevej at fruitless.org> wrote:
>>>>>>>
>>>>>>> On Fri, Jan 24, 2014 at 3:23 PM, Dave Taht <dave.taht at gmail.com>
>>> wrote:
>>>>>>>>
>>>>>>>> On Fri, Jan 24, 2014 at 6:08 PM, Steve Jenson
>>> <stevej at fruitless.org>
>>>>>>>> wrote:
>>>>>>>>> Hi everybody,
>>>>>>>>>
>>>>>>>>> I've been using cerowrt as a secondary wifi network (just a
>>> single AP
>>>>>>>>> for
>>>>>>>>> now) for a few weeks now. Recently, my wndr3800 got stuck in a
>>> bad
>>>>>>>>> state and
>>>>>>>>> eventually rebooted. I've had this happen a few times now and am
>>>>>>>>> looking for
>>>>>>>>> ways to debug the issue. I'm new to cerowrt and openwrt so any
>>> advice
>>>>>>>>> is
>>>>>>>>> appreciated.
>>>>>>>>>
>>>>>>>>> Since I use it as a secondary network, this is no way critical.
>>>>>>>>
>>>>>>>> Yea! I appreciate caution before putting alpha software on your
>>> gw.
>>>>>>>>
>>>>>>>>> I'm not
>>>>>>>>> looking for free tech support but I couldn't find anything on
>>> the wiki
>>>>>>>>> about
>>>>>>>>> troubleshooting. I'd love to start a page and write some shell
>>> scripts
>>>>>>>>> to
>>>>>>>>> diagnose and report issues. I know that a cerowrt router is
>>> meant to be
>>>>>>>>> a
>>>>>>>>> research project rather a consumer device but these things seem
>>> helpful
>>>>>>>>> regardless.
>>>>>>>>
>>>>>>>> Sure, let me know your wiki account. I have been lax about
>>> granting
>>>>>>>> access of late as the signup process is overrun by spammers.
>>>>>>>
>>>>>>>
>>>>>>> My username is stevej on the wiki. Thanks!
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>>> Please let me know if you'd prefer I not email the list with
>>> these
>>>>>>>>> issues or
>>>>>>>>> if you'd rather I used trac or a different forum.
>>>>>>>>>
>>>>>>>>
>>>>>>>> The list is where most stuff happens. Also in the irc channel.
>>>>>>>>
>>>>>>>> If it gets to where it needs to be tracked we have a bugtracker
>>> at
>>>>>>>>
>>>>>>>> http://www.bufferbloat.net/projects/cerowrt/issues
>>>>>>>>
>>>>>>>> The first question I have is: Are you on comcast? Cerowrt
>>>>>>>> had a dhcpv6-pd implementation that "just worked" from feburary
>>> through
>>>>>>>> december. Regrettably they changed the RA announcement interval
>>>>>>>> to a really low number around then... and this triggers a
>>> firewall reload
>>>>>>>> every minute on everything prior to the release I point to below.
>>>>>>>>
>>>>>>>> If there is a memory leak somewhere that would have triggered it.
>>>>>>>
>>>>>>>
>>>>>>> I am on AT&T ADSL2+ with a Motorola NVG510 modem.
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>>> In this state, I can connect to the cerowrt base station via
>>> wifi but
>>>>>>>>> am
>>>>>>>>> unable to route packets to the internet. I can connect to :81
>>> and see
>>>>>>>>> the
>>>>>>>>> login page but logging in results in a lua error at
>>> `/cgi-bin/luci`
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> /usr/lib/lua/luci/dispatcher.lua:448: Failed to execute
>>> function
>>>>>>>>> dispatcher target for entry '/'.
>>>>>>>>> The called action terminated with an exception:
>>>>>>>>> /usr/lib/lua/luci/sauth.lua:87: Session data invalid!
>>>>>>>>> stack traceback:
>>>>>>>>> [C]: in function 'assert'
>>>>>>>>> /usr/lib/lua/luci/dispatcher.lua:448: in function 'dispatch'
>>>>>>>>> /usr/lib/lua/luci/dispatcher.lua:195: in function
>>>>>>>>> </usr/lib/lua/luci/dispatcher.lua:194>
>>>>>>>>>
>>>>>>>>> I can ssh into the device and cat various log files until the
>>> router
>>>>>>>>> hangs
>>>>>>>>> and reboots. here's a few relevant lines from my terminal
>>> history
>>>>>>>>> before the
>>>>>>>>> device rebooted (I'm assuming a watchdog kicked in and rebooted
>>> it).
>>>>>>>>>
>>>>>>>>> root at buffy2-1:~# ping google.com
>>>>>>>>> ping: bad address 'google.com'
>>>>>>>>> root at buffy2-1:~# free
>>>>>>>>> total used free shared
>>> buffers
>>>>>>>>> Mem: 126336 110332 16004 0
>>> 5616
>>>>>>>>> -/+ buffers: 104716 21620
>>>>>>>>> Swap: 0 0 0
>>>>>>>>> root at buffy2-1:~# uptime
>>>>>>>>> 02:08:54 up 2 days, 1:26, load average: 0.10, 0.21, 0.17
>>>>>>>>> root at buffy2-1:~# dmesg
>>>>>>>>> [ 0.000000] Linux version 3.10.24 (cero2 at snapon) (gcc version
>>> 4.6.4
>>>>>>>>> (OpenWrt/Linaro GCC 4.6-2013.05 r38226) ) #1 Tue Dec 24
>>>>>>>>> 10:50:15 PST 2013
>>>>>>>>> [skipping some lines]
>>>>>>>>>
>>>>>>>>> [ 13.156250] Error: Driver 'gpio-keys-polled' is already
>>> registered,
>>>>>>>>> aborting...
>>>>>>>>> [ 19.414062] IPv6: ADDRCONF(NETDEV_UP): ge00: link is not
>>> ready
>>>>>>>>> [ 19.421875] ar71xx: pll_reg 0xb8050010: 0x11110000
>>>>>>>>> [ 19.429687] se00: link up (1000Mbps/Full duplex)
>>>>>>>>> [ 22.140625] IPv6: ADDRCONF(NETDEV_UP): sw00: link is not
>>> ready
>>>>>>>>> [ 23.351562] IPv6: ADDRCONF(NETDEV_CHANGE): sw00: link becomes
>>> ready
>>>>>>>>> [ 23.757812] ar71xx: pll_reg 0xb8050014: 0x11110000
>>>>>>>>> [ 23.757812] ge00: link up (1000Mbps/Full duplex)
>>>>>>>>> [ 23.773437] IPv6: ADDRCONF(NETDEV_CHANGE): ge00: link becomes
>>> ready
>>>>>>>>>
>>>>>>>>> root at buffy2-1:~# ifconfig
>>>>>>>>> ge00 Link encap:Ethernet HWaddr 2C:B0:5D:A0:C5:B1
>>>>>>>>> inet addr:192.168.1.138 Bcast:192.168.1.255
>>>>>>>>> Mask:255.255.255.0
>>>>>>>>> inet6 addr: fe80::2eb0:5dff:fea0:c5b1/64 Scope:Link
>>>>>>>>> inet6 addr: 2602:30a:2cdb:330:2eb0:5dff:fea0:c5b1/64
>>>>>>>>> Scope:Global
>>>>>>>>> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
>>>>>>>>> RX packets:1469670 errors:0 dropped:8 overruns:0
>>> frame:0
>>>>>>>>> TX packets:547733 errors:0 dropped:0 overruns:0
>>> carrier:0
>>>>>>>>> collisions:0 txqueuelen:1000
>>>>>>>>> RX bytes:229243410 (218.6 MiB) TX bytes:57304808 (54.6
>>> MiB)
>>>>>>>>> Interrupt:5
>>>>>>>>>
>>>>>>>>> lo Link encap:Local Loopback
>>>>>>>>> inet addr:127.0.0.1 Mask:255.0.0.0
>>>>>>>>> inet6 addr: ::1/128 Scope:Host
>>>>>>>>> UP LOOPBACK RUNNING MTU:65536 Metric:1
>>>>>>>>> RX packets:23689 errors:0 dropped:0 overruns:0 frame:0
>>>>>>>>> TX packets:23689 errors:0 dropped:0 overruns:0
>>> carrier:0
>>>>>>>>> collisions:0 txqueuelen:0
>>>>>>>>> RX bytes:2612713 (2.4 MiB) TX bytes:2612713 (2.4 MiB)
>>>>>>>>>
>>>>>>>>> pimreg Link encap:UNSPEC HWaddr
>>>>>>>>> 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
>>>>>>>>> UP RUNNING NOARP MTU:1472 Metric:1
>>>>>>>>> RX packets:0 errors:0 dropped:0 overruns:0 frame:0
>>>>>>>>> TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
>>>>>>>>> collisions:0 txqueuelen:0
>>>>>>>>> RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
>>>>>>>>>
>>>>>>>>> se00 Link encap:Ethernet HWaddr 2E:B0:5D:A0:C5:B0
>>>>>>>>> inet addr:172.30.42.1 Bcast:172.30.42.31
>>>>>>>>> Mask:255.255.255.224
>>>>>>>>> inet6 addr: 2602:30a:2cdb:330:2eb0:5dff:fea0:c5b1/64
>>>>>>>>> Scope:Global
>>>>>>>>
>>>>>>>> How are you assigning your ipv6 addresses?
>>>>>>>
>>>>>>>
>>>>>>> It's been a while since I messed with this but I think IPv6 is
>>> assigned
>>>>>>> thanks to 6relayd? My modem has IPv6 enabled but no DHCPv6 options
>>> that I
>>>>>>> can find. Here's how cerowrt is configured.
>>>>>>>
>>>>>>> root at buffy2-1:/overlay/etc/config# cat 6relayd
>>>>>>> config server 'default'
>>>>>>> option fallback_relay 'rd dhcpv6 ndp'
>>>>>>> list network 'ge00'
>>>>>>> list network 'ge01'
>>>>>>> list network 'gw00'
>>>>>>> list network 'gw01'
>>>>>>> list network 'gw10'
>>>>>>> list network 'gw11'
>>>>>>> list network 'se00'
>>>>>>> list network 'sw00'
>>>>>>> list network 'sw10'
>>>>>>> option rd 'relay'
>>>>>>> option dhcpv6 'relay'
>>>>>>> option ndp 'relay'
>>>>>>> option master 'ge00'
>>>>>>>
>>>>>>>>
>>>>>>>>> inet6 addr: fe80::2cb0:5dff:fea0:c5b0/64 Scope:Link
>>>>>>>>> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
>>>>>>>>> RX packets:0 errors:0 dropped:0 overruns:0 frame:0
>>>>>>>>> TX packets:191740 errors:0 dropped:0 overruns:0
>>> carrier:0
>>>>>>>>> collisions:0 txqueuelen:1000
>>>>>>>>> RX bytes:0 (0.0 B) TX bytes:42184988 (40.2 MiB)
>>>>>>>>> Interrupt:4
>>>>>>>>>
>>>>>>>>> sw00 Link encap:Ethernet HWaddr 2C:B0:5D:A0:C5:B0
>>>>>>>>> inet addr:172.30.42.65 Bcast:172.30.42.95
>>>>>>>>> Mask:255.255.255.224
>>>>>>>>> inet6 addr: 2602:30a:2cdb:330:2eb0:5dff:fea0:c5b1/64
>>>>>>>>> Scope:Global
>>>>>>>>> inet6 addr: fe80::2eb0:5dff:fea0:c5b0/64 Scope:Link
>>>>>>>>> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
>>>>>>>>> RX packets:70239 errors:0 dropped:0 overruns:0 frame:0
>>>>>>>>> TX packets:286967 errors:0 dropped:0 overruns:0
>>> carrier:0
>>>>>>>>> collisions:0 txqueuelen:1000
>>>>>>>>> RX bytes:15590189 (14.8 MiB) TX bytes:127357293 (121.4
>>> MiB)
>>>>>>>>>
>>>>>>>>> root at buffy2-1:~# less /var/log/babeld.log
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> send: Cannot assign requested address
>>>>>>>>> send: Cannot assign requested address
>>>>>>>>> send: Cannot assign requested address
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> netlink_read: recvmsg(): No buffer space available
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>> Couldn't determine channel of interface sw00: Invalid argument.
>>>>>>>>
>>>>>>>> This is a problem in babel detecting the channel on a "normal"
>>>>>>>> rather than a mesh interface. It's bugged me a long while, but
>>>>>>>> haven't got around to finding what triggers it. Might "fix" it by
>>>>>>>> acquiring the channel at babel start time from
>>> /etc/config/wireless.
>>>>>>>>
>>>>>>>> It messes up the diversity routing calculation, grump.
>>>>>>>>
>>>>>>>> There is a possibility a logfile got really big, but this one
>>>>>>>> generally doesn't, but I should turn off logging in some
>>>>>>>> future release...
>>>>>>>
>>>>>>>
>>>>>>> I believe I've tracked down part of what's going on. It looks like
>>> my
>>>>>>> tmpfs is filling up 100% and then the device enters a bad state:
>>>>>>>
>>>>>>> After 24 hours, with tmpfs at 50%, babeld.log is the largest file
>>> by far
>>>>>>> in tmpfs and the only file that appears to be growing (based on
>>> `du`). It
>>>>>>> takes about 48 hours from reboot to fill up tmpfs on my device.
>>>>>>>
>>>>>>> # sort babeld.log | uniq -c |sort -rn |head
>>>>>>>
>>>>>>> 503236 Couldn't determine channel of interface sw00: Invalid
>>> argument.
>>>>>>>
>>>>>>> 1376 netlink_read: recvmsg(): No buffer space available
>>>>>>>
>>>>>>> 3 send: Cannot assign requested address
>>>>>>>
>>>>>>> # wc -l babeld.log
>>>>>>>
>>>>>>> 504617 babeld.log
>>>>>>>
>>>>>>> I sped up system failure by using `dd` to fill up tmpfs and the
>>> system
>>>>>>> became immediately unusable.
>>>>>>>
>>>>>>> This also explains the luci session store errors as sessions are
>>> stored in
>>>>>>> tmpfs.
>>>>>>>
>>>>>>> The other buffer issues may or may not be related to this.
>>>>>>>
>>>>>>> Best,
>>>>>>> Steve
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Dave Täht
>>>>>
>>>>> Fixing bufferbloat with cerowrt:
>>> http://www.teklibre.com/cerowrt/subscribe.html
>>>>> _______________________________________________
>>>>> Cerowrt-devel mailing list
>>>>> Cerowrt-devel at lists.bufferbloat.net
>>>>> https://lists.bufferbloat.net/listinfo/cerowrt-devel
>>>>
>>
>> Hi Dave,
>> --
>> Sent from my Android phone with K-9 Mail. Please excuse my brevity.
>
>
>
> --
> Dave Täht
>
> Fixing bufferbloat with cerowrt: http://www.teklibre.com/cerowrt/subscribe.html
More information about the Cerowrt-devel
mailing list