pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/sysutils/xentools411/files Add Xen 4.11.0 packages (fo...
details: https://anonhg.NetBSD.org/pkgsrc/rev/88a24efbf13b
branches: trunk
changeset: 383176:88a24efbf13b
user: bouyer <bouyer%pkgsrc.org@localhost>
date: Tue Jul 24 13:43:30 2018 +0000
description:
Add Xen 4.11.0 packages (forgotten files from previous commit)
diffstat:
sysutils/xentools411/files/blk_netbsd.c | 38 +++++++
sysutils/xentools411/files/blktapctrl_netbsd.c | 16 +++
sysutils/xentools411/files/locking.sh | 72 +++++++++++++
sysutils/xentools411/files/xen-watchdog.sh | 17 +++
sysutils/xentools411/files/xencommons.sh | 107 ++++++++++++++++++++
sysutils/xentools411/files/xendomains.sh | 129 +++++++++++++++++++++++++
6 files changed, 379 insertions(+), 0 deletions(-)
diffs (truncated from 403 to 300 lines):
diff -r 582cffc0dfcb -r 88a24efbf13b sysutils/xentools411/files/blk_netbsd.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/xentools411/files/blk_netbsd.c Tue Jul 24 13:43:30 2018 +0000
@@ -0,0 +1,38 @@
+#include <inttypes.h>
+#include <sys/ioctl.h>
+#include <sys/disklabel.h>
+#include "tapdisk.h"
+#include "blk.h"
+
+int blk_getimagesize(int fd, uint64_t *size)
+{
+ int rc;
+ struct disklabel dl;
+
+ *size = 0;
+ rc = ioctl(fd, DIOCGDINFO, &dl);
+ if (rc) {
+ DPRINTF("ERR: DIOCGDINFO failed, couldn't stat image");
+ return -EINVAL;
+ }
+
+ *size = dl.d_secsize * dl.d_secpercyl;
+
+ return 0;
+}
+
+int blk_getsectorsize(int fd, uint64_t *sector_size)
+{
+ int rc;
+ struct disklabel dl;
+
+ *sector_size = DEV_BSIZE;
+ rc = ioctl(fd, DIOCGDINFO, &dl);
+ if (rc) {
+ DPRINTF("ERR: DIOCGDINFO failed, couldn't stat image");
+ return 0; /* fallback to DEV_BSIZE */
+ }
+
+ *sector_size = dl.d_secsize;
+ return 0;
+}
diff -r 582cffc0dfcb -r 88a24efbf13b sysutils/xentools411/files/blktapctrl_netbsd.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/xentools411/files/blktapctrl_netbsd.c Tue Jul 24 13:43:30 2018 +0000
@@ -0,0 +1,16 @@
+
+#include "blktaplib.h"
+#include "blktapctrl.h"
+
+
+int blktap_interface_open(void)
+{
+ /* not yet implemented */
+ return -1;
+}
+
+int blktap_interface_create(int ctlfd, int *major, int *minor, blkif_t *blkif)
+{
+ /* not yet implemented */
+ return -1;
+}
diff -r 582cffc0dfcb -r 88a24efbf13b sysutils/xentools411/files/locking.sh
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/xentools411/files/locking.sh Tue Jul 24 13:43:30 2018 +0000
@@ -0,0 +1,72 @@
+#!/bin/sh
+#
+# Copyright (c) 2016, Christoph Badura. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS
+# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+# DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT,
+# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+#
+
+LOCK_BASEDIR="$XEN_LOCK_DIR/xen-hotplug"
+
+_lockfd=9
+_have_lock=0 # lock not taken yet.
+
+SHLOCK="shlock ${_shlock_debug-}"
+
+_lock_set_vars() {
+ _lockfile="$LOCK_BASEDIR/$1.lock"
+ _lockfifo="$LOCK_BASEDIR/$1.fifo"
+}
+
+_lock_init() {
+ mkdir -p "$LOCK_BASEDIR" 2>/dev/null || true
+ mkfifo $_lockfifo 2>/dev/null || true
+}
+
+#
+# use a named pipe as condition variable
+# opening for read-only blocks when there's no writer.
+# opening for read-write never blocks but unblocks any waiting readers.
+#
+_lock_wait_cv() {
+ eval "exec $_lockfd< $_lockfifo ; exec $_lockfd<&-"
+}
+_lock_signal_cv() {
+ eval "exec $_lockfd<> $_lockfifo ; exec $_lockfd<&-"
+}
+
+claim_lock() {
+ _lock_set_vars $1
+ _lock_init
+ until $SHLOCK -f $_lockfile -p $$; do
+ _lock_wait_cv
+ done
+ _have_lock=1
+ # be sure to release the lock when the shell exits
+ trap "release_lock $1" 0 1 2 15
+}
+
+release_lock() {
+ _lock_set_vars $1
+ [ "$_have_lock" != 0 -a -f $_lockfile ] && rm $_lockfile
+ _have_lock=0
+ _lock_signal_cv;
+}
diff -r 582cffc0dfcb -r 88a24efbf13b sysutils/xentools411/files/xen-watchdog.sh
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/xentools411/files/xen-watchdog.sh Tue Jul 24 13:43:30 2018 +0000
@@ -0,0 +1,17 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# PROVIDE: xen-watchdog
+# REQUIRE: DAEMON
+#
+# description: Run domain watchdog daemon
+#
+
+. /etc/rc.subr
+
+name="xenwatchdog"
+rcvar=$name
+command="@PREFIX@/sbin/xenwatchdogd"
+start_cmd="echo Starting ${name}. && PATH=${PATH}:@PREFIX@/sbin ${command} 30 15"
+
+load_rc_config $name
+run_rc_command "$1"
diff -r 582cffc0dfcb -r 88a24efbf13b sysutils/xentools411/files/xencommons.sh
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/xentools411/files/xencommons.sh Tue Jul 24 13:43:30 2018 +0000
@@ -0,0 +1,107 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# PROVIDE: xencommons
+# REQUIRE: DAEMON
+
+. /etc/rc.subr
+
+name="xencommons"
+rcvar=$name
+start_precmd="xen_precmd"
+start_cmd="xen_startcmd"
+stop_cmd="xen_stop"
+status_cmd="xen_status"
+extra_commands="status"
+required_files="/kern/xen/privcmd"
+
+XENSTORED_PIDFILE="/var/run/xenstored.pid"
+XENCONSOLED_PIDFILE="/var/run/xenconsoled.pid"
+
+BINDIR=@PREFIX@/bin
+SBINDIR=@PREFIX@/sbin
+LIBEXEC_BIN=@PREFIX@/libexec/xen/bin
+
+xen_precmd()
+{
+ mkdir -p /var/run/xen || exit 1
+ mkdir -p /var/run/xenstored || exit 1
+}
+
+xen_startcmd()
+{
+ printf "Starting xenservices: xenstored, xenconsoled.\n"
+ if test ! -r ${required_files}; then
+ warn "${required_files} is not readable."
+ fi
+ XENSTORED_ARGS=" --pid-file ${XENSTORED_PIDFILE}"
+ if [ -n "${XENSTORED_TRACE}" ]; then
+ XENSTORED_ARGS="${XENSTORED_ARGS} -T /var/log/xen/xenstored-trace.log"
+ fi
+
+ ${SBINDIR}/xenstored ${XENSTORED_ARGS}
+ sleep 5
+
+ printf "Setting domain 0 name, domid and JSON config...\n"
+ ${LIBEXEC_BIN}/xen-init-dom0
+
+ XENCONSOLED_ARGS=""
+ if [ -n "${XENCONSOLED_TRACE}" ]; then
+ XENCONSOLED_ARGS="${XENCONSOLED_ARGS} --log=${XENCONSOLED_TRACE}"
+ fi
+
+ ${SBINDIR}/xenconsoled ${XENCONSOLED_ARGS}
+}
+
+xen_stop()
+{
+ pids=""
+ printf "Stopping xencommons"
+
+ rc_pid=$(check_pidfile ${XENCONSOLED_PIDFILE} ${SBINDIR}/xenconsoled)
+ pids="$pids $rc_pid"
+ rc_pid=$(check_pidfile ${XENSTORED_PIDFILE} ${SBINDIR}/xenstored)
+ pids="$pids $rc_pid"
+
+ kill -${sig_stop:-TERM} $pids
+ wait_for_pids $pids
+
+ printf ".\n"
+}
+
+xen_status()
+{
+ xenstored_pid=$(check_pidfile ${XENSTORED_PIDFILE} ${SBINDIR}/xenstored)
+ if test -n ${xenstored_pid}; then
+ pids="$pids $xenstored_pid"
+ fi
+
+ xenconsoled_pid=$(check_pidfile ${XENCONSOLED_PIDFILE} ${SBINDIR}/xenconsoled)
+ if test -n ${xenconsoled_pid}; then
+ pids="$pids $xenconsoled_pid"
+ fi
+
+ if test -n "$xenconsoled_pid" -a -n "$xenstored_pid";
+ then
+ echo "xencommons are running as pids $pids."
+ return 0
+ fi
+ if test -a -z "$xenconsoled_pid" -a -z "$xenstored_pid";
+ then
+ echo "xencommons are not running."
+ return 0
+ fi
+
+ if test -n "$xenstored_pid"; then
+ echo "xenstored is running as pid $xenstored_pid."
+ else
+ echo "xenstored is not running."
+ fi
+ if test -n "$xenconsoled_pid"; then
+ echo "xenconsoled is running as pid $xenconsoled_pid."
+ else
+ echo "xenconsoled is not running."
+ fi
+}
+
+load_rc_config $name
+run_rc_command "$1"
diff -r 582cffc0dfcb -r 88a24efbf13b sysutils/xentools411/files/xendomains.sh
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/xentools411/files/xendomains.sh Tue Jul 24 13:43:30 2018 +0000
@@ -0,0 +1,129 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# PROVIDE: xendomains
+# REQUIRE: xencommons
+# KEYWORD: shutdown
+#
+# xendomains This required variable is a whitespace-separated
+# list of domains, e.g., xendomains="dom1 dom2 dom3".
+#
+# xendomains_config This optional variable is a format string that
+# represents the path to the configuration file for
+# each domain. "%s" is substituted with the name of
+# the domain. The default is "@PKG_SYSCONFDIR@/%s".
+#
+# xendomains_prehook This optional variable is a format string that
+# represents the command to run, if it exists, before
+# starting each domain. "%s" is substituted with the
+# name of the domain. The default is
+# "@PKG_SYSCONFDIR@/%s-pre".
+#
+# xendomains_posthook This optional variable is a format string that
+# represents the command to run, if it exists, after
+# stopping each domain. "%s" is substituted with the
+# name of the domain. The default is
+# "@PKG_SYSCONFDIR@/%s-post".
+#
Home |
Main Index |
Thread Index |
Old Index