On Tue, 2013-05-21 at 18:09 -0700, Thomas Pedersen wrote: > Hey, Sorry for the late response. Me too :) > >> netif_carrier_off(sdata->dev); > >> + if (sdata->dev->priv_flags & IFF_BRIDGE_PORT) > >> + /* stop bridge transmissions */ > >> + call_netdevice_notifiers(NETDEV_CHANGE, sdata->dev); > > > > Err, this seems like a really bad hack? I don't really think drivers > > should call that? > > Why not? We're just notifying the bridge interface that this port has > gone down, to avoid dereferencing a null pointer (on bridge flood > traffic) after the mesh_bss has been removed. > > Is cfg80211_leave_mesh() an acceptable location for this fix? I'm not really convinced it's an acceptable fix in itself? Why should we ever have to call netdev notifiers, that seems odd to me. Also why would that prevent a crash? Wouldn't we just drop packets for the mesh if we aren't joined in a mesh any more? Or something like that? Accessing the priv flags and then calling the netdev notifiers seems really strange to me. If this was necessary, then wouldn't netif_carrier_off() do it internally? johannes -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html