Home | History | Annotate | Download | only in include
History log of /src/sys/arch/xen/include/if_xennetvar.h
RevisionDateAuthorComments
 1.14  23-Oct-2009  snj Remove 3rd and 4th clauses. OK cl@ (copyright holder).
 1.13  16-Apr-2008  cegger branches: 1.13.4; 1.13.18;
device_t / softc split
reviewed, tested and approved by bouyer
 1.12  22-Nov-2007  bouyer branches: 1.12.14;
Pull up the bouyer-xenamd64 branch to HEAD. This brings in amd64 support
to NetBSD/Xen, both Dom0 and DomU.
 1.11  08-Jan-2006  bouyer branches: 1.11.28; 1.11.46; 1.11.48; 1.11.52; 1.11.54;
Move if_xennet private functions and structures from if_xennetvar.h
to if_xennet.c
 1.10  11-Dec-2005  christos branches: 1.10.2;
merge ktrace-lwp.
 1.9  02-Oct-2005  bouyer Have xennet_start() schedule a software interrupt to defer processing of the
send queue. This give upper layer an opportunity to queue up all available
packets before starting to process them. This reduce the number of interrupt
generated on the backend, and the time spent doing hypercalls in a significant
way.
 1.8  11-Sep-2005  bouyer Use MCLGET() instead of local list of buffers. Garbage-collect
struct xennet_txbuf usage.
 1.7  06-Jun-2005  yamt branches: 1.7.2;
fix a typo (NETIF_TX_RING_SIZE <-> NETIF_RX_RING_SIZE)
 1.6  17-Apr-2005  bouyer Add a kernel thread to the control interface, to handle deferred callacks
(which may sleep). Fix port-xen/29851 by YAMAMOTO Takashi.
Use config_pending_incr()/config_pending_decr() in if_xennet instead of
busy-looping (which doesn't work any more).
Remove the kernel thread from xbd, which isn't needed any more.
 1.5  16-Apr-2005  bouyer Get rid of the event to pseudo-irq mapping. We are limited to 32 pseudo-irq,
including soft interrupt, and this is way too low in some use (lots of domains,
or domains with lots of xennet, or even hardware with lots of devices at
different interrupts).
Based on idea from YAMAMOTO Takashi, keep one list of handler per-event and
one per-IPL (so the same handler is now in 2 lists). In the common case were
an event is received at low IPL, we can call the handlers quickly (there
is usually only one handler per event, unless the event is mapped to a
physical interrupt and this interrupt is shared by different devices).
Deffered events and software interrupts are handled by a bitmask (as before)
with one bit per IPL. When one IPL has an event pending all handlers for
this IPL will be called.
With this change, it is now possible to have all the 1024 events active.

While here, handle debug event in a special way: the handler is always called,
regardless of the current IPL. Make the handler print usefull informations
about events and IPL states.
Also remove code not used on Xen in files inherited from the x86 port.
 1.4  09-Mar-2005  bouyer branches: 1.4.2;
Merge the bouyer-xen2 branch. This add supports for the Xen 2.0 virtual
machine kernel (both privileged and non-privileged domains), and remove support
for the old xen 1.2.
 1.3  15-Sep-2004  tls branches: 1.3.4; 1.3.6; 1.3.8;
Actually mix samples into the kernel RNG pool. There's a buglet here: all
disk samples are reported as belonging to the first disk.
 1.2  24-Apr-2004  cl branches: 1.2.2;
Add ``hypervisor at mainbus'' and attach all devices provided by the
hypervisor to it instead of mainbus.

rename arch/xen/i386/hypervisor.c -> arch/xen/i386/hypervisor_machdep.c
 1.1  11-Mar-2004  cl branches: 1.1.2;
Add port to the Xen virtual machine monitor.
(see http://www.cl.cam.ac.uk/Research/SRG/netos/xen/)
 1.1.2.2  16-Sep-2004  jmc Pullup rev 1.3 (requested by tls in ticket #846)

Actually mix samples into the kernel RNG pool.
 1.1.2.1  22-May-2004  he Pull up revision 1.2 (requested by cl in ticket #337):
Upgrade xen support:
- add block device driver
- network device driver bug fixes
- support for vga/keyboard/mouse
- support for domain0 operations
- fix /dev/mem and i386_iopl, reboot, event dispatch
- fix clock support, cpu speed report, lazy fpu switching
- add xen12load loader
- sys/arch/xen parts of build.sh release support
[cl, ticket #337]
 1.2.2.6  10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.2.2.5  01-Apr-2005  skrll Sync with HEAD.
 1.2.2.4  21-Sep-2004  skrll Fix the sync with head I botched.
 1.2.2.3  18-Sep-2004  skrll Sync with HEAD.
 1.2.2.2  03-Aug-2004  skrll Sync with HEAD
 1.2.2.1  24-Apr-2004  skrll file if_xennetvar.h was added on branch ktrace-lwp on 2004-08-03 10:43:11 +0000
 1.3.8.1  19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.3.6.1  29-Apr-2005  kent sync with -current
 1.3.4.1  13-Dec-2004  bouyer Commit files from netbsd-2.0-xen-sparse/sys/arch/xen in the Xen-2.0
distribution. These are the files modified from the 2.0 tree to get
NetBSD/xen working with Xen 2.
 1.4.2.6  07-Apr-2006  tron Apply patch (requested by bouyer in ticket #1245):
Pull up Xen3 domU support. This adds support for the Xen-3 memory bootstrap,
xenstore, and block and network device frontend. Xen-3 support is turned
on by 'options XEN3', which disable Xen-2 support.
Changes affecting non-xen3 specific code:
- xbd and xennet at hypervisor now attaches with xbd_hypervisor and
xennet_hypervisor
- x86_atomic_* renamed to xen_atomic_*
- use genassim.cf to pull in more constant from include files for assembly
- Map the shared info page from locore.S instead of the 0xffffffff hack
in xen_machdep.c
- remove some unused code
- some __asm__ __volatile__ -> __asm volatile and __inline__ -> inline
- more debug code
 1.4.2.5  06-Apr-2006  tron Pull up following revision(s) (requested by bouyer in ticket #1239):
sys/arch/xen/include/if_xennetvar.h: revision 1.9
sys/arch/xen/xen/if_xennet.c: revision 1.37
Have xennet_start() schedule a software interrupt to defer processing of the
send queue. This give upper layer an opportunity to queue up all available
packets before starting to process them. This reduce the number of interrupt
generated on the backend, and the time spent doing hypercalls in a significant
way.
 1.4.2.4  22-Jan-2006  tron Pull up following revision(s) (requested by bouyer in ticket #1105):
sys/arch/xen/include/if_xennetvar.h: revision 1.8
Use MCLGET() instead of local list of buffers. Garbage-collect
struct xennet_txbuf usage.
 1.4.2.3  18-Jun-2005  tron Pull up revision 1.7 (requested by yamt in ticket #471):
fix a typo (NETIF_TX_RING_SIZE <-> NETIF_RX_RING_SIZE)
 1.4.2.2  28-Apr-2005  tron Pull up revision 1.5 (requested by bouyer in ticket #192):
Get rid of the event to pseudo-irq mapping. We are limited to 32 pseudo-irq,
including soft interrupt, and this is way too low in some use (lots of domains,
or domains with lots of xennet, or even hardware with lots of devices at
different interrupts).
Based on idea from YAMAMOTO Takashi, keep one list of handler per-event and
one per-IPL (so the same handler is now in 2 lists). In the common case were
an event is received at low IPL, we can call the handlers quickly (there
is usually only one handler per event, unless the event is mapped to a
physical interrupt and this interrupt is shared by different devices).
Deffered events and software interrupts are handled by a bitmask (as before)
with one bit per IPL. When one IPL has an event pending all handlers for
this IPL will be called.
With this change, it is now possible to have all the 1024 events active.
While here, handle debug event in a special way: the handler is always called,
regardless of the current IPL. Make the handler print usefull informations
about events and IPL states.
Also remove code not used on Xen in files inherited from the x86 port.
 1.4.2.1  25-Apr-2005  tron Pull up revision 1.6 (requested by bouyer in ticket #187):
Add a kernel thread to the control interface, to handle deferred callacks
(which may sleep). Fix port-xen/29851 by YAMAMOTO Takashi.
Use config_pending_incr()/config_pending_decr() in if_xennet instead of
busy-looping (which doesn't work any more).
Remove the kernel thread from xbd, which isn't needed any more.
 1.7.2.2  07-Dec-2007  yamt sync with head
 1.7.2.1  21-Jun-2006  yamt sync with head.
 1.10.2.1  15-Jan-2006  yamt sync with head.
 1.11.54.1  08-Dec-2007  mjf Sync with HEAD.
 1.11.52.1  17-Oct-2007  bouyer Prepare for xenamd64:
- kill xen/i386/identcpu.c, use i386/i386/identcpu.c instead (with a few
#ifndef XEN)
- move some files that can be shared between i386 and amd64 from
xen/i386 to xen/x86 (or to xen/xen for non-cpu-specific code)
- split assembly out of xen/include/hypervisor.h to xen/include/hypercalls.h
- use <xen/...> instead of <machine/...> for cpu-independant include files.

more work needed here, i386-specific files should got out of arch/xen to
arch/xeni386, and more code shared with arch/i386.
 1.11.48.1  09-Jan-2008  matt sync with HEAD
 1.11.46.1  27-Nov-2007  joerg Sync with HEAD. amd64 Xen support needs testing.
 1.11.28.1  03-Dec-2007  ad Sync with HEAD.
 1.12.14.1  02-Jun-2008  mjf Sync with HEAD.
 1.13.18.1  01-Nov-2009  jym Sync with HEAD.
 1.13.4.1  11-Mar-2010  yamt sync with head

RSS XML Feed