On Thu, 2010-02-25 at 14:11 -0300, Bernie Innocenti wrote:
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: ******************* START
> **********************************
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 0:
> NetworkManager(nm_logging_backtrace+0x45) [0x8078da5]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 1: NetworkManager
> [0x8072f4d]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 2: [0xb77c6400]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 3: NetworkManager
> [0x8067a5b]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 4:
> /lib/libgobject-2.0.so.0(g_cclosure_marshal_VOID__OBJECT+0x88) [0x93f338]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 5:
> /lib/libgobject-2.0.so.0(g_closure_invoke+0x1b2) [0x932352]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 6: /lib/libgobject-2.0.so.0
> [0x947cf0]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 7:
> /lib/libgobject-2.0.so.0(g_signal_emit_valist+0x7bd) [0x94905d]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 8:
> /lib/libgobject-2.0.so.0(g_signal_emit+0x26) [0x9494e6]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 9:
> NetworkManager(_nm_marshal_VOID__STRING_STRING_POINTER_POINTER+0x9d)
> [0x808ab1d]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 10:
> /lib/libgobject-2.0.so.0(g_closure_invoke+0x1b2) [0x932352]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 11:
> /lib/libgobject-2.0.so.0 [0x947cf0]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 12:
> /lib/libgobject-2.0.so.0(g_signal_emit_valist+0x7bd) [0x94905d]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 13:
> /lib/libgobject-2.0.so.0(g_signal_emit+0x26) [0x9494e6]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 14: NetworkManager
> [0x806df19]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 15: /usr/lib/libhal.so.1
> [0x71bc3e3]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 16:
> /lib/libdbus-1.so.3(dbus_connection_dispatch+0x36d) [0x703287d]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 17:
> /usr/lib/libdbus-glib-1.so.2 [0x71ca19d]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 18:
> /lib/libglib-2.0.so.0(g_main_context_dispatch+0x1f8) [0x852308]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 19: /lib/libglib-2.0.so.0
> [0x8559e0]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 20:
> /lib/libglib-2.0.so.0(g_main_loop_run+0x1bf) [0x855e4f]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 21:
> NetworkManager(main+0xe37) [0x8073d97]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 22:
> /lib/libc.so.6(__libc_start_main+0xe6) [0x673a86]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: Frame 23: NetworkManager
> [0x80570d1]
> Feb 25 17:01:30 xo-37-38-0f NetworkManager: ******************* END
> **********************************
> Feb 25 17:02:14 xo-37-38-0f kernel: [ 3523.422953] psmouse serio1: detected
> 37px jump in x
Ok, I traced it down to ./src/nm-device-olpc-mesh.c:is_companion(), at
the memcmp() line.
their_addr is on the stack, so the invalid pointer must be priv. I can't
debub further without rebuilding the rpm with -g. Any idea what might
have gone wrong here?
static gboolean
is_companion (NMDeviceOlpcMesh *self, NMDevice *other)
{
NMDeviceOlpcMeshPrivate *priv = NM_DEVICE_OLPC_MESH_GET_PRIVATE
(self);
struct ether_addr their_addr;
if (!NM_IS_DEVICE_WIFI (other))
return FALSE;
nm_device_wifi_get_address (NM_DEVICE_WIFI (other), &their_addr);
if (memcmp (priv->hw_addr.ether_addr_octet,
their_addr.ether_addr_octet, ETH_ALEN) != 0) {
return FALSE;
}
--
// Bernie Innocenti - http://codewiz.org/
\X/ Sugar Labs - http://sugarlabs.org/
_______________________________________________
Devel mailing list
[email protected]
http://lists.laptop.org/listinfo/devel