lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAHhAz+jVm6_B8Fje5TafKFFXk9x801z07afivsfHw7tWp4eB=w@mail.gmail.com>
Date:   Fri, 13 Aug 2021 21:59:30 +0530
From:   Muni Sekhar <munisekharrms@...il.com>
To:     vishnu <vardhanraj4143@...il.com>
Cc:     Jaroslav Kysela <perex@...ex.cz>,
        alsa-devel <alsa-devel@...a-project.org>,
        linux-usb@...r.kernel.org, linux-sound@...r.kernel.org,
        linux-kernel@...r.kernel.org,
        kernelnewbies <kernelnewbies@...nelnewbies.org>
Subject: Re: USB-Audio: Device or resource busy (strace log)

On Wed, Aug 11, 2021 at 6:48 PM Muni Sekhar <munisekharrms@...il.com> wrote:
>
> On Wed, Aug 11, 2021 at 6:19 PM vishnu <vardhanraj4143@...il.com> wrote:
> >
> > can you paste output of
> > arecord -l (list of capture devices).
> $ arecord -l
> **** List of CAPTURE Hardware Devices ****
> card 0: USB [Plantronics .Audio 628 USB], device 0: USB Audio [USB Audio]
>   Subdevices: 1/1
>   Subdevice #0: subdevice #0
>
>
> > Which device you are using and os.
> > Does this instance is already open by default? like any video playing or something like that?
> lsof does not catch it.
>
> >
> > Yes you can stop pulse audio and try..
> >
> > On Wed, Aug 11, 2021 at 6:17 PM Jaroslav Kysela <perex@...ex.cz> wrote:
> >>
> >> On 11. 08. 21 14:36, Muni Sekhar wrote:
> >> > Hi All,
> >> >
> >> > $ cat /proc/asound/cards
> >> >  0 [USB            ]: USB-Audio - Plantronics .Audio 628 USB
> >> >                       Plantronics Plantronics .Audio 628 USB at
> >> > usb-0000:00:14.0-2, full speed
> >> >
> >> > I am using a Plantronics USB Audio headset.
> >> >
> >> > $ arecord --device hw:0,0 --channels 2 --format S16_LE --rate 44100Hz x.wav
> >> > arecord: main:722: audio open error: Device or resource busy
> >> >
> >> >
> >> > 'arecord' command always fails the first time after system boot in my
> >> > system. But subsequent execution of the 'arecord' command runs fine.
> >> >
> >> >
> >> > I've attached the strace log for the "audio open error: Device or
> >> > resource busy" failure. Is there any fix available for this issue?
> >>
> >> You may check which other task blocks the PCM device:
> >>
> >>   lsof /dev/snd/pcmC0D0c
> It does not output any process.
> $ lsof /dev/snd/pcmC0D0c
>
> 1st run:
> ----------
> $ arecord --device hw:0,0 --channels 2 --format S16_LE --rate 44100Hz x.wav
> arecord: main:722: audio open error: Device or resource busy
>
> 2nd run:
> ----------
> $ arecord --device hw:0,0 --channels 2 --format S16_LE --rate 44100Hz x.wav
> Recording WAVE 'x.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
> ^CAborted by signal Interrupt...
>
>
> >>
> >> I guess that it will be pulseaudio (device enumeration).
I see that pulseaudio is getting loaded on invoking the 1st run of
'arecord' command. Here is the log:

After system boot I verified that pulseaudio is not in the memory.

test@...t594:~$ uptime
 21:39:27 up 0 min,  1 user,  load average: 0.70, 0.25, 0.09
test@...t594:~$ ls -ltr /dev/snd/controlC1
crw-rw---- 1 root audio 116, 2 Aug 13 21:38 /dev/snd/controlC1
test@...t594:~$ ls -ltr /dev/snd/
total 0
crw-rw---- 1 root audio 116, 33 Aug 13 21:38 timer
crw-rw---- 1 root audio 116,  1 Aug 13 21:38 seq
crw-rw---- 1 root audio 116,  3 Aug 13 21:38 pcmC1D0p
crw-rw---- 1 root audio 116,  4 Aug 13 21:38 pcmC1D0c
crw-rw---- 1 root audio 116,  2 Aug 13 21:38 controlC1
drwxr-xr-x 2 root root       60 Aug 13 21:38 by-path
drwxr-xr-x 2 root root       60 Aug 13 21:38 by-id
test@...t594:~$ lsof /dev/snd/controlC1
test@...t594:~$ lsof /dev/snd/pcmC1D0c
test@...t594:~$


1st run of 'arecord':
-------------------------
I triggered 'arecord' after 2 mins of the system boot. In the 1st run,
it failed with "Device or resource busy" and I see that pulseaudio
loaded in the memory.
Why does pulseaudio get triggered on running the alsa-utils command?
How is the failure message "Device or resource busy" from the kernel code?


test@...t594:~$ arecord --device hw:1,0 --channels 2 --format S16_LE
--rate 44100Hz x.wav
arecord: main:722: audio open error: Device or resource busy
test@...t594:~$
test@...t594:~$ lsof /dev/snd/pcmC1D0c
COMMAND    PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
pulseaudi 1550 test  mem    CHR  116,4           463 /dev/snd/pcmC1D0c
pulseaudi 1550 test   27u   CHR  116,4      0t0  463 /dev/snd/pcmC1D0c
test@...t594:~$ lsof /dev/snd/controlC1
COMMAND    PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
pulseaudi 1550 test   20u   CHR  116,2      0t0  461 /dev/snd/controlC1
pulseaudi 1550 test   26u   CHR  116,2      0t0  461 /dev/snd/controlC1
test@...t594:~$ lsof /dev/snd/pcmC1D0p
test@...t594:~$
test@...t594:~$ uptime
 21:41:06 up 2 min,  1 user,  load average: 0.20, 0.19, 0.08


2nd run of 'arecord':
-------------------------
The subsequent run of arecord runs fine without any issues even though
pulseaudio is still in memory.

test@...t594:~$ arecord --device hw:1,0 --channels 2 --format S16_LE
--rate 44100Hz x.wav
Recording WAVE 'x.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
^CAborted by signal Interrupt...
test@...t594:~$ uptime
 21:41:22 up 2 min,  1 user,  load average: 0.14, 0.18, 0.08
test@...t594:~$

What is the role of pulseaudio? Is there a way to disable it from running it?
Disabling pulseaudio causes any issues while testing audio drivers?


> >>
> >>                                         Jaroslav
> >>
> >> --
> >> Jaroslav Kysela <perex@...ex.cz>
> >> Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
>
>
>
> --
> Thanks,
> Sekhar



-- 
Thanks,
Sekhar

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ