Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp300607pxb; Thu, 25 Feb 2021 02:58:48 -0800 (PST) X-Google-Smtp-Source: ABdhPJxe5iEZ7OeKt5zCx1Kut9YEo+fAa1aQIcDHdLMEDjmtynv+/orsgEKP08FWGtFTz513ppVp X-Received: by 2002:a17:906:28d6:: with SMTP id p22mr2088147ejd.365.1614250728403; Thu, 25 Feb 2021 02:58:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1614250728; cv=none; d=google.com; s=arc-20160816; b=P8vYrb4SOkqmhch4lv3z3AC4PbK4gTDQK2zJqXHAQtIdgifl3Z1guYyG8t2ntWhUfO /yiwwnXDMOjVSrtW5O4TkjM4+xSIvEXSuPjZHpe2uR/DUNAgXKMcFSp11c5pUYV5nE2R dh4goSe6DCoshYc0z79u2AVGgIwqX4GKBi3eL3V1ykqjdBq+uTabm6vq3v9cZqtqBH/Q 7TX3MUaUpiInl5cBKRmU8DqYqJS0DXl2hJj5lVuV56pSuKSIjbmlcovrSCHNTSbrEvMm 099PJQx4KM936h7LRIyruhv1qOu2f8Jp6/wo403ZszQjSPeaaIy308RiU3+IXg9OLfxB Pk2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:user-agent:references:in-reply-to :subject:cc:to:from:message-id:date; bh=6bv8Drri3+6dI8YmN7z+/bLLl0hwDfupTBJoPlEbHZI=; b=f7uYzsSVog6XkHFRsSQfECuN5FoDnReWQboNRpeZzwaKlHs5GAbgTHHn7pwMWyC9Th v6cm5ZZJqWIvWVg16qf7rtjMBRLbfvGj8cGT+79bxBljzlZVizHL/zIXeRTP0cVynJIU 1TNx720pnBo3vdCGIjfkHaxYWz9AFxHLR0YwZ4WYvi2hWl196kInVLuzmuPGNV2hztUW qNtPcOPU7Ad+wDmkkcZBBTkTjb48uhM24txT10VGGhVHIub1AMf3sjBtNxvXHMFFq/F+ AQfZn+j3T/GhlqOtZ9546GPgnSdlDi5+UZS4do9vU0RHq+WbPtVmgqNl0ZYQNK9uq3Ct Jb3g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id eb13si3150609edb.385.2021.02.25.02.58.25; Thu, 25 Feb 2021 02:58:48 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233765AbhBYK5j (ORCPT + 99 others); Thu, 25 Feb 2021 05:57:39 -0500 Received: from mx2.suse.de ([195.135.220.15]:49220 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230201AbhBYK41 (ORCPT ); Thu, 25 Feb 2021 05:56:27 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 64AF2ADF0; Thu, 25 Feb 2021 10:55:44 +0000 (UTC) Date: Thu, 25 Feb 2021 11:55:44 +0100 Message-ID: From: Takashi Iwai To: Anton Yakovlev Cc: , , , "Michael S. Tsirkin" , Jaroslav Kysela , Takashi Iwai , Subject: Re: [PATCH v5 6/9] ALSA: virtio: PCM substream operators In-Reply-To: <20210222153444.348390-7-anton.yakovlev@opensynergy.com> References: <20210222153444.348390-1-anton.yakovlev@opensynergy.com> <20210222153444.348390-7-anton.yakovlev@opensynergy.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL/10.8 Emacs/25.3 (x86_64-suse-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 22 Feb 2021 16:34:41 +0100, Anton Yakovlev wrote: > +static int virtsnd_pcm_open(struct snd_pcm_substream *substream) > +{ > + struct virtio_pcm *vpcm = snd_pcm_substream_chip(substream); > + struct virtio_pcm_substream *vss = NULL; > + > + if (vpcm) { > + switch (substream->stream) { > + case SNDRV_PCM_STREAM_PLAYBACK: > + case SNDRV_PCM_STREAM_CAPTURE: { The switch() here looks superfluous. The substream->stream must be a good value in the callback. If any, you can put WARN_ON() there, but I don't think it worth. > +static int virtsnd_pcm_hw_params(struct snd_pcm_substream *substream, > + struct snd_pcm_hw_params *hw_params) > +{ .... > + return virtsnd_pcm_msg_alloc(vss, periods, period_bytes); We have the allocation, but... > +static int virtsnd_pcm_hw_free(struct snd_pcm_substream *substream) > +{ > + return 0; ... no release at hw_free()? I know that the free is present in the allocator, but it's only for re-allocation case, I suppose. thanks, Takashi