kmacy       2008-03-20 05:35:02 UTC

  FreeBSD src repository

  Modified files:
    sys/net              if_ethersubr.c 
  Log:
  Don't re-initialize the interface if it is already running.
  
  This one line change makes the following code found in many ethernet device 
drivers
  (at least em, igb, ixgbe, and cxgb) gratuitous
  
          case SIOCSIFADDR:
                  if (ifa->ifa_addr->sa_family == AF_INET) {
                          /*
                           * XXX
                           * Since resetting hardware takes a very long time
                           * and results in link renegotiation we only
                           * initialize the hardware only when it is absolutely
                           * required.
                           */
                          ifp->if_flags |= IFF_UP;
                          if (!(ifp->if_drv_flags & IFF_DRV_RUNNING)) {
                                  EM_CORE_LOCK(adapter);
                                  em_init_locked(adapter);
                                  EM_CORE_UNLOCK(adapter);
                          }
                          arp_ifinit(ifp, ifa);
                  } else
                          error = ether_ioctl(ifp, command, data);
                  break;
  
  Revision  Changes    Path
  1.242     +2 -1      src/sys/net/if_ethersubr.c
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to