kern/144898: [wpi] [panic] wpi panics system

Alex Kozlov spam at rm-rf.kiev.ua
Thu Aug 5 22:00:22 UTC 2010


The following reply was made to PR kern/144898; it has been noted by GNATS.

From: Alex Kozlov <spam at rm-rf.kiev.ua>
To: Dominic Fandrey <kamikaze at bsdforen.de>, bug-followup at freebsd.org,
	spam at rm-rf.kiev.ua
Cc:  
Subject: Re: kern/144898: [wpi] [panic] wpi panics system
Date: Fri, 6 Aug 2010 00:52:26 +0300

 --7AUc2qLy4jB3hD7Z
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline
 
 Hi, Dominic
 
 It's seems to be common issue for many wireless if drivers.
 Can You please try this patch? Thanks.
 
 
 --
 Adios
 
 --7AUc2qLy4jB3hD7Z
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: attachment; filename="patch.txt"
 
 Index: sys/dev/wpi/if_wpi.c
 @@ -2399,7 +2399,7 @@
  wpi_auth(struct wpi_softc *sc, struct ieee80211vap *vap)
  {
  	struct ieee80211com *ic = vap->iv_ic;
 -	struct ieee80211_node *ni = vap->iv_bss;
 +	struct ieee80211_node *ni = ieee80211_ref_node(vap->iv_bss);
  	struct wpi_node_info node;
  	int error;
  
 @@ -2449,6 +2449,7 @@
  	node.action = htole32(WPI_ACTION_SET_RATE);
  	node.antenna = WPI_ANTENNA_BOTH;
  	error = wpi_cmd(sc, WPI_CMD_ADD_NODE, &node, sizeof node, 1);
 +	ieee80211_free_node(ni);
  	if (error != 0)
  		device_printf(sc->sc_dev, "could not add BSS node\n");
  
 @@ -2459,7 +2460,7 @@
  wpi_run(struct wpi_softc *sc, struct ieee80211vap *vap)
  {
  	struct ieee80211com *ic = vap->iv_ic;
 -	struct ieee80211_node *ni = vap->iv_bss;
 +	struct ieee80211_node *ni = ieee80211_ref_node(vap->iv_bss);
  	int error;
  
  	if (vap->iv_opmode == IEEE80211_M_MONITOR) {
 @@ -2493,8 +2494,9 @@
  	}
  
  	error = wpi_set_txpower(sc, ni->ni_chan, 1);
 +	ieee80211_free_node(ni);
  	if (error != 0) {
 -		device_printf(sc->sc_dev, "could set txpower\n");
 +		device_printf(sc->sc_dev, "could not set txpower\n");
  		return error;
  	}
  
 
 --7AUc2qLy4jB3hD7Z--


More information about the freebsd-net mailing list