2007/12/25, bruno randolf <bruno@xxxxxxxxxxxxx>: > hello! > > i'm seeing the same oops, it seems to be a regression from > > commit fd640775bd16e1df50c867cc547af0787f9bd4ab > Author: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> > Date: Wed Dec 19 01:31:26 2007 +0100 > > mac80211: dont use interface indices in drivers > > seems ath5k likes to write some rate registers before vif is set up. i used > the following as a stopgap fix. johannes, do you have any advice how to > properly fix that? > > diff --git a/drivers/net/wireless/ath5k/hw.c b/drivers/net/wireless/ath5k/hw.c > index f4478f6..2e9f5c5 100644 > --- a/drivers/net/wireless/ath5k/hw.c > +++ b/drivers/net/wireless/ath5k/hw.c > @@ -510,6 +510,11 @@ static inline void ath5k_hw_write_rate_duration(struct > ath5k_hw *ah, > const struct ath5k_rate_table *rt; > unsigned int i; > > + if (sc->vif == NULL) { > + printk("*** sc->vif NULL\n"); > + return; > + } > + > /* Get rate table for the current operating mode */ > rt = ath5k_hw_get_rate_table(ah, > driver_mode); > > bruno > Seems right as it doesn't break reset, i was just thinking maybe we should pass an "initial" argument on ath5k_hw_reset to also skip some other step (eg. saving/restoring tsf/seqnum etc). What do you think ? -- GPG ID: 0xD21DB2DB As you read this post global entropy rises. Have Fun ;-) Nick - 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