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/