NetBSD/sys/arch/xen
bouyer 213d74cfef Major improvements to the network backend, leading to a 0-copy transmit and
receive system:
- on the receive side, attach the mapped buffer as external storage
  instead of copying it. As a mapped buffer may not live much longer, we
  have to deal with the fact that one page of buffer may containt several
  packets, and it's not possible to map them several times. Use a hashed list
  to keep track of mapped pages, and use reference counters.
- on the transmit side, when MCLBYTES == PAGE_SIZE, give away the mbuf
  cluster page when possible instead of copying it. Keep a pool of physical
  pages to map in place of the page we give away. When copying, use a
  pool_cache(9) to manage copy buffers (use mclpool_cache when
  MCLBYTES == PAGE_SIZE, otherwise use a private pool/pool_cache) instead
  of a local list. This should reduce the number of hypercalls and MMU
  operations in the copy case as well.
2005-10-02 21:49:23 +00:00
..
compile
conf include "conf/std". 2005-09-17 09:44:05 +00:00
i386 inline 2 trivial functions that are called often (according to profiling 2005-09-20 20:33:53 +00:00
include Have xennet_start() schedule a software interrupt to defer processing of the 2005-10-02 21:39:41 +00:00
x86 Fix a memory leak. Thanks to YAMAMOTO Takashi for the notice. 2005-08-22 11:04:10 +00:00
xen Major improvements to the network backend, leading to a 0-copy transmit and 2005-10-02 21:49:23 +00:00
Makefile