NetworkManager from fedora-updates-testing broken on F11-XO1

Bernie Innocenti bernie at codewiz.org
Thu Feb 25 19:38:09 EST 2010


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/



More information about the Devel mailing list