[Bug 269012] sysutils/vm-bhyve: VMs are not started on FreeBSD 13.1 - might be rc.d

From: <bugzilla-noreply_at_freebsd.org>
Date: Tue, 17 Jan 2023 17:30:36 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269012

            Bug ID: 269012
           Summary: sysutils/vm-bhyve: VMs are not started on FreeBSD 13.1
                    - might be rc.d
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: dvl@FreeBSD.org
                CC: churchers@gmail.com
             Flags: maintainer-feedback?(churchers@gmail.com)
                CC: churchers@gmail.com

I suspect the current rc.d script in FreeBSD 13.1 contains circular
dependencies:

[slocum dan ~] % rcorder /etc/rc.d/* /usr/local/etc/rc.d/*                     
                 16:42:28
rcorder: file `/usr/local/etc/rc.d/vm' is before unknown provision `dnsmasq'
rcorder: Circular dependency on file `/usr/local/etc/rc.d/vm'.
rcorder: Circular dependency on provision `dmesg': /etc/rc.d/dmesg ->
/etc/rc.d/mountcritremote -> /etc/rc.d/gssd -> /etc/rc.d/kdc ->
/etc/rc.d/NETWORKING -> /etc/rc.d/local_unbound -> /etc/rc.d/netwait ->
/etc/rc.d/pf -> /usr/local/etc/rc.d/vm -> /etc/rc.d/dmesg.
rcorder: Circular dependency on provision `mountcritremote':
/etc/rc.d/mountcritremote -> /etc/rc.d/gssd -> /etc/rc.d/kdc ->
/etc/rc.d/NETWORKING -> /etc/rc.d/local_unbound -> /etc/rc.d/netwait ->
/etc/rc.d/pf -> /usr/local/etc/rc.d/vm -> /etc/rc.d/SERVERS -> /etc/rc.d/devfs
-> /etc/rc.d/mountcritremote.
rcorder: `/etc/rc.d/devfs' was seen in circular dependencies for 1 times.
rcorder: Circular dependency on file `/etc/rc.d/kdc'.
rcorder: Circular dependency on provision `NETWORKING': /etc/rc.d/NETWORKING ->
/etc/rc.d/local_unbound -> /etc/rc.d/netwait -> /etc/rc.d/pf ->
/usr/local/etc/rc.d/vm -> /etc/rc.d/SERVERS -> /etc/rc.d/kdc ->
/etc/rc.d/NETWORKING.
rcorder: `/etc/rc.d/kdc' was seen in circular dependencies for 3 times.
rcorder: Circular dependency on provision `mountcritremote':
/etc/rc.d/mountcritremote -> /etc/rc.d/gssd -> /etc/rc.d/kdc ->
/etc/rc.d/NETWORKING -> /etc/rc.d/local_unbound -> /etc/rc.d/netwait ->
/etc/rc.d/pf -> /usr/local/etc/rc.d/vm -> /etc/rc.d/SERVERS ->
/etc/rc.d/mdconfig2 -> /etc/rc.d/mountcritremote.
rcorder: `/etc/rc.d/mdconfig2' was seen in circular dependencies for 1 times.
rcorder: Circular dependency on provision `mountcritremote':
/etc/rc.d/mountcritremote -> /etc/rc.d/gssd -> /etc/rc.d/kdc ->
/etc/rc.d/NETWORKING -> /etc/rc.d/local_unbound -> /etc/rc.d/netwait ->
/etc/rc.d/pf -> /usr/local/etc/rc.d/vm -> /etc/rc.d/SERVERS ->
/etc/rc.d/syslogd -> /etc/rc.d/newsyslog -> /etc/rc.d/mountcritremote.
rcorder: `/etc/rc.d/newsyslog' was seen in circular dependencies for 1 times.
rcorder: Circular dependency on provision `mountcritremote':
/etc/rc.d/mountcritremote -> /etc/rc.d/gssd -> /etc/rc.d/kdc ->
/etc/rc.d/NETWORKING -> /etc/rc.d/local_unbound -> /etc/rc.d/netwait ->
/etc/rc.d/pf -> /usr/local/etc/rc.d/vm -> /etc/rc.d/SERVERS ->
/etc/rc.d/syslogd -> /etc/rc.d/mountcritremote.
rcorder: `/etc/rc.d/syslogd' was seen in circular dependencies for 2 times.
rcorder: Circular dependency on provision `NETWORKING': /etc/rc.d/NETWORKING ->
/etc/rc.d/local_unbound -> /etc/rc.d/netwait -> /etc/rc.d/pf ->
/usr/local/etc/rc.d/vm -> /etc/rc.d/SERVERS -> /usr/local/etc/rc.d/named ->
/etc/rc.d/NETWORKING.
rcorder: `/usr/local/etc/rc.d/named' was seen in circular dependencies for 1
times.
rcorder: Circular dependency on provision `mountcritremote':
/etc/rc.d/mountcritremote -> /etc/rc.d/gssd -> /etc/rc.d/kdc ->
/etc/rc.d/NETWORKING -> /etc/rc.d/local_unbound -> /etc/rc.d/netwait ->
/etc/rc.d/pf -> /usr/local/etc/rc.d/vm -> /etc/rc.d/SERVERS -> /etc/rc.d/linux
-> /etc/rc.d/archdep -> /etc/rc.d/mountcritremote.
rcorder: `/etc/rc.d/archdep' was seen in circular dependencies for 1 times.
rcorder: `/etc/rc.d/linux' was seen in circular dependencies for 1 times.
rcorder: Circular dependency on provision `mountcritremote':
/etc/rc.d/mountcritremote -> /etc/rc.d/gssd -> /etc/rc.d/kdc ->
/etc/rc.d/NETWORKING -> /etc/rc.d/local_unbound -> /etc/rc.d/netwait ->
/etc/rc.d/pf -> /usr/local/etc/rc.d/vm -> /etc/rc.d/SERVERS ->
/etc/rc.d/mountcritremote.
rcorder: `/etc/rc.d/SERVERS' was seen in circular dependencies for 8 times.
rcorder: Circular dependency on provision `NETWORKING': /etc/rc.d/NETWORKING ->
/etc/rc.d/local_unbound -> /etc/rc.d/netwait -> /etc/rc.d/pf ->
/usr/local/etc/rc.d/vm -> /etc/rc.d/NETWORKING.
rcorder: `/usr/local/etc/rc.d/vm' was seen in circular dependencies for 10
times.
rcorder: `/etc/rc.d/pf' was seen in circular dependencies for 10 times.
rcorder: `/etc/rc.d/netwait' was seen in circular dependencies for 10 times.
rcorder: `/etc/rc.d/local_unbound' was seen in circular dependencies for 10
times.
rcorder: `/etc/rc.d/NETWORKING' was seen in circular dependencies for 10 times.
rcorder: `/etc/rc.d/kdc' was seen in circular dependencies for 8 times.
rcorder: `/etc/rc.d/gssd' was seen in circular dependencies for 7 times.
rcorder: `/etc/rc.d/mountcritremote' was seen in circular dependencies for 7
times.
rcorder: `/etc/rc.d/dmesg' was seen in circular dependencies for 1 times.
rcorder: `/usr/local/etc/rc.d/vm' was seen in circular dependencies for 10
times.
rcorder: requirement `dovecot' in file `/usr/local/etc/rc.d/postfix' has no
providers.
/etc/rc.d/dhclient
/etc/rc.d/sysctl
/etc/rc.d/natd


This can be fixed by changing:

# BEFORE: dnsmasq ipfw pf

to:

# BEFORE: dnsmasq

With that change, no more circular dependencies.

Background:

* pf requires netif
* NETWORKING requires netif
* NETWORKING requires ipfw

Conclusion: there is no need to specify ipfw and pf if NETWORKING is required.

I am reaching the right conclusion here?

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