Re: RFC: libvirt-tck bhyve/FreeBSD support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



  Daniel P. Berrangé wrote:

> > I imagine that this is a valid configuration for qemu and probably other
> > drivers, but not for bhyve, because it doesn't support direct kernel
> > boot (neither for Linux nor FreeBSD). However, I wasn't able to find
> > anything similar in the driver's capabilities. If I'm not missing
> > anything, should drivers be able to advertise whether they support
> > direct kernel boot?
> 
> Yeah, we ought to come up with a way to express whether a driver
> can do direct kernel boot or not. Only virt tech that originated
> in a Linux context can typically do this (Xen, UserModeLinux, QEMU).
> 
> At the same time though, for the TCK we could fudge it via
> the configuration file. We currently list the kernel+initrd
> in that config file, but we could make it accept an ISO
> image instead perhaps ?

I'll play around with the idea of using the TCK configuration file for
that. I image it'll require some fiddling with the fullos argument inside TCK,
will see how it turns out.

> > 
> > Second example is pretty similar, but without the direct kernel bits:
> > 
> > <domain type="bhyve">                                                                                                                                                                                                                                                   
> >   <name>tck</name>           
> >   <memory>1048576</memory>                                                                                                                                                                                                                                              
> >   <currentMemory>1048576</currentMemory>
> >   <os>                                  
> >     <type arch="x86_64">hvm</type>                                                                                                  
> >     <boot dev="hd" />                                                                                                               
> >   </os>                                                                                                                             
> >   <features>                                                   
> >     <acpi />                                                   
> >     <apic />                                                                                                                        
> >   </features>                                                                                                                       
> >   <devices>                                                                                                                         
> >     <disk type="file">                                                                                                              
> >       <driver />                      
> >       <source file="/var/lib/libvirt-tck/libvirt-tck/os-x86_64-hvm/disk-fedora-40.img" />
> >       <target dev="vda" />                              
> >     </disk>                      
> >     <rng model="virtio">                                          
> >       <backend model="random" />                     
> >     </rng>                                                                                                                          
> >   </devices>                                             
> > </domain>
> > 
> > I imagine a config like is valid for qemu and many other drivers, but
> > it's valid for bhyve iff disk-fedora-40.img is a FreeBSD image. I think
> > in this should not be solved on the driver's capabilities reporting
> > level, because adding os_name details is probably way to specific.
> 
> I'm not sure I understand what the problem is in this example ? Are
> you saying that bhyve can only run FreeBSD guests, not Linux guests,
> or am I mis-interpreting ?

Not exactly. You're right that bhyveload(8) is somewhat a replacement
for grub2 or similar, with a limitation that it only supports FreeBSD
guests.

Currently, there are two main scenarios for bhyve:

 * No loader/firmware configured -> defaults to bhyveload(8) and, thus,
   to FreeBSD guests only (just like in the example above)
 * <os firmware='efi'> specified -> any reasonable guest supported by
   the firmware is supported

The problem I see here is that currently the bhyve driver defaults to a
less flexible configuration with bhyveload rather than to the efi
firmware.

I can of course configure TCK to test against FreeBSD guests, but I was
wondering whether it makes sense to switch defaults, that is, default to
the efi firmware instead of bhyveload(8) when no specific loader
configuration was provided?

Thanks,
Roman




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux