From patchwork Sun Sep 20 13:26:19 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Andreas_F=C3=A4rber?= X-Patchwork-Id: 11787667 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 7961E618 for ; Sun, 20 Sep 2020 13:28:06 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 47D1020EDD for ; Sun, 20 Sep 2020 13:28:06 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="mpGkMkxJ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 47D1020EDD Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To:From: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=mAw+qy5EzOwgE4ckbz6RuNIBRQdVegBvp2+/rGT4aaw=; b=mpGkMkxJDLceNbUDmivCnKkXDZ Sdm/ormiE7xWpMaQZ7fvgMvZLzzaU8knGr0IV88twzT2VhfkgTinbgIjjHp9XheFZCKhVW8nXEAMA AubnEtSzTQeVAo55WZ444ufh4hUpgHw8zks2+Bxef8GwqyPsYXqqHOGHPWndq1gwCNFCchgKsFSPM Yhl+CXYGjp8PDXh19Eew8lNGYoYyVnU26BbuYxkAdxIc6klwYSG9UfRNZYtEQn9Cj2cp/iSTmX+f5 ggA3IoFlY2jFA/ooa/jGhA7/UTWYraSeu8z0Lkxgiqoho2MZrMg+nC0qw4XbX3A9Oa97QGIYONO8y m/kNcPyQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kJzMM-00005A-Kl; Sun, 20 Sep 2020 13:26:30 +0000 Received: from mx2.suse.de ([195.135.220.15]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kJzMJ-0008Uv-Do; Sun, 20 Sep 2020 13:26:28 +0000 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 14E0EAD32; Sun, 20 Sep 2020 13:26:59 +0000 (UTC) From: =?utf-8?q?Andreas_F=C3=A4rber?= To: Yan-Hsuan Chuang , Kalle Valo , linux-wireless@vger.kernel.org Subject: [PATCH 0/2] net: wireless: rtw88: Fix oops on probe errors Date: Sun, 20 Sep 2020 15:26:19 +0200 Message-Id: <20200920132621.26468-1-afaerber@suse.de> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200920_092627_603100_23A4A071 X-CRM114-Status: GOOD ( 11.84 ) X-Spam-Score: -2.3 (--) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-2.3 points) pts rule name description ---- ---------------------- -------------------------------------------------- -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, medium trust [195.135.220.15 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [195.135.220.15 listed in wl.mailspike.net] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-realtek-soc@lists.infradead.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andreas_F=C3=A4rber?= , Chin-Yen Lee , Jakub Kicinski , "David S . Miller" , linux-arm-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org Hello, This mini-series fixes oopses in rtw88 device probe error handling, resulting from asynchronous firmware loading. Since there does not appear to be a public kernel API for canceling scheduled or ongoing firmware loads, it seems we need to wait with teardown until rtw88's callback was invoked and signals completion. Found on RTD1296 arm64 SoC with experimental PCI host bridge driver (https://github.com/afaerber/linux/commits/rtd1295-next) with a 4K physical bar window, resulting in rtw_pci_setup_resource() failing, or with non-implemented 4K remapping resulting in rtw_pci_read32() returning 0xffffffff values and causing rtw_mac_power_on() to fail. Cheers, Andreas Andreas Färber (2): rtw88: Fix probe error handling race with firmware loading rtw88: Fix potential probe error handling race with wow firmware loading drivers/net/wireless/realtek/rtw88/main.c | 5 +++++ 1 file changed, 5 insertions(+)