Re: any primer on running bhyve guests sharing disk with host ?

From: Julian Elischer <julian_at_freebsd.org>
Date: Wed, 07 Jan 2015 13:58:48 +0800
On 1/6/15 10:55 PM, John Baldwin wrote:
> On 1/3/15 1:43 PM, Craig Rodrigues wrote:
>> On Sat, Jan 3, 2015 at 8:15 AM, Luigi Rizzo <rizzo_at_iet.unipi.it> wrote:
>>
>>> Hi,
>>> in order to do some kernel testing, I would like to run bhyve guests
>>> using (through NFS, probably) the host's file system.
>>> diskless(8) is probably one way to go, i was wondering if
>>> someone has instructions for that.
>>> Specifically:
>>> - how to "bhyveload" a kernel (rather than the full disk image);
>>>    as an alternative, given a kernel, something to build an image
>>>    that can be passed to bhyveload
>>>
>>> - how to pass the necessary config (rootpath) to the client
>>>    without having to rely on a specialized dhcp server
>>>
>>> I used to be familiar with diskless configs, so i can probably sort
>>> out the server side myself.
>>>
> < Neel already covered -h with bhyveload which you can also use with -H
> to vmrun.sh, though the other way I do this is to NFS export my work
> tree from the host to the guest so I can run kgdb on the host but do the
> build / install in the guest itself. >
>
>> I don't think there is a way to do exactly what you want.
>> I would recommend doing the following:
>>
>> (1)  Enable bvmdebug in your kernel config:
>> https://wiki.freebsd.org/BHyVe/gdb
>>        This allows you to do kgdb remote debugging into a bhyve VM.
> At this point it is probably simpler to use the serial port instead.  I
> have hacked up vmrun.sh locally to always create a /dev/nmdm<vmname>2B
> device hooked up to com2 and to add 0x80 to the flags for uart1 in
> device.hints in all my VMs.  You can then use kgdb from the host and
> 'target remote /dev/nmdm<vmname>2A'.

I've found the main good part of using bvmdebug is the ability to 
attach to it from a different machine using tcp.
I think bhyve should offer the opportunity to make ALL serial ports or 
similar be attached to sockets..
>
> --- /usr/share/examples/bhyve/vmrun.sh	2014-11-20 18:38:34.000000000 -0500
> +++ /home/john/bhyve/vmrun.sh	2015-01-06 09:54:47.000000000 -0500
> _at__at_ -230,6 +230,9 _at__at_
>   	    nextslot=$(($nextslot + 1))
>   	    i=$(($i + 1))
>   	done
> +	if kldstat -qm nmdm; then
> +	    devargs="$devargs -l com2,/dev/nmdm${vmname}2B"
> +	fi
>
>   	${FBSDRUN} -c ${cpus} -m ${memsize} ${apic_opt} -A -H -P	\
>   		-g ${gdbport}						\
>
>
Received on Wed Jan 07 2015 - 04:59:03 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:54 UTC