From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754038AbdFSL5a (ORCPT ); Mon, 19 Jun 2017 07:57:30 -0400 Received: from smtp07.smtpout.orange.fr ([80.12.242.129]:59468 "EHLO smtp.smtpout.orange.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753845AbdFSL52 (ORCPT ); Mon, 19 Jun 2017 07:57:28 -0400 X-ME-Helo: belgarion X-ME-Auth: amFyem1pay5yb2JlcnRAb3JhbmdlLmZy X-ME-Date: Mon, 19 Jun 2017 13:57:26 +0200 X-ME-IP: 109.220.219.63 From: Robert Jarzmik To: Takashi Iwai Cc: "Dmitry Torokhov" , "Haojian Zhuang" , "Liam Girdwood" , "Mark Brown" , "Lee Jones" , "Lars-Peter Clausen" , "Charles Keepax" , "Jaroslav Kysela" , "Daniel Mack" , , , , , , Subject: Re: [PATCH v2 12/12] ASoC: Fix use-after-free at card unregistration References: <1497857229-12049-1-git-send-email-robert.jarzmik@free.fr> <1497857229-12049-13-git-send-email-robert.jarzmik@free.fr> X-URL: http://belgarath.falguerolles.org/ Date: Mon, 19 Jun 2017 13:57:20 +0200 In-Reply-To: (Takashi Iwai's message of "Mon, 19 Jun 2017 11:25:13 +0200") Message-ID: <87injstckf.fsf@belgarion.home> User-Agent: Gnus/5.130008 (Ma Gnus v0.8) Emacs/24.4 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Takashi Iwai writes: > On Mon, 19 Jun 2017 09:27:09 +0200, > Robert Jarzmik wrote: >> >> From: Takashi Iwai >> >> soc_cleanup_card_resources() call snd_card_free() at the last of its >> procedure. This turned out to lead to a use-after-free. >> PCM runtimes have been already removed via soc_remove_pcm_runtimes(), >> while it's dereferenced later in soc_pcm_free() called via >> snd_card_free(). >> >> The fix is simple: just move the snd_card_free() call to the beginning >> of the whole procedure. This also gives another benefit: it >> guarantees that all operations have been shut down before actually >> releasing the resources, which was racy until now. >> >> Reported-and-tested-by: Robert Jarzmik >> Cc: >> Signed-off-by: Takashi Iwai > > This patch must be superfluous :) Haha :) My serie shifted by one, so the very first of the serie is therefore missing, formerly "ALSA: ac97: split out the generic ac97 registers" in https://patchwork.kernel.org/patch/9398143/, and the shift triggered the inclusion of the last patch of my tree, ie. yours :) Cheers. -- Robert From mboxrd@z Thu Jan 1 00:00:00 1970 From: Robert Jarzmik Subject: Re: [PATCH v2 12/12] ASoC: Fix use-after-free at card unregistration Date: Mon, 19 Jun 2017 13:57:20 +0200 Message-ID: <87injstckf.fsf@belgarion.home> References: <1497857229-12049-1-git-send-email-robert.jarzmik@free.fr> <1497857229-12049-13-git-send-email-robert.jarzmik@free.fr> Mime-Version: 1.0 Content-Type: text/plain Return-path: In-Reply-To: (Takashi Iwai's message of "Mon, 19 Jun 2017 11:25:13 +0200") Sender: stable-owner@vger.kernel.org To: Takashi Iwai Cc: Dmitry Torokhov , Haojian Zhuang , Liam Girdwood , Mark Brown , Lee Jones , Lars-Peter Clausen , Charles Keepax , Jaroslav Kysela , Daniel Mack , alsa-devel@alsa-project.org, linux-arm-kernel@lists.infradead.org, patches@opensource.wolfsonmicro.com, linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org List-Id: linux-input@vger.kernel.org Takashi Iwai writes: > On Mon, 19 Jun 2017 09:27:09 +0200, > Robert Jarzmik wrote: >> >> From: Takashi Iwai >> >> soc_cleanup_card_resources() call snd_card_free() at the last of its >> procedure. This turned out to lead to a use-after-free. >> PCM runtimes have been already removed via soc_remove_pcm_runtimes(), >> while it's dereferenced later in soc_pcm_free() called via >> snd_card_free(). >> >> The fix is simple: just move the snd_card_free() call to the beginning >> of the whole procedure. This also gives another benefit: it >> guarantees that all operations have been shut down before actually >> releasing the resources, which was racy until now. >> >> Reported-and-tested-by: Robert Jarzmik >> Cc: >> Signed-off-by: Takashi Iwai > > This patch must be superfluous :) Haha :) My serie shifted by one, so the very first of the serie is therefore missing, formerly "ALSA: ac97: split out the generic ac97 registers" in https://patchwork.kernel.org/patch/9398143/, and the shift triggered the inclusion of the last patch of my tree, ie. yours :) Cheers. From mboxrd@z Thu Jan 1 00:00:00 1970 From: robert.jarzmik@free.fr (Robert Jarzmik) Date: Mon, 19 Jun 2017 13:57:20 +0200 Subject: [PATCH v2 12/12] ASoC: Fix use-after-free at card unregistration In-Reply-To: (Takashi Iwai's message of "Mon, 19 Jun 2017 11:25:13 +0200") References: <1497857229-12049-1-git-send-email-robert.jarzmik@free.fr> <1497857229-12049-13-git-send-email-robert.jarzmik@free.fr> Message-ID: <87injstckf.fsf@belgarion.home> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Takashi Iwai writes: > On Mon, 19 Jun 2017 09:27:09 +0200, > Robert Jarzmik wrote: >> >> From: Takashi Iwai >> >> soc_cleanup_card_resources() call snd_card_free() at the last of its >> procedure. This turned out to lead to a use-after-free. >> PCM runtimes have been already removed via soc_remove_pcm_runtimes(), >> while it's dereferenced later in soc_pcm_free() called via >> snd_card_free(). >> >> The fix is simple: just move the snd_card_free() call to the beginning >> of the whole procedure. This also gives another benefit: it >> guarantees that all operations have been shut down before actually >> releasing the resources, which was racy until now. >> >> Reported-and-tested-by: Robert Jarzmik >> Cc: >> Signed-off-by: Takashi Iwai > > This patch must be superfluous :) Haha :) My serie shifted by one, so the very first of the serie is therefore missing, formerly "ALSA: ac97: split out the generic ac97 registers" in https://patchwork.kernel.org/patch/9398143/, and the shift triggered the inclusion of the last patch of my tree, ie. yours :) Cheers. -- Robert