From patchwork Wed Feb 11 10:40:12 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Takashi Sakamoto X-Patchwork-Id: 5812021 Return-Path: X-Original-To: patchwork-alsa-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 9DDEC9F30C for ; Wed, 11 Feb 2015 10:46:55 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id D7BAA2022A for ; Wed, 11 Feb 2015 10:46:54 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.kernel.org (Postfix) with ESMTP id BC3A520212 for ; Wed, 11 Feb 2015 10:46:53 +0000 (UTC) Received: by alsa0.perex.cz (Postfix, from userid 1000) id 008CD264EFA; Wed, 11 Feb 2015 11:46:52 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 Received: from alsa0.perex.cz (localhost [IPv6:::1]) by alsa0.perex.cz (Postfix) with ESMTP id 74242261AB7; Wed, 11 Feb 2015 11:43:54 +0100 (CET) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id 89F112619F7; Wed, 11 Feb 2015 11:43:50 +0100 (CET) Received: from smtp311.phy.lolipop.jp (smtp311.phy.lolipop.jp [210.157.22.79]) by alsa0.perex.cz (Postfix) with ESMTP id 8821C264FEE for ; Wed, 11 Feb 2015 11:40:21 +0100 (CET) Received: from smtp311.phy.lolipop.lan (HELO smtp311.phy.lolipop.jp) (172.17.1.11) (smtp-auth username m12129643-o-takashi, mechanism plain) by smtp311.phy.lolipop.jp (qpsmtpd/0.82) with ESMTPA; Wed, 11 Feb 2015 19:40:19 +0900 Received: from 127.0.0.1 (127.0.0.1) by smtp311.phy.lolipop.jp (LOLIPOP-Fsecure); Wed, 11 Feb 2015 19:40:13 +0900 (JST) X-Virus-Status: clean(LOLIPOP-Fsecure) From: Takashi Sakamoto To: clemens@ladisch.de, tiwai@suse.de Date: Wed, 11 Feb 2015 19:40:12 +0900 Message-Id: <1423651213-19829-5-git-send-email-o-takashi@sakamocchi.jp> X-Mailer: git-send-email 2.1.0 In-Reply-To: <1423651213-19829-1-git-send-email-o-takashi@sakamocchi.jp> References: <1423651213-19829-1-git-send-email-o-takashi@sakamocchi.jp> Cc: alsa-devel@alsa-project.org Subject: [alsa-devel] [PATCH 4/5] ALSA: control: improve returned value because of the rest X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP When a character device doesn't have enough spaces for requested number of controls or values, currently return -ENOMEM. This should be -ENOSPC (No space left on device). This commit improves this behaviour. Signed-off-by: Takashi Sakamoto --- sound/core/control.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sound/core/control.c b/sound/core/control.c index bce4730..9944d75 100644 --- a/sound/core/control.c +++ b/sound/core/control.c @@ -313,7 +313,7 @@ static int snd_ctl_find_hole(struct snd_card *card, unsigned int count) /* this situation is very unlikely */ dev_err(card->dev, "unable to allocate new control numid\n"); - return -ENOMEM; + return -ENOSPC; } return 0; } @@ -355,9 +355,9 @@ int snd_ctl_add(struct snd_card *card, struct snd_kcontrol *kcontrol) err = -EBUSY; goto error; } - if (snd_ctl_find_hole(card, kcontrol->count) < 0) { + err = snd_ctl_find_hole(card, kcontrol->count); + if (err < 0) { up_write(&card->controls_rwsem); - err = -ENOMEM; goto error; } list_add_tail(&kcontrol->list, &card->controls); @@ -422,9 +422,9 @@ int snd_ctl_replace(struct snd_card *card, struct snd_kcontrol *kcontrol, goto error; } add: - if (snd_ctl_find_hole(card, kcontrol->count) < 0) { + err = snd_ctl_find_hole(card, kcontrol->count); + if (err < 0) { up_write(&card->controls_rwsem); - ret = -ENOMEM; goto error; } list_add_tail(&kcontrol->list, &card->controls);