On Thu, 4 Oct 2007 12:33:43 +0100 (BST) Daniel Drake <dsd@xxxxxxxxxx> wrote: > This sequence of events causes loss of connectivity: > > <plug in> > <associate as normal in managed mode> > ifconfig eth7 down > iwconfig eth7 mode monitor > ifconfig eth7 up > ifconfig eth7 down > iwconfig eth7 mode managed > <associate as normal> > > At this point you are associated but TX does not work. This is because > the eth7 hard_start_xmit is still ieee80211_monitor_start_xmit. > > Fix this by unsetting the hard_start_xmit handler in ieee80211_if_reinit. It > will then be reinitialised to the default (ieee80211_subif_start_xmit) in > ieee80211_if_set_type. > > Signed-off-by: Daniel Drake <dsd@xxxxxxxxxx> Playing with the function pointer is a awkward way to do this. Shouldn't the state management flags be used instead (dormant, running, stop/wake)... I am concerned about races and dereferencing the NULL ptr. -- Stephen Hemminger <shemminger@xxxxxxxxxxxxxxxxxxxx> - 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