From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6A86DC433F5 for ; Mon, 17 Jan 2022 08:49:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232628AbiAQItw (ORCPT ); Mon, 17 Jan 2022 03:49:52 -0500 Received: from smtp-out1.suse.de ([195.135.220.28]:37618 "EHLO smtp-out1.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232571AbiAQItr (ORCPT ); Mon, 17 Jan 2022 03:49:47 -0500 Received: from relay2.suse.de (relay2.suse.de [149.44.160.134]) by smtp-out1.suse.de (Postfix) with ESMTP id 3E0C4212C5; Mon, 17 Jan 2022 08:49:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1642409386; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=x7NbE1cz3mCHoBV0xZwgaqW3n2cPIO8g7sgh5GC3ssM=; b=ouMAaen2BzJFYNRkdGsg20x77SJqWQO0U0vl6xOc4mIdOQ81bNIPfqR3aCabNaRetD2NqD SHVXvOI54Zphd/Su4DkKvxHw6eqNTBogmV8LORMfBo3OO5CMOmvRQ9R72w63e+2FxVBxWr 8Rb+pyNfcL4v9iPudqbVCwMg9PmRRRU= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1642409386; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=x7NbE1cz3mCHoBV0xZwgaqW3n2cPIO8g7sgh5GC3ssM=; b=odQbqVyMj8V20P/7VblLBVpT/8tyJ0/34fY6CrQVFpgZoh5UDh+ewIUv/2HUHSVljyr0ne TUqHV75XGuBVG1CA== Received: from alsa1.suse.de (alsa1.suse.de [10.160.4.42]) by relay2.suse.de (Postfix) with ESMTP id 278BEA3B81; Mon, 17 Jan 2022 08:49:46 +0000 (UTC) Date: Mon, 17 Jan 2022 09:49:46 +0100 Message-ID: From: Takashi Iwai To: Christophe JAILLET Cc: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Bard Liao , Ranjani Sridharan , Kai Vehmanen , Pierre-Louis Bossart , linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org, alsa-devel@alsa-project.org Subject: Re: [PATCH] ASoC: soc-pcm: use GFP_ATOMIC in dpcm_create_debugfs_state() In-Reply-To: References: 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 Sun, 16 Jan 2022 12:18:17 +0100, Christophe JAILLET wrote: > > The commit below states that dpcm_be_connect() may be called from atomic > context. It changes a GFP_KERNEL into a GFP_ATOMIC to deal with it. > > Another memory allocation is done in dpcm_create_debugfs_state() which is > called by dpcm_be_connect(). Also use GFP_ATOMIC there to be consistent > and be compliant with atomic context. > > Fixes: d8a9c6e1f676 ("ASoC: soc-pcm: use GFP_ATOMIC for dpcm structure") > Signed-off-by: Christophe JAILLET > --- > Not clear to me how dpcm_be_connect() can be called from an atomic context, > though. But better safe than sorry. I don't think this no longer valid for the very latest code. The commit b7898396f4bb dropped the spurious dpcm_lock spinlock, so the code path you touched must be always sleepable. Similarly, the commit d8a9c6e1f676 can be reverted now. thanks, Takashi > --- > sound/soc/soc-pcm.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c > index 7abfc48b26ca..1a536a2b9dc3 100644 > --- a/sound/soc/soc-pcm.c > +++ b/sound/soc/soc-pcm.c > @@ -212,7 +212,7 @@ static void dpcm_create_debugfs_state(struct snd_soc_dpcm *dpcm, int stream) > { > char *name; > > - name = kasprintf(GFP_KERNEL, "%s:%s", dpcm->be->dai_link->name, > + name = kasprintf(GFP_ATOMIC, "%s:%s", dpcm->be->dai_link->name, > stream ? "capture" : "playback"); > if (name) { > dpcm->debugfs_state = debugfs_create_dir( > -- > 2.32.0 >