From nobody Mon Feb 9 11:51:29 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=philmd@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=philmd@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1620398649; cv=none; d=zohomail.com; s=zohoarc; b=Tkmv7EQeZNdeMzF0KtUanrnYzQnwnmJfzB6lRBuwjNWji6Q3CIJ9noqIg6iwKKbo8eX39vt28q36zrRrIqM/IiXcdNQR8BEVI7hekPWeuiPQHLm9qFglHyltz2VIwZTETnvI3kNPAT0rYIL3jGKanH3hYI5cih/B8lxekIIEXfs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1620398649; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=/bdOhY3sBOcIHJeoCe6CkJ1QfZvAaT12hvfPxmFulM0=; b=inqMaBp73JqX5XGgGohxXCnv5ua7seSf5zgYq5n1Z5+GDGGglGW3+pqODGjkyOSOKi/+OB6o98oRr4OXjR2Eksm8ge7decFlpdPLGaeaYB6YBJfzJ9nAvnpocf8U7oBXhzYhFkTmcYjHEztloKXl5+SUFtveIo430pnSVEZMwco= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=philmd@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1620398649383942.8997353263106; Fri, 7 May 2021 07:44:09 -0700 (PDT) Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-588-CZRjydftNKCEWaOXYfwbBg-1; Fri, 07 May 2021 10:44:06 -0400 Received: by mail-wm1-f71.google.com with SMTP id o18-20020a1ca5120000b02901333a56d46eso3990876wme.8 for ; Fri, 07 May 2021 07:44:06 -0700 (PDT) Return-Path: Return-Path: Received: from localhost.localdomain (astrasbourg-652-1-219-60.w90-40.abo.wanadoo.fr. [90.40.114.60]) by smtp.gmail.com with ESMTPSA id r5sm7924414wmh.23.2021.05.07.07.44.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 May 2021 07:44:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1620398648; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=/bdOhY3sBOcIHJeoCe6CkJ1QfZvAaT12hvfPxmFulM0=; b=RBmkarIQePHLIY2cHeYblK3Le+SfkAv/DMlfnWz3Z80p4bfKAtHk9C0ErRYKaZyZ8YGo0F FpmJVndZIkwN0Rd9LgDGpBsUoNqJ4lFKq8Ziv3sH+snifJQh7Qf9rULgip1liuMTEgsBQh qExhO4BWsLQaKm/GOMqSghWN4Tsa720= X-MC-Unique: CZRjydftNKCEWaOXYfwbBg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=/bdOhY3sBOcIHJeoCe6CkJ1QfZvAaT12hvfPxmFulM0=; b=nq4/PbYHqo5fxhxkEMuPJQWjnHQh83S7DviyTKg+GGELJlaSMOUp1hjWCHZKcbk4Xc J1kI7Uo1tsdZiH9m241nO3DMl5+/4htpjs7Cyzt/JZOOjWhpVfuP53b4QUu3mVJy09it yWkc8A6gprzg4+4Mdy+fXIe3JaG6qnSY1g9L/UMU5hFKuEZlHEpXmMJnyyky5W6icmry Sh5QDcWATx6Bkf0dzTEi4KdcS9gwHwluYPWlg2aIIR/HIozzaalZefkdrvnaDQMMacUI XQgvcudNu3UJ3GbivVKlmbpAarZE8GBaEy7AJ+dglG3nW5aIKwNB07AzIASZQ/HQLs3/ RJ0Q== X-Gm-Message-State: AOAM533dx2KD+CCbGTRHNekWwl4hjA/kMbEgvtouNfaEDAU/qn0Duy9s +MYAvRn8i/bGSG+Md7dv5Pb6jCG+aNukw7OesiQwnjugIAjOi+SZdESa3NsILR//BS3hVlJ3iEQ 02Kc2t9Hy/nknyA== X-Received: by 2002:a5d:4a51:: with SMTP id v17mr9368896wrs.259.1620398645491; Fri, 07 May 2021 07:44:05 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzAGBqHXqPnxWmUTdUgr41RWwEb2R01PCsDEiapDu7vy61qLy24zEvVbo/zgUT9ufemsXGN8A== X-Received: by 2002:a5d:4a51:: with SMTP id v17mr9368879wrs.259.1620398645319; Fri, 07 May 2021 07:44:05 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Laurent Vivier , Paolo Bonzini , qemu-ppc@nongnu.org, Peter Maydell , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Gerd Hoffmann , qemu-arm@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 10/17] audio/alsaaudio: Replace ALSA alloca() by malloc() equivalent Date: Fri, 7 May 2021 16:43:08 +0200 Message-Id: <20210507144315.1994337-11-philmd@redhat.com> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20210507144315.1994337-1-philmd@redhat.com> References: <20210507144315.1994337-1-philmd@redhat.com> MIME-Version: 1.0 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=philmd@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) The ALLOCA(3) man-page mentions its "use is discouraged". Define the cleanup functions for the snd_pcm_[hw/sw]_params_t types, and replace the ALSA alloca() calls by equivalent ALSA malloc(). Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- audio/alsaaudio.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/audio/alsaaudio.c b/audio/alsaaudio.c index fcc2f62864f..f39061ebc42 100644 --- a/audio/alsaaudio.c +++ b/audio/alsaaudio.c @@ -70,6 +70,9 @@ struct alsa_params_obt { snd_pcm_uframes_t samples; }; =20 +G_DEFINE_AUTOPTR_CLEANUP_FUNC(snd_pcm_hw_params_t, snd_pcm_hw_params_free) +G_DEFINE_AUTOPTR_CLEANUP_FUNC(snd_pcm_sw_params_t, snd_pcm_sw_params_free) + static void GCC_FMT_ATTR (2, 3) alsa_logerr (int err, const char *fmt, ...) { va_list ap; @@ -410,9 +413,9 @@ static void alsa_dump_info (struct alsa_params_req *req, static void alsa_set_threshold (snd_pcm_t *handle, snd_pcm_uframes_t thres= hold) { int err; - snd_pcm_sw_params_t *sw_params; + g_autoptr(snd_pcm_sw_params_t) sw_params =3D NULL; =20 - snd_pcm_sw_params_alloca (&sw_params); + snd_pcm_sw_params_malloc(&sw_params); =20 err =3D snd_pcm_sw_params_current (handle, sw_params); if (err < 0) { @@ -444,7 +447,7 @@ static int alsa_open(bool in, struct alsa_params_req *r= eq, AudiodevAlsaOptions *aopts =3D &dev->u.alsa; AudiodevAlsaPerDirectionOptions *apdo =3D in ? aopts->in : aopts->out; snd_pcm_t *handle; - snd_pcm_hw_params_t *hw_params; + g_autoptr(snd_pcm_hw_params_t) hw_params =3D NULL; int err; unsigned int freq, nchannels; const char *pcm_name =3D apdo->has_dev ? apdo->dev : "default"; @@ -455,7 +458,7 @@ static int alsa_open(bool in, struct alsa_params_req *r= eq, freq =3D req->freq; nchannels =3D req->nchannels; =20 - snd_pcm_hw_params_alloca (&hw_params); + snd_pcm_hw_params_malloc(&hw_params); =20 err =3D snd_pcm_open ( &handle, --=20 2.26.3