Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 Aug 2005 14:27:38 +0000 (UTC)
From:      John Baldwin <jhb@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/pci if_de.c
Message-ID:  <200508261427.j7QERcj5054008@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
jhb         2005-08-26 14:27:38 UTC

  FreeBSD src repository

  Modified files:
    sys/pci              if_de.c 
  Log:
  - Use m_defrag() instead of homerolling our own variant
    tulip_mbuf_compress().  If we fail to allocate a new mbuf to copy the
    data into, put the mbuf back in the driver's send queue so that we can
    retry it later rather than throwing the packet away.
  - Use m_devget() instead of doing it inline ourselves in the
    TULIP_COPY_RXDATA case.  If we fail to allocate an mbuf to copy the data
    into, don't forget about the original mbuf cluster.  The old code would
    lose the pointer and leak the cluster in that case.  Now it doesn't lose
    it but always sticks the original rx buffer back into the receive ring
    after trying to copy the data out and send it up the stack.  Also, if we
    fail to allocate a new mbuf to copy the data into, log an input error.
    Also, don't combine the priming case with the received-a-packet case to
    make the code flow a bit clearer and easier to follow.
  
  Revision  Changes    Path
  1.173     +55 -68    src/sys/pci/if_de.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200508261427.j7QERcj5054008>