Only define the full inm_print() if KTR_IGMPV3 is enabled at compile time.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@272316 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
xen: defer xenstore initialization until xenstored is started

The xenstore related devices in the kernel cannot be started until
xenstored is running, which will happen later in the Dom0 case. If
start_info_t doesn't contain a valid xenstore event channel, defer all
xenstore related devices attachment to later.

Sponsored by: Citrix Systems R&D

dev/xen/xenstore/xenstore.c:
 - Prevent xenstore from trying to attach it's descendant devices if
   xenstore is not initialized.
 - Add a callback in the xenstore interrupt filter that will trigger
   the plug of xenstore descendant devices on the first received
   interrupt. This interrupt is generated when xenstored attaches to
   the event channel, and serves as a notification that xenstored is
   running.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@272317 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
xen: convert the xenstore user-space char device to a newbus device

Convert the xenstore user-space device (/dev/xen/xenstore) to a device
using the newbus interface. This allows us to make the device
initialization dependant on the initialization of xenstore itself in
the kernel.

Sponsored by: Citrix Systems R&D

dev/xen/xenstore/xenstore.c:
 - Convert to a newbus device, this removes the xs_dev_init function.

xen/xenstore/xenstore_internal.h:
 - Remove xs_dev_init prototype.

dev/xen/xenstore/xenstore.c:
 - Don't call xs_dev_init anymore, the device will attach itself when
   xenstore is started.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@272318 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
xen: add xenstored user-space device

This device is used by the user-space daemon that runs xenstore
(xenstored). It allows xenstored to map the xenstore memory page, and
reports the event channel xenstore is using.

Sponsored by: Citrix Systems R&D

dev/xen/xenstore/xenstored_dev.c:
 - Add the xenstored character device that's used to map the xenstore
   memory into user-space, and to report the event channel used by
   xenstore.

conf/files:
 - Add the device to the build process.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@272319 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
xen/balloon: fix accounting of current memory pages on PVH

Using realmem on PVH is not realiable, since in this case the realmem value
is computed from Maxmem, which contains the higher memory address found. Use
HYPERVISOR_start_info->nr_pages instead, which is set by the hypervisor and
contains the exact number of memory pages assigned to the domain.

Sponsored by: Citrix Systems R&D


git-svn-id: svn+ssh://svn.freebsd.org/base/head@272320 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f