Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp3402654pxf; Mon, 22 Mar 2021 05:45:58 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwU0RI2E2k39KIPVXCBRr+azuzGwtraLymQ0nxE5TL/1Q5TkvCdOBtzXBwPCWX20ft7KaOR X-Received: by 2002:a05:6402:270c:: with SMTP id y12mr25801140edd.284.1616417064186; Mon, 22 Mar 2021 05:44:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1616417064; cv=none; d=google.com; s=arc-20160816; b=nvvPXrCCQwmTTEPqcfyQrxct8yJOUm9P6uV5UBKevX//5KKYsbn+beZdAbQXrhCucV /zLg6QmNZtl30nSboniYBbnXARNR7/OsdzCM5tGDazsvF5gDDMTc1Mv7IAb6GxmgU9Wn lpsJBcRTQ/32iLedPTt9hrA5Wu2VuGxSQvDM/UK2JyCnAedn/Ha7fl1Bs/XrtXRnAdau DM+N8Kjow1cvV0rYwexcoLCb2EU/nMCFu6XONMmyrRgUTKykBaKOhP9yJ70vL4HBKO5Z 04KZ8vnc8p8TBg6/gOOD/3HBr27BdZ6YDa560eKKVSEGeVIHTBSNikSpVvS3zm7zeTVd mTZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=g7jmMh7JZ4s9tcykHf2g+eRC+0K8RKIP6bjtcobe+ng=; b=YCRHj8jOifJWijMwnZOssKYLFrNdxzQqkrItKIRDM44vZ3BJUZFY5VDTqWZ/025SzX hsM41ue1wtxnyVPw7fI8IkcS3LSm6sMdsflD4aoFyyDld7/V1T+Iu+Jnm0IoJOJCWOVR QxLSVN/uEYpWUKnm+WgrhRWZsz1P0Cje/Mpkct+0ZTaqiHUJe+vCHL0OFJGPol06nzTY 4TAU7Kn/hG/GYPepW9nrweJgondBuru8/IVymnW/lkHP1W7snwXEaOawBaWw92R7ZNyp l85o9ReLWaDGAntQwtpDhFVe3L5SiO2Vehm9riGoOKu9UFCpq2yPMDC0Vtvke9qZ9Ibm Gfig== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=TnPGAica; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id br23si10985075ejb.740.2021.03.22.05.44.01; Mon, 22 Mar 2021 05:44:24 -0700 (PDT) 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; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=TnPGAica; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232256AbhCVMmJ (ORCPT + 99 others); Mon, 22 Mar 2021 08:42:09 -0400 Received: from mail.kernel.org ([198.145.29.99]:56314 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231547AbhCVMgL (ORCPT ); Mon, 22 Mar 2021 08:36:11 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id DADD7619B5; Mon, 22 Mar 2021 12:35:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1616416554; bh=xZu6JDWX9k+gSFeNcr4FNlfdCMrATCvuMPzSeaHEff4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=TnPGAicaz7qAh4RKVdl5DXZtSu3bkcfVv9rcKuPMnyhM0rMGqaAxsCP5dX6+4lKV1 5vWm2Je4k1RRKND/0KYkAR4+zXePp4K4HvP2OEuu+XWIghsanB/JR8ifRAYU681o3r Rf6LrQ2+ZVesdOYlhIfy6IIJLkdLftzjdobN07YI= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Takashi Sakamoto , Takashi Iwai Subject: [PATCH 5.10 004/157] ALSA: dice: fix null pointer dereference when node is disconnected Date: Mon, 22 Mar 2021 13:26:01 +0100 Message-Id: <20210322121933.900566510@linuxfoundation.org> X-Mailer: git-send-email 2.31.0 In-Reply-To: <20210322121933.746237845@linuxfoundation.org> References: <20210322121933.746237845@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Takashi Sakamoto commit dd7b836d6bc935df95c826f69ff4d051f5561604 upstream. When node is removed from IEEE 1394 bus, any transaction fails to the node. In the case, ALSA dice driver doesn't stop isochronous contexts even if they are running. As a result, null pointer dereference occurs in callback from the running context. This commit fixes the bug to release isochronous contexts always. Cc: # v5.4 or later Fixes: e9f21129b8d8 ("ALSA: dice: support AMDTP domain") Signed-off-by: Takashi Sakamoto Link: https://lore.kernel.org/r/20210312093407.23437-1-o-takashi@sakamocchi.jp Signed-off-by: Takashi Iwai Signed-off-by: Greg Kroah-Hartman --- sound/firewire/dice/dice-stream.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) --- a/sound/firewire/dice/dice-stream.c +++ b/sound/firewire/dice/dice-stream.c @@ -493,11 +493,10 @@ void snd_dice_stream_stop_duplex(struct struct reg_params tx_params, rx_params; if (dice->substreams_counter == 0) { - if (get_register_params(dice, &tx_params, &rx_params) >= 0) { - amdtp_domain_stop(&dice->domain); + if (get_register_params(dice, &tx_params, &rx_params) >= 0) finish_session(dice, &tx_params, &rx_params); - } + amdtp_domain_stop(&dice->domain); release_resources(dice); } }