HomeFreeBSD

Update Xen headers from 4.2 to 4.6

Description

Update Xen headers from 4.2 to 4.6

Pull the latest headers for Xen which allow us to add support for ARM and
use new features in FreeBSD.

This is a verbatim copy of the xen/include/public so every headers which
don't exits anymore in the Xen repositories have been dropped.

Note the interface version hasn't been bumped, it will be done in a
follow-up. Although, it requires fix in the code to get it compiled:

  • sys/xen/xen_intr.h: evtchn_port_t is already defined in the headers so drop it.
  • {amd64,i386}/include/intr_machdep.h: NR_EVENT_CHANNELS now depends on xen/interface/event_channel.h, so include it.
  • {amd64,i386}/{amd64,i386}/support.S: It's not neccessary to include machine/intr_machdep.h. This is also fixing build compilation with the new headers.
  • dev/xen/blkfront/blkfront.c: The typedef for blkif_request_segmenthas been dropped. So directly use struct blkif_request_segment

Finally, modify xen/interface/xen-compat.h to throw a preprocessing error if
XEN_INTERFACE_VERSION is not set. This is allow us to catch any file
where xen/xen-os.h is not correctly included.

Submitted by: Julien Grall <julien.grall@citrix.com>
Reviewed by: royger
Differential Revision: https://reviews.freebsd.org/D3805
Sponsored by: Citrix Systems R&D

Details

Provenance
roygerAuthored on
Reviewer
royger
Parents
rS288916: Remove debugging variable from r143761.
Branches
Unknown
Tags
Unknown