cvs commit: src/sys/dev/em if_em.c if_em.h

Pyun YongHyeon yongari at FreeBSD.org
Thu Jul 20 04:18:45 UTC 2006


yongari     2006-07-20 04:18:45 UTC

  FreeBSD src repository

  Modified files:
    sys/dev/em           if_em.c if_em.h 
  Log:
  Since resetting hardware takes a very long time and results in link
  renegotiation, we only initialize the hardware only when it is
  absolutely required. Process SIOCGIFADDR ioctl in em(4) when we know
  an IPv4 address is added. Handling SIOCGIFADDR in a driver is
  layering violation but it seems that there is no easy way without
  rewritting hardware initialization code to reduce settle time after
  reset.
  
  This should fix a long standing bug which didn't send ARP packet when
  interface address is changed or an alias address is added. Another
  effect of this fix is it doesn't need additional delays anymore when
  adding an alias address to the interface.
  While I'm here add a new if_flags into softc which remembers current
  prgroammed interface flags and make use of it when we have to program
  promiscuous mode.
  
  Tested by:      Atanas <atanas AT asd DOT aplus DOT net>
  Analyzed by:    rwatson
  Discussed with: -stable
  
  Revision  Changes    Path
  1.119     +29 -9     src/sys/dev/em/if_em.c
  1.45      +1 -0      src/sys/dev/em/if_em.h


More information about the cvs-src mailing list