SNDRV_PCM_IOCTL_READI_FRAMES returns EIO

Takashi Iwai tiwai at suse.de
Fri Jun 11 11:55:23 CEST 2021


On Fri, 11 Jun 2021 10:43:01 +0200,
Muni Sekhar wrote:
> 
> On Fri, Jun 11, 2021 at 1:19 PM Takashi Iwai <tiwai at suse.de> wrote:
> >
> > On Fri, 11 Jun 2021 09:02:44 +0200,
> > Muni Sekhar wrote:
> > >
> > > Hi all,
> > >
> > > I am using a USB sound card(snd-usb-audio), and it fails while doing
> > > the audio recording "arecord: pcm_read:2032: read error: Input/output
> > > error".
> > >
> > >  I noticed recording(arecord) audio data on a USB sound card fails at
> > > SNDRV_PCM_IOCTL_READI_FRAMES is giving EIO.
> > >
> > > Can someone please clarify when the kernel returns EIO for Ioctl
> > > SNDRV_PCM_IOCTL_READI_FRAMES? and is there a workaround for this?
> >
> > It's a problem of either your device (e.g. USB device firmware) or the
> > kernel.  Do you get any relevant kernel error messages?
> dmesg log does not indicate any such error messages when arecord fails.

Then it's likely a debug print in PCM core, which is suppressed as
default.  You can enable it via dyndbg stuff.  It won't help much for
diagnose at this stage, though.

> Is there a way to prove it as a USB device firmware issue or kernel issue?

You can check strace output, for example.  The PCM core is supposed to
be bug-free regarding this, so it's about USB-audio driver, and the
problem is specific to your device (other USB-audio devices work),
hence it's very likely a firmware problem.

> Please find the alsamixer output in the attached file alsamixer_output.png file.

The mixer output has nothing to do with the PCM problem.


Takashi


More information about the Alsa-devel mailing list