Home | History | Annotate | Download | only in include
History log of /src/sys/arch/xen/include/xenio.h
RevisionDateAuthorComments
 1.12  26-May-2020  bouyer Implement new ioctl, needed by Xen 4.13:
IOCTL_PRIVCMD_MMAPBATCH_V2
IOCTL_PRIVCMD_MMAP_RESOURCE
IOCTL_GNTDEV_MMAP_GRANT_REF
IOCTL_GNTDEV_ALLOC_GRANT_REF
 1.11  07-Jul-2016  msaitoh branches: 1.11.22;
KNF. Remove extra spaces. No functional change.
 1.10  07-Sep-2015  dholland Final bit of PR 41200: headers that declare ioctls should include sys/ioccom.h.
This covers most if not all of the MD headers.

XXX: a lot of the ioctl definitions in some of these files are cutpasted.
 1.9  10-Jan-2011  cegger branches: 1.9.18; 1.9.36;
fix typo in ioctl definition
 1.8  15-Dec-2010  cegger add privcmd ioctl that got introduced with Xen 4
 1.7  03-Sep-2010  cegger match header protection with filename
 1.6  17-Feb-2008  bouyer branches: 1.6.10; 1.6.24; 1.6.30; 1.6.32;
Fix IOCTL_PRIVCMD_HYPERCALL issue which shows up with xen-3.1.3:
some hypercalls results are returned though the error path (depending on
sign, it's an error code or a result), and some results are interpreted in
a special way by the NetBSD kernel (e.g. -1).
Add a 'retval' member to the privcmd_hypercall_t argument, which holds
the hypercall result if it completed without error. The error code
is returned via the usual error path.
Handle the old IOCTL_PRIVCMD_HYPERCALL under COMPAT_40.

While there, make the double-inclusion protection #define match the
convention in xenio3.h and xenio.h.
 1.5  11-Dec-2005  christos branches: 1.5.24; 1.5.40; 1.5.50; 1.5.56;
merge ktrace-lwp.
 1.4  10-Sep-2005  bouyer Fix typo reported by Jed Davis on port-xen:
IOCTL_PRIVCMD_GET_MACH2PHYS_START_MFN is a read, not a write.
 1.3  24-May-2005  yamt branches: 1.3.2;
privcmd_ioctl: don't abuse errno for IOCTL_PRIVCMD_INITDOMAIN_EVTCHN.
renumber the ioctl and keep the old one for compatibility.
PR/30027.
 1.2  09-Mar-2005  bouyer branches: 1.2.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.1  07-May-2004  cl branches: 1.1.2; 1.1.4; 1.1.8; 1.1.10; 1.1.12;
Add support for domain0 operations:
- access to all physical memory
- access to hypervisor traps from userland
- setup/config Xen's network routing/firewall rules
 1.1.12.1  19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.1.10.1  29-Apr-2005  kent sync with -current
 1.1.8.3  09-Mar-2005  bouyer Add CVS Id.
 1.1.8.2  12-Feb-2005  bouyer IOCTL_PRIVCMD_HYPERCALL is _IOWR.
 1.1.8.1  31-Jan-2005  bouyer First pieces of domain control operations:
- use an up to date xenio.h
- update privcmd.c for newer ioctls (incomplete, some just return an error for
now)
- add a /dev/xenevt pseudo-device, which provide to userland an interface to
xen events
Now xend starts, and basic xm commands (such as list) work.
 1.1.4.6  10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.1.4.5  01-Apr-2005  skrll Sync with HEAD.
 1.1.4.4  21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.4.3  18-Sep-2004  skrll Sync with HEAD.
 1.1.4.2  03-Aug-2004  skrll Sync with HEAD
 1.1.4.1  07-May-2004  skrll file xenio.h was added on branch ktrace-lwp on 2004-08-03 10:43:11 +0000
 1.1.2.2  22-May-2004  he Pull up revision 1.1 (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.1.2.1  07-May-2004  he file xenio.h was added on branch netbsd-2-0 on 2004-05-22 15:59:21 +0000
 1.2.2.2  14-Sep-2005  tron Pull up following revision(s) (requested by boyuer in ticket #774):
sys/arch/xen/include/xenio.h: revision 1.4
Fix typo reported by Jed Davis on port-xen:
IOCTL_PRIVCMD_GET_MACH2PHYS_START_MFN is a read, not a write.
 1.2.2.1  28-May-2005  tron Pull up revision 1.3 (requested by yamt in ticket #351):
privcmd_ioctl: don't abuse errno for IOCTL_PRIVCMD_INITDOMAIN_EVTCHN.
renumber the ioctl and keep the old one for compatibility.
PR/30027.
 1.3.2.2  27-Feb-2008  yamt sync with head.
 1.3.2.1  21-Jun-2006  yamt sync with head.
 1.5.56.1  18-Feb-2008  mjf Sync with HEAD.
 1.5.50.1  23-Mar-2008  matt sync with HEAD
 1.5.40.1  03-Jun-2008  skrll Sync with netbsd-4.
 1.5.24.1  23-Mar-2008  jdc Pull up revisions: (requested by bouyer in ticket #1083)
src/sys/arch/xen/include/xenio.h 1.6
src/sys/arch/xen/include/xenio3.h 1.2
src/sys/arch/xen/xen/privcmd.c 1.25

Fix IOCTL_PRIVCMD_HYPERCALL issue which shows up with xen-3.1.3:
some hypercalls results are returned though the error path (depending on
sign, it's an error code or a result), and some results are interpreted in
a special way by the NetBSD kernel (e.g. -1).
Add a 'retval' member to the privcmd_hypercall_t argument, which holds
the hypercall result if it completed without error. The error code
is returned via the usual error path.
Handle the old IOCTL_PRIVCMD_HYPERCALL under COMPAT_40.

While there, make the double-inclusion protection #define match the
convention in xenio3.h and xenio.h.
 1.6.32.1  05-Mar-2011  rmind sync with head
 1.6.30.1  22-Oct-2010  uebayasi Sync with HEAD (-D20101022).
 1.6.24.3  28-Mar-2011  jym Sync with HEAD. TODO before merge:
- shortcut for suspend code in sysmon, when powerd(8) is not running.
Borrow ``xs_watch'' thread context?
- bug hunting in xbd + xennet resume. Rings are currently thrashed upon
resume, so current implementation force flush them on suspend. It's not
really needed.
 1.6.24.2  10-Jan-2011  jym Sync with HEAD
 1.6.24.1  24-Oct-2010  jym Sync with HEAD
 1.6.10.1  09-Oct-2010  yamt sync with head
 1.9.36.2  09-Jul-2016  skrll Sync with HEAD
 1.9.36.1  22-Sep-2015  skrll Sync with HEAD
 1.9.18.1  03-Dec-2017  jdolecek update from HEAD
 1.11.22.1  31-May-2020  martin Pull up following revision(s) (requested by bouyer in ticket #935):

sys/arch/xen/x86/x86_xpmap.c: revision 1.89
sys/arch/x86/include/pmap.h: revision 1.121
sys/arch/xen/xen/privcmd.c: revision 1.58
sys/external/mit/xen-include-public/dist/xen/include/public/memory.h: revision 1.2
sys/arch/xen/include/xenpmap.h: revision 1.44
sys/arch/xen/include/xenio.h: revision 1.12
sys/arch/x86/x86/pmap.c: revision 1.394
(all via patch)

Ajust pmap_enter_ma() for upcoming new Xen privcmd ioctl:
pass flags to xpq_update_foreign()

Introduce a pmap MD flag: PMAP_MD_XEN_NOTR, which cause xpq_update_foreign()
to use the MMU_PT_UPDATE_NO_TRANSLATE flag.
make xpq_update_foreign() return the raw Xen error. This will cause
pmap_enter_ma() to return a negative error number in this case, but the
only user of this code path is privcmd.c and it can deal with it.

Add pmap_enter_gnt()m which maps a set of Xen grant entries at the
specified va in the specified pmap. Use the hooks implemented for EPT to
keep track of mapped grand entries in the pmap, and unmap them
when pmap_remove() is called. This requires pmap_remove() to be split
into a pmap_remove_locked(), to be called from pmap_remove_gnt().

Implement new ioctl, needed by Xen 4.13:
IOCTL_PRIVCMD_MMAPBATCH_V2
IOCTL_PRIVCMD_MMAP_RESOURCE
IOCTL_GNTDEV_MMAP_GRANT_REF
IOCTL_GNTDEV_ALLOC_GRANT_REF

Always enable declarations needed by privcmd.c

RSS XML Feed