cvs commit: src/sys/i386/i386 nexus.c src/sys/i386/include atomic.h src/sys/kern kern_poll.c lwkt_serialize.c src/sys/net if.c if_var.h rtsock.c src/sbin/ifconfig ifconfig.c src/sys/dev/netif/dc if_dc.c src/sys/dev/netif/em if_em.c if_em.h ...

YONETANI Tomokazu qhwt+dfly at les.ath.cx
Wed May 25 22:44:11 PDT 2005


On Wed, May 25, 2005 at 04:03:21PM -0700, Matthew Dillon wrote:
> :Matthew Dillon wrote:
> :
> :
> :>  ...That was reported this morning due to a commit I made last night
> :>     and Joerg was going to fix it, but he must have forgtten...
> :
> :Strong presumptive evidence of marriage -- the first SYN (or two) is
> :always dropped even after the ACK is returned.
> 
>     Not sure what that is, it isn't the bug I was talking about.  The
>     bug I introduced was a case where the EM interface simply stops
>     operating.

Just a question before my installing the new kernel - does this code work
correctly for non-IFF_POLLING case (after em_disable_intr() is called,
it never calls lwkt_serialize_handler_enable())?

  2623	static void
  2624	em_enable_intr(struct adapter *adapter)
  2625	{
  2626		struct ifnet *ifp = &adapter->interface_data.ac_if;
  2627		
  2628		if ((ifp->if_flags & IFF_POLLING) == 0) {
  2629			lwkt_serialize_handler_enable(&adapter->serializer);
  2630			E1000_WRITE_REG(&adapter->hw, IMS, (IMS_ENABLE_MASK));
  2631		}
  2632	}
  2633	
  2634	static void
  2635	em_disable_intr(struct adapter *adapter)
  2636	{
  2637		E1000_WRITE_REG(&adapter->hw, IMC, 
  2638				(0xffffffff & ~E1000_IMC_RXSEQ));
  2639		lwkt_serialize_handler_disable(&adapter->serializer);
  2640	}





More information about the Commits mailing list