Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 6 Dec 2016 10:04:14 +0000
From:      Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>
To:        Nathan Friess <nathan.friess@gmail.com>
Cc:        <freebsd-xen@freebsd.org>
Subject:   Re: 11-RELEASE acting as vbd backend
Message-ID:  <20161206100414.pi7ep2zbkduhuol7@dhcp-3-221.uk.xensource.com>
In-Reply-To: <247e5b6c-2713-27cf-f8fa-61e55c9e2025@gmail.com>
References:  <247e5b6c-2713-27cf-f8fa-61e55c9e2025@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Dec 05, 2016 at 08:48:00PM -0700, Nathan Friess wrote:
> Hi,
> 
> After upgrading a FreeBSD domU from 10.3-RELEASE to 11-RELEASE, it seems
> that FreeBSD can no longer act as a vbd backend for other domUs.
> 
> 
> ***
> My setup before upgrading:
> 
> Xen 4.4
> 
> dom0: Linux (Debian) with a custom compiled 4.2 kernel
> 
> FreeBSD domU: FreeBSD 10.3-RELEASE-p7 in hvm mode.
> Filesystem is ZFS, with zvols created for other domUs.
> xen-guest-tools-4.2.2_1 is installed through pkg.
> 
> Other domU: Linux with the same compiled 4.2 kernel in pv mode.  Xen disk
> configuration is 'format=raw,vdev=xvda1,backendtype=phy,backend=FREEBSD,access=w,target=/dev/zvol/.../rootfs'
> ***
> 
> 
> ***
> Now that FreeBSD 11-RELEASE is out I upgraded it in place.  After upgrading
> FreeBSD the other Linux domU can no longer find /dev/xvda1 to mount as its
> root.  It hangs at boot waiting for the device to appear.
> 
> While the Linux domU is waiting for the vbd I ran xenstore-ls in dom0 to see
> what is going on.  The backend appears in FreeBSD and the frontend in the
> Linux domU, but FreeBSD shows state=2 and Linux shows state=3.
> 
> 
> FreeBSD backend:
> 
> /local/domain/6/backend/vbd = ""   (n0,r6)
> /local/domain/6/backend/vbd/7 = ""   (n0,r6)
> /local/domain/6/backend/vbd/7/51713 = ""   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/frontend =
> "/local/domain/7/device/vbd/51713"   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/params = "/dev/zvol/.../rootfs"
> (n6,r7)
> /local/domain/6/backend/vbd/7/51713/script = "/etc/xen/scripts/block"
> (n6,r7)
> /local/domain/6/backend/vbd/7/51713/frontend-id = "7"   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/online = "1"   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/removable = "0"   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/bootable = "1"   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/state = "2"   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/dev = "xvda1"   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/type = "phy"   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/mode = "w"   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/device-type = "disk"   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/feature-barrier = "1"   (n6,r7)
> /local/domain/6/backend/vbd/7/51713/feature-flush-cache = "1" (n6,r7)
> /local/domain/6/backend/vbd/7/51713/max-ring-page-order = "5" (n6,r7)
> 
> 
> Linux frontend:
> 
> /local/domain/7/device/vbd = ""   (n0,r7)
> /local/domain/7/device/vbd/51713 = ""   (n7,r6)
> /local/domain/7/device/vbd/51713/backend =
> "/local/domain/6/backend/vbd/7/51713"   (n7,r6)
> /local/domain/7/device/vbd/51713/backend-id = "6"   (n7,r6)
> /local/domain/7/device/vbd/51713/state = "3"   (n7,r6)
> /local/domain/7/device/vbd/51713/virtual-device = "51713"   (n7,r6)
> /local/domain/7/device/vbd/51713/device-type = "disk"   (n7,r6)
> /local/domain/7/device/vbd/51713/protocol = "x86_64-abi"   (n7,r6)
> /local/domain/7/device/vbd/51713/ring-ref = "8"   (n7,r6)
> /local/domain/7/device/vbd/51713/event-channel = "15"   (n7,r6)
> /local/domain/7/device/vbd/51713/feature-persistent = "1"   (n7,r6)
> 
> 
> 
> When the vbd was working in 10.3, the backend also shows the following:
> 
> /local/domain/8/backend/vbd/9/51713/hotplug-status = "connected" (n8,r9)
> /local/domain/8/backend/vbd/9/51713/sectors = "41943040"   (n8,r9)
> /local/domain/8/backend/vbd/9/51713/info = "0"   (n8,r9)
> /local/domain/8/backend/vbd/9/51713/sector-size = "512"   (n8,r9)
> ***
> 
> 
> In case there is a version incompatibility with the new FreeBSD, I later
> upgraded Xen to 4.7 and dom0 to a Linux 4.4 kernel.  This did not help.
> 
> How might I get this setup working again?

Hello,

There have been some blkback changes in FreeBSD 11.0 in order to support using 
more disk types from blkback (like iSCSI). In order to achieve this, if you want 
to use blkback from a driver domain you will have to install the xen-tools 
package in the driver domain, and execute the xendriverdomain at domain startup 
(add xendriverdomain_enable="YES" to your rc.conf). After that, everything 
should work as expected.

Roger.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20161206100414.pi7ep2zbkduhuol7>