some hostap_io_debug data

JuanJo Ciarlante jjo-hostap
Tue Apr 1 06:21:37 PST 2003


Hi...
  I've collected some hostap_io_debug data (gzip < /proc/... > file ) that
may interest you, Jouni.
  They are several files, caught by a 5min' cron "watchdog" which restarts the
pcmcia machinery when it detects disassociation by reading iwconfig output,
they are at: 
  http://jjo.homeip.net/hostap/

  I'm running latest CVS (weekend) plus attached patch (which have
enourmosly incremented stability, voiding "timeout after ... +resetting").
  This is a Pentium 166, stock linux 2.4.20 with a Compaq WL200 with fw
1.5.6 loaded in RAM.

Regards
-- 
--Juanjo

#  Juan Jose Ciarlante (JuanJo PGP) jjo ;at; mendoza.gov.ar              #
#  Key fingerprint = 76 60 A5 76 FD D2 53 E3  50 C7 90 20 22 8C F1 2D    #
-------------- next part --------------
Index: driver/modules/hostap_hw.c
===================================================================
RCS file: /cvs/hostap/driver/modules/hostap_hw.c,v
retrieving revision 1.77
diff -u -r1.77 hostap_hw.c
--- driver/modules/hostap_hw.c	1 Mar 2003 05:13:57 -0000	1.77
+++ driver/modules/hostap_hw.c	27 Mar 2003 03:25:07 -0000
@@ -558,7 +592,13 @@
 
 	while ((HFA384X_INW(o_off) & HFA384X_OFFSET_BUSY) && tries > 0) {
 		tries--;
-		udelay(1);
+		/* 	
+		 *  	jjo:
+		 *  	Replacing udelay(1) -> (2) yields same wlan-ng
+		 * 	"timings". For me this change eliminated those
+		 * 	pesky "timeout after ... resetting card" 
+		 */
+		udelay(2);
 	}
 	return (HFA384X_INW(o_off) & HFA384X_OFFSET_BUSY);
 }
@@ -570,6 +610,8 @@
 {
 	u16 o_off, s_off;
 	int ret = 0;
+	/* 	jjo: will disable hard IRQs */
+	unsigned int flags;
 
 	if (offset % 2 || bap > 1)
 		return -EINVAL;
@@ -582,6 +624,13 @@
 		s_off = HFA384X_SELECT0_OFF;
 	}
 
+	/* 
+	 * 	jjo: 
+	 * 	disabling hard IRQ here gave me more stability (less frequent
+	 * 	driver hang's). 
+	 * 	Already spinlock'd on &local->baplock by caller.
+	 */
+	local_irq_save(flags);
 	if (hfa384x_wait_offset(dev, o_off)) {
 		printk(KERN_DEBUG "%s: hfa384x_setup_bap - timeout before\n",
 		       dev->name);
@@ -590,6 +639,7 @@
 	}
 
 	HFA384X_OUTW(id, s_off);
+	/* udelay(10);				*//* jjo */
 	HFA384X_OUTW(offset, o_off);
 
 	if (hfa384x_wait_offset(dev, o_off)) {
@@ -608,6 +658,7 @@
 #endif
 
  out:
+	local_irq_restore(flags);	/* jjo: re-enable IRQs */
 	return ret;
 }
 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 232 bytes
Desc: not available
Url : http://lists.shmoo.com/pipermail/hostap/attachments/20030401/1fdb3907/attachment.pgp 



More information about the Hostap mailing list