[Sugar-devel] Telepathy Salut on Sugar 0.102 on Fedora 20 almost works

James Cameron quozl at laptop.org
Tue Sep 16 03:53:39 EDT 2014


Summary: partially solved with new kernel.

The Chat activity was run with debug logging in Terminal:

	% SUGAR_LOGGER_LEVEL=debug sugar-launch org.laptop.Chat

At the time the activity was shared, the log showed:

1410842095.436535 DEBUG sugar3.presence.activity: <_ShareCommand object at 0x527dc8 (sugar3+presence+activity+_ShareCommand at 0x4f7c20)>: Join finished DBusException(dbus.String(u'Failed to connect to multicast group'),)

Telepathy Salut was failing to setup the multicast group, because it
was calling setsockopt with SO_REUSEPORT, because Fedora 20 header
files define SO_REUSEPORT, but the OLPC kernel did not.

(It is bad that the failure was not reported to the user or to the
logs unless debug logging was turned on.  If someone cares, they can
raise a bug.)

Adding SO_REUSEPORT support to the kernel [2] solved for Salut over
networks where DHCP is available; such as wired or wireless access
points.  The new kernel is in the dropbox [3].  The previous change to
avahi-daemon configuration is removed [4].

A different problem occurs with Salut over link local addresses; IBSS
ad-hoc wireless.  The buddy icons are missing.

	# avahi-browse -t _presence._tcp # shows no output

References:

1.
http://code.metager.de/source/xref/freedesktop/telepathy/salut/lib/gibber/gibber-multicast-transport.c

2.
http://dev.laptop.org/git/olpc-kernel/log/?h=arm-3.5

3.
http://rpmdropbox.laptop.org/f20-xo4/
kernel-3.5.7_xo4-20140916.0607.olpc.5196e01.armv7hl.rpm

4.
http://dev.laptop.org/git/projects/olpc-os-builder/commit/?id=f34ddb8b83ca6b9cb657e115df117ffa3704eea5


On Thu, Sep 11, 2014 at 06:24:20PM +1000, James Cameron wrote:
> G'day,
> 
> Activities shared by Fedora 20 systems do not appear in Network
> Neighbourhood on Fedora 18 or Fedora 20 systems.  Buddies appear.
> Activities shared by Fedora 18 Sugar 0.98 systems appear.
> 
> So this is a failure to announce sharing of activities on Sugar 0.102
> on Fedora 20.
> 
> tcpdump shows mDNS packets for every operation except when an activity
> is shared on Fedora 20.
> 
> avahi-browse output is consistent with Network Neighbourhood.
> 
> 	avahi-browse -t _presence._tcp # for buddies
> 	avahi-browse -t _clique._udp # for activities
> 
> (avahi-daemon needed tweaking to compensate for lack of SO_REUSEPORT
> support in 3.5 kernel; change /etc/avahi/avahi-daemon.conf to set
> disallow-other-stacks=yes)
> 
> I have tried http://wiki.sugarlabs.org/go/BugSquad/Telepathy_Debugging
> but there is no interesting output corresponding to the event.
> 
> I have used strace and seen possible D-Bus activity relating to the
> event.  sendmsg(11, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\0\1<\0\0\0/\0\0\0\252\0\0\0\1\1o\0?\0\0\0/org/fre"..., 192}, {"+\0\0\0org.freedesktop.Telepathy.Ch"..., 60}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 252
> 
> I welcome any suggestions for further diagnosing this problem.
> 
> -- 
> James Cameron
> http://quozl.linux.org.au/

-- 
James Cameron
http://quozl.linux.org.au/


More information about the Sugar-devel mailing list