From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: [linux-next:master 615/2355] sound/virtio/virtio_pcm.c:438 virtsnd_pcm_build_devs() warn: passing a valid pointer to 'PTR_ERR'
Date: Fri, 05 Mar 2021 16:01:27 +0800 [thread overview]
Message-ID: <202103051620.OPmsSFfh-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 5874 bytes --]
CC: kbuild-all(a)01.org
CC: Linux Memory Management List <linux-mm@kvack.org>
TO: Anton Yakovlev <anton.yakovlev@opensynergy.com>
CC: "Michael S. Tsirkin" <mst@redhat.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 4641b32307b3b54397652a71f852bb0bafb0820d
commit: 83ec5db56076d6be459a070b3f0a15d53dbed9b0 [615/2355] ALSA: virtio: build PCM devices and substream hardware descriptors
:::::: branch date: 4 hours ago
:::::: commit date: 8 days ago
config: parisc-randconfig-m031-20210305 (attached as .config)
compiler: hppa-linux-gcc (GCC) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
sound/virtio/virtio_pcm.c:438 virtsnd_pcm_build_devs() warn: passing a valid pointer to 'PTR_ERR'
vim +/PTR_ERR +438 sound/virtio/virtio_pcm.c
83ec5db56076d6b Anton Yakovlev 2021-02-22 375
83ec5db56076d6b Anton Yakovlev 2021-02-22 376 /**
83ec5db56076d6b Anton Yakovlev 2021-02-22 377 * virtsnd_pcm_build_devs() - Build ALSA PCM devices.
83ec5db56076d6b Anton Yakovlev 2021-02-22 378 * @snd: VirtIO sound device.
83ec5db56076d6b Anton Yakovlev 2021-02-22 379 *
83ec5db56076d6b Anton Yakovlev 2021-02-22 380 * Context: Any context that permits to sleep.
83ec5db56076d6b Anton Yakovlev 2021-02-22 381 * Return: 0 on success, -errno on failure.
83ec5db56076d6b Anton Yakovlev 2021-02-22 382 */
83ec5db56076d6b Anton Yakovlev 2021-02-22 383 int virtsnd_pcm_build_devs(struct virtio_snd *snd)
83ec5db56076d6b Anton Yakovlev 2021-02-22 384 {
83ec5db56076d6b Anton Yakovlev 2021-02-22 385 struct virtio_device *vdev = snd->vdev;
83ec5db56076d6b Anton Yakovlev 2021-02-22 386 struct virtio_pcm *vpcm;
83ec5db56076d6b Anton Yakovlev 2021-02-22 387 u32 i;
83ec5db56076d6b Anton Yakovlev 2021-02-22 388 int rc;
83ec5db56076d6b Anton Yakovlev 2021-02-22 389
83ec5db56076d6b Anton Yakovlev 2021-02-22 390 list_for_each_entry(vpcm, &snd->pcm_list, list) {
83ec5db56076d6b Anton Yakovlev 2021-02-22 391 unsigned int npbs =
83ec5db56076d6b Anton Yakovlev 2021-02-22 392 vpcm->streams[SNDRV_PCM_STREAM_PLAYBACK].nsubstreams;
83ec5db56076d6b Anton Yakovlev 2021-02-22 393 unsigned int ncps =
83ec5db56076d6b Anton Yakovlev 2021-02-22 394 vpcm->streams[SNDRV_PCM_STREAM_CAPTURE].nsubstreams;
83ec5db56076d6b Anton Yakovlev 2021-02-22 395
83ec5db56076d6b Anton Yakovlev 2021-02-22 396 if (!npbs && !ncps)
83ec5db56076d6b Anton Yakovlev 2021-02-22 397 continue;
83ec5db56076d6b Anton Yakovlev 2021-02-22 398
83ec5db56076d6b Anton Yakovlev 2021-02-22 399 rc = snd_pcm_new(snd->card, VIRTIO_SND_CARD_DRIVER, vpcm->nid,
83ec5db56076d6b Anton Yakovlev 2021-02-22 400 npbs, ncps, &vpcm->pcm);
83ec5db56076d6b Anton Yakovlev 2021-02-22 401 if (rc) {
83ec5db56076d6b Anton Yakovlev 2021-02-22 402 dev_err(&vdev->dev, "snd_pcm_new[%u] failed: %d\n",
83ec5db56076d6b Anton Yakovlev 2021-02-22 403 vpcm->nid, rc);
83ec5db56076d6b Anton Yakovlev 2021-02-22 404 return rc;
83ec5db56076d6b Anton Yakovlev 2021-02-22 405 }
83ec5db56076d6b Anton Yakovlev 2021-02-22 406
83ec5db56076d6b Anton Yakovlev 2021-02-22 407 vpcm->pcm->info_flags = 0;
83ec5db56076d6b Anton Yakovlev 2021-02-22 408 vpcm->pcm->dev_class = SNDRV_PCM_CLASS_GENERIC;
83ec5db56076d6b Anton Yakovlev 2021-02-22 409 vpcm->pcm->dev_subclass = SNDRV_PCM_SUBCLASS_GENERIC_MIX;
83ec5db56076d6b Anton Yakovlev 2021-02-22 410 snprintf(vpcm->pcm->name, sizeof(vpcm->pcm->name),
83ec5db56076d6b Anton Yakovlev 2021-02-22 411 VIRTIO_SND_PCM_NAME " %u", vpcm->pcm->device);
83ec5db56076d6b Anton Yakovlev 2021-02-22 412 vpcm->pcm->private_data = vpcm;
83ec5db56076d6b Anton Yakovlev 2021-02-22 413 vpcm->pcm->nonatomic = true;
83ec5db56076d6b Anton Yakovlev 2021-02-22 414
83ec5db56076d6b Anton Yakovlev 2021-02-22 415 for (i = 0; i < ARRAY_SIZE(vpcm->streams); ++i) {
83ec5db56076d6b Anton Yakovlev 2021-02-22 416 struct virtio_pcm_stream *stream = &vpcm->streams[i];
83ec5db56076d6b Anton Yakovlev 2021-02-22 417
83ec5db56076d6b Anton Yakovlev 2021-02-22 418 if (!stream->nsubstreams)
83ec5db56076d6b Anton Yakovlev 2021-02-22 419 continue;
83ec5db56076d6b Anton Yakovlev 2021-02-22 420
83ec5db56076d6b Anton Yakovlev 2021-02-22 421 stream->substreams =
83ec5db56076d6b Anton Yakovlev 2021-02-22 422 devm_kcalloc(&vdev->dev, stream->nsubstreams,
83ec5db56076d6b Anton Yakovlev 2021-02-22 423 sizeof(*stream->substreams),
83ec5db56076d6b Anton Yakovlev 2021-02-22 424 GFP_KERNEL);
83ec5db56076d6b Anton Yakovlev 2021-02-22 425 if (!stream->substreams)
83ec5db56076d6b Anton Yakovlev 2021-02-22 426 return -ENOMEM;
83ec5db56076d6b Anton Yakovlev 2021-02-22 427
83ec5db56076d6b Anton Yakovlev 2021-02-22 428 stream->nsubstreams = 0;
83ec5db56076d6b Anton Yakovlev 2021-02-22 429 }
83ec5db56076d6b Anton Yakovlev 2021-02-22 430 }
83ec5db56076d6b Anton Yakovlev 2021-02-22 431
83ec5db56076d6b Anton Yakovlev 2021-02-22 432 for (i = 0; i < snd->nsubstreams; ++i) {
83ec5db56076d6b Anton Yakovlev 2021-02-22 433 struct virtio_pcm_stream *vs;
83ec5db56076d6b Anton Yakovlev 2021-02-22 434 struct virtio_pcm_substream *vss = &snd->substreams[i];
83ec5db56076d6b Anton Yakovlev 2021-02-22 435
83ec5db56076d6b Anton Yakovlev 2021-02-22 436 vpcm = virtsnd_pcm_find(snd, vss->nid);
83ec5db56076d6b Anton Yakovlev 2021-02-22 437 if (IS_ERR(vpcm))
83ec5db56076d6b Anton Yakovlev 2021-02-22 @438 return PTR_ERR(vpcm);
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 34286 bytes --]
reply other threads:[~2021-03-05 8:01 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202103051620.OPmsSFfh-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.