|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 2/2] xendriverdomain: don't depend on legacy /proc/xen
On Thu, May 12, 2016 at 10:29:30AM -0500, Doug Goldstein wrote:
> xl devd prefers to use /dev/xen/ instead of /proc/xen so the init script
> should use the new interface as well and drop the legacy interface. To
> check for support this uses /sys/hypervisor which has been present since
> 2.6.18 Xen kernels. Fix bad whitespace at the same time.
>
> Signed-off-by: Doug Goldstein <cardoe@xxxxxxxxxx>
> ---
> tools/hotplug/Linux/init.d/xendriverdomain.in | 19 ++++---------------
> 1 file changed, 4 insertions(+), 15 deletions(-)
>
> diff --git a/tools/hotplug/Linux/init.d/xendriverdomain.in
> b/tools/hotplug/Linux/init.d/xendriverdomain.in
> index 8d4592a..830aa5b 100644
> --- a/tools/hotplug/Linux/init.d/xendriverdomain.in
> +++ b/tools/hotplug/Linux/init.d/xendriverdomain.in
> @@ -27,23 +27,12 @@ test -f $xendriverdomain_config/xendriverdomain && .
> $xendriverdomain_config/xen
> XLDEVD_PIDFILE=/var/run/xldevd.pid
>
> # not running in Xen dom0 or domU
> -if ! test -d /proc/xen ; then
> +if ! grep -q '^xen' /sys/hypervisor/type ; then
> exit 0
> fi
>
> -# mount xenfs in dom0 or domU with a pv_ops kernel
> -if test "x$1" = xstart && \
> - ! test -f /proc/xen/capabilities && \
> - ! grep '^xenfs ' /proc/mounts >/dev/null;
> -then
> - mount -t xenfs xenfs /proc/xen
> -fi
This unilaterally remove mounting xenfs. We need to keep mounting it
because some applications might use those legacy devices.
I do think we need to avoid breaking old stuff, especially when it is
not to hard to achieve.
> -
> # run this script only in domU:
> -# no capabilities file in xenlinux domU kernel
> -# empty capabilities file in pv_ops domU kernel
> -if ! test -f /proc/xen/capabilities || \
> - grep -q "control_d" /proc/xen/capabilities ; then
> +if grep -q '00000000-0000-0000-0000-000000000000' /sys/hypervisor/uuid; then
Here you're relying on the fact that dom0 uuid is all zeros. I don't
think this is documented in Linux, so you can't do it here.
> exit 0
> fi
>
> @@ -52,7 +41,7 @@ do_start () {
> ${sbindir}/xl devd --pidfile=$XLDEVD_PIDFILE $XLDEVD_ARGS
> }
> do_stop () {
> - echo Stopping xl devd...
> + echo Stopping xl devd...
Indentation looks wrong. Should use tab here.
> if read 2>/dev/null <$XLDEVD_PIDFILE pid; then
> kill $pid
> while kill -9 $pid >/dev/null 2>&1; do sleep 1; done
> @@ -71,7 +60,7 @@ case "$1" in
> echo >&2 'Reload not available; use force-reload'; exit 1
> ;;
> force-reload|restart)
> - do_stop
> + do_stop
Ditto.
> do_start
> ;;
> *)
> --
> 2.7.4 (Apple Git-66)
>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |