Solved virtual_oss_cmd: Could not open control device: /dev/vdsp.ctl:

Hi,

using : FreeBSD 15.1-STABLE stable/15-n283911-b0f75189f6cb

At Boot virtual_oss subsystem starts somehow , and says :
Code:
virtual_oss_cmd: Could not open control device: /dev/vdsp.ctl: No such file or directory
Three times.
This is before its started properly by this line in rc.conf [/SIZE]
virtual_oss_enable="YES"
After its started properly it is connected to /dev/dsp.
Code:
# cat /dev/sndstat 
Installed devices:
pcm0: <NVIDIA (0x009f) (HDMI/DP 8ch)> (play)
pcm1: <NVIDIA (0x009f) (HDMI/DP 8ch)> (play)
pcm2: <NVIDIA (0x009f) (HDMI/DP 8ch)> (play)
pcm3: <NVIDIA (0x009f) (HDMI/DP 8ch)> (play)
pcm4: <Realtek ALC662 rev3 (Rear Analog)> (play/rec) default
pcm5: <Realtek ALC662 rev3 (Front Analog)> (play/rec)
pcm6: <Realtek ALC662 rev3 (Onboard Digital)> (play)
pcm7: <Intel (0x2816) (HDMI/DP 8ch)> (play)
pcm8: <Microsoft Microsoft LifeCam Studio(TM)> (rec)
Installed devices from userspace:
dsp: <virtual_oss device> (play/rec)

-------------

Why or what would try to start up "virtual_oss" before its stated by its own ENABLE command ?
the webcam ?
 
Last edited by a moderator:
I tried disabling virtual_oss earlier when mixer didn't find devices, which then led to having to add myself to audio group (seems relatively new; I never messed with audio group manually)

Not sure if that helps with virtual_oss though
 
hi, friend. drsnx60 : i have got same warning in freebsd15.1 ..
sysrc: unknown variable 'virtual_oss_default_control_device'
virtual_oss_cmd: Could not open '/dev/'
sysrc: unknown variable 'virtual_oss_default_control_device'
virtual_oss_cmd: Could not open '/dev/'

why got this message. because i have below configuration in /etc/sysctl.conf

#enable machine sound output from background of machine
hw.snd.default_unit=4

if disable this configuration ,the virual_oss warning will disappear....
xxxxxxx $ cat /dev/sndstat
Installed devices:
pcm0: <NVIDIA (0x0060) (HDMI/DP 8ch)> (play)
pcm1: <NVIDIA (0x0060) (HDMI/DP 8ch)> (play)
pcm2: <NVIDIA (0x0060) (HDMI/DP 8ch)> (play)
pcm3: <Realtek ALC280 (Analog 2.0+HP/2.0)> (play/rec)
pcm4: <Realtek ALC280 (Rear Analog)> (play/rec) default
No devices installed from userspace.

maybe this is a bug in freebsd15.1......
 
I had the same problem after updating from 15.0 to 15.1.These are the errors that devd displays during startup. I deleted all OSS configuration files from devd (moved to another place, then delete it from configuration directory). After restarting the computer, the sound works fine, and the above messages are gone during startup.
I saw somewhere a solution to this issue by entering the appropriate action in the devd daemon configuration file

I don't know why new solutions are being introduced when the old ones worked perfectly for years. I see that FreeBSD is starting to become as chaotic as Linux...And becomes overgrown with more unnecessary demons and configurations.
Another problem is the lack of configuration documentation for the new tools introduced in the system.
 
thanks , /etc/devd/snd.conf

Code:
 action                  "/usr/sbin/virtual_oss_cmd /dev/vdsp.ctl -R /dev/$cdev";
.

  action                  "/usr/sbin/virtual_oss_cmd /dev/vdsp.ctl -P /dev/$cdev";


After Boot /dev/vdsp.ctl exists , but boot message is :

Code:
virtual_oss_cmd: Could not open control device: /dev/vdsp.ctl: No such file or directory

I will try to enable virtual_oss early in boot process.

EDIT:

After doing a Verbose Boot I can see that devd(8) is starting before virtual_oss even with an explicit virtual_oss_enable="YES".
early in rc.conf file. so devd is trying to access a device that not created at the time the /etc/devd/snd.conf script is run.
 

Attachments

  • ksnip_20260628-115730.png
    ksnip_20260628-115730.png
    81.7 KB · Views: 10
yes probably ,,,, so it was solved by starting virtual_oss inside the /etc/dev/snd.conf script before trying to manipulating the device.
Becasue RC startup process dont obey the sequence of startup commands in rc.conf , but reorder commands before executing them .
Anyway, I've never seen the message again after updating stable/15 from commit base c1f725bfb964149858418a0fcd59e3561a2d4236, which is BEFORE the mentioned commit to commit base 8d0154e641861359760af16285d2dc53793632ba, which is AFTER the mentioned commit.
And I'm now at commit base 9707d9f01e5cf4c3ff817f71a95e9ef4c85a1746, still don't see the message again.
 
Back
Top