With SirDice exploring the sound issue I'll ask about
zzz(8), which is just a script wrapper for (usually):
acpiconf -s 3
The issue seems to be some difference in the running system after a warm boot (shutdown -r) compared to a cold boot (power on), which in theory shouldn't happen.
After a cold boot, can you suspend and resume reliably and repeatedly, before trying to shutdown -r?
If so, does examining
/var/log/messages have lines for acpi ... suspend at (time) and acpi ... resume at (time)? Is each suspend / resume block look the same?
If not, what happens instead? Are there potential clues or error messsges in that file?
And after the warm boot, what actually happens when you issue
zzz
, where it fails? Is anything written to console? Or logged in the messages file? If so, exact messages should help.
You said it isn't a problem for you, but if suspend then fails, there are quite likely other things broken too, so it's worth fixing.
What make and model is the machine?
What FreeBSD version?