Subject: Re: kern/29925
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: Christos Zoulas <christos@zoulas.com>
List: netbsd-bugs
Date: 07/28/2005 15:48:03
The following reply was made to PR kern/29925; it has been noted by GNATS.

From: christos@zoulas.com (Christos Zoulas)
To: gnats-bugs@netbsd.org, kern-bug-people@netbsd.org,
	gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Cc: 
Subject: Re: kern/29925
Date: Thu, 28 Jul 2005 11:47:01 -0400

 On Jul 28,  3:42pm, thorpej@shagadelic.org (Jason Thorpe) wrote:
 -- Subject: Re: kern/29925
 
 |  >   int    stge_copy_small = 0;
 |  >  +int    stge_1023_bug = 0;      /* XXX: ST1023 works only in  
 |  > promisc mode */
 |  
 |  You should not use a global variable like this.  A member (or flag)  
 |  in the softc would be more appropriate.
 
 Yes, my fault for not doing this.
 
 |  >   /*
 |  >    * stge_add_rxbuf:
 |  >  @@ -1863,6 +1874,11 @@
 |  >          if (ifp->if_flags & IFF_BROADCAST)
 |  >                  sc->sc_ReceiveMode |= RM_ReceiveBroadcast;
 |  >
 |  >  +       /* XXX: ST1023 only works in promiscuous mode */
 |  >  +
 |  >  +       if (stge_1023_bug)
 |  >  +               ifp->if_flags |= IFF_PROMISC;
 |  >  +
 |  
 |  Are you sure this is really the case?  Perhaps the receive filter is  
 |  simply different.  What evidence do you have that promiscuous mode is  
 |  the only workable solution?
 
 I think that this is the case (the receive filter is different) but I
 don't have a card or docs to test with.
 
 christos