bhyve guests: what clock source to use?

2023-10-11 Thread Sean McBride
Hi all,

As part of debugging a problem I'm having, I'd like to understand:

What clock source should bhyve guests use?  tsc? hpet? acpi_pm?  What are 
pros/cons of the choices?  Does it depend on the guest OS? (for me FreeBSD and 
Ubuntu)  Should it match the host?

Thanks,

Sean



[Bug 273557] Regression preventing bhyve from running inside a jail without IP after f74147e26999838e03a522bf59ea33bef470d356) breaks support for jailing bhyve with IPv4 and IPv6 disabled. Patch inclu

2023-10-11 Thread bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=273557

Mark Johnston  changed:

   What|Removed |Added

 CC||ma...@freebsd.org

--- Comment #12 from Mark Johnston  ---
I think I agree with the proposed patch to use VMIO_SIOCSIFFLAGS.  Even if IP
is disabled on the jail, tap is an L2 device.  The fact that we have to use an
IP socket to configure the interface is bizarre; this overloading of sockets is
also problematic for capsicum.

OTOH, I think we can configure IFF_UP with any kind of socket, no?  We could
use a PF_ROUTE or PF_NETLINK socket instead.  I don't think netlink itself buys
us anything here, ifconfig still uses socket ioctls to set interface flags. 
One other reason to avoid VMIO_SIOCSIFFLAGS is that it's really just there for
vmnet(4) compatibility, I believe.

-- 
You are receiving this mail because:
You are the assignee for the bug.


[Bug 273557] Regression preventing bhyve from running inside a jail without IP after f74147e26999838e03a522bf59ea33bef470d356) breaks support for jailing bhyve with IPv4 and IPv6 disabled. Patch inclu

2023-10-11 Thread bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=273557

--- Comment #13 from cr...@rlwinm.de ---
The patch changes the bhyve tap network backend code invoked to open devices
with names starting with "tap" or "vmnet". Since the code is already exclusive
to the if_tuntap driver in tap or vmnet mode I can't see any problem with
relying on one *more* driver specific ioctl(). As far as I can tell there is no
possible configuration where the existing code works as intended, but the patch
wouldn't also work.

Netlink sockets shouldn't offer any way for a bhyve process attached to a vnet
enabled jail to even address network interface in its parent jail (normally the
unjailed host) to bring it up (or down). Anything else would be a security
problem. The device file descriptor is the natural API endpoint to bring an
interface up. It is the capability to manipulate a tap device through the
single opening allowed per tap device (at a time). Having to query the tap
device for its interface name or index to reference the interface in a request
to change interface state by name or index is also a race condition since the
interface could've been destroyed and its name or index reused. Using the file
descriptor precludes any race condition similar to funlinkat() vs unlinkat().

-- 
You are receiving this mail because:
You are the assignee for the bug.