Received: by 2002:a05:6a10:a852:0:0:0:0 with SMTP id d18csp2628317pxy; Mon, 3 May 2021 04:41:21 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyD3dTvNBC0NKaeWlgPg1zqUvBDauyU8KaYG20Silu5MqzkKcBgiiThYgWy3456LIHAtvz7 X-Received: by 2002:a17:906:ecf4:: with SMTP id qt20mr16271917ejb.59.1620042080801; Mon, 03 May 2021 04:41:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620042080; cv=none; d=google.com; s=arc-20160816; b=NY54IAET28VTM/oKNRH5Hvx5rWxoOIE26K7oQxVwZfjTlWgI4qnkGIZegY7ZdwoYZ4 yWJF6lZhGFOmrB9Vk9Lf46xTfqGHnzDintkc52UkrRpemx179BZeMiWYbXQGuJY6CRbR z/cJV2mK45GBsiYrYrTATdfGBpah7+w6/9GB1KAkbvoCK3sjgZYlu282R6uQlp7olqwf 6IbyqS5fWxyv6dEttmGweSQ2xKEMdi+JcnGqVukdL+wqj2tAFpeVdmFFMmV0MxtUkp6H 9JPEBzF1xfUpWAdNnMzlfOtRHmLFIXz6URjEQYHbeE9zth9lC8RdGPMiAL7lzsQGStMj qUvg== 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 :references:in-reply-to:message-id:subject:reply-to:cc:from:to :dkim-signature:date; bh=zyOHabgXsIE5zCxBrXfzGAwE7soPRVEMW3uWmAhO5Ls=; b=qrhcisPB44RMNuWezHdat5irweVy8/t7UPhUGA/uLnEVAb/DgTuoVFWEJ5j8R39xGw /lxpW7Gt7o/32rSnahDCJrmnV29QwoKF4njAjOf8NV47acVI0CALG0UhiottADblCmvg cXxG3rY+rwMocsuvs9bAZZCozowrTOWRAOp0qIhiLRCf9NGmPnPapaoh6DAyLUCVKguO KXAoNNP59kJo07276ea/L9XnvZn1gw0XQImx9LpLKM8h8PY4RXfpYvZlrAnmi3H3/Onr GeWzRGCKGWGwl7gAbTTcFazmQASliEi0SDL4eDXfLJihqxww7aIYzAnaPuw07p7wzHZF 5YwQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@protonmail.com header.s=protonmail header.b=L5xq0r+I; 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=QUARANTINE sp=QUARANTINE dis=NONE) header.from=protonmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v20si2561758edc.437.2021.05.03.04.40.55; Mon, 03 May 2021 04:41:20 -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=@protonmail.com header.s=protonmail header.b=L5xq0r+I; 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=QUARANTINE sp=QUARANTINE dis=NONE) header.from=protonmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233286AbhECLXC (ORCPT + 99 others); Mon, 3 May 2021 07:23:02 -0400 Received: from mail-41103.protonmail.ch ([185.70.41.103]:18141 "EHLO mail-41103.protonmail.ch" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229811AbhECLXB (ORCPT ); Mon, 3 May 2021 07:23:01 -0400 Received: from mail-03.mail-europe.com (mail-0301.mail-europe.com [188.165.51.139]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by mail-41103.protonmail.ch (Postfix) with ESMTPS id 4FYgYC6ZsDz4xd5p for ; Mon, 3 May 2021 11:22:07 +0000 (UTC) Authentication-Results: mail-41103.protonmail.ch; dkim=pass (1024-bit key) header.d=protonmail.com header.i=@protonmail.com header.b="L5xq0r+I" Date: Mon, 03 May 2021 11:22:01 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail; t=1620040924; bh=zyOHabgXsIE5zCxBrXfzGAwE7soPRVEMW3uWmAhO5Ls=; h=Date:To:From:Cc:Reply-To:Subject:In-Reply-To:References:From; b=L5xq0r+IAgqHklQ0B2aKyxVj1i03ZpZpkZFNmbf8Sri3Kae7B5IdvM7F2oDOted7t 2IAAbtUZLolGqO8AcesBDBRsUMmJfLIrYKCZvLPg9xiPciGBF/WfQQjGMee/nk5y2F 986HIdQVpt2EW5uNiTpqLLqeBZhTmXe7tZKoKXKE= To: Greg Kroah-Hartman From: Jari Ruusu Cc: "linux-kernel@vger.kernel.org" , "stable@vger.kernel.org" , Jiri Kosina , Kalle Valo Reply-To: Jari Ruusu Subject: Re: [PATCH 5.10 1/2] iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_gen2_enqueue_hcmd() Message-ID: In-Reply-To: References: <20210430141910.473289618@linuxfoundation.org> <20210430141910.521897363@linuxfoundation.org> <608CFF6A.4BC054A3@users.sourceforge.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-1.2 required=10.0 tests=ALL_TRUSTED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM shortcircuit=no autolearn=disabled version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on mailout.protonmail.ch Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sunday, May 2, 2021 2:03 PM, Greg Kroah-Hartman wrote: > If you could provide backported patches to those kernels you think this > is needed to, I can take them directly. Otherwise running sed isn't > always the easiest thing to do on my end :) iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_gen2_enqueue_hcmd() upstream commit e7020bb068d8be50a92f48e36b236a1a1ef9282e, backport for linux-5.4.y and linux-4.19.y (booted and ping tested) Signed-off-by: Jari Ruusu --- a/drivers/net/wireless/intel/iwlwifi/pcie/tx-gen2.c +++ b/drivers/net/wireless/intel/iwlwifi/pcie/tx-gen2.c @@ -705,6 +705,7 @@ static int iwl_pcie_gen2_enqueue_hcmd(struct iwl_trans = *trans, =09const u8 *cmddata[IWL_MAX_CMD_TBS_PER_TFD]; =09u16 cmdlen[IWL_MAX_CMD_TBS_PER_TFD]; =09struct iwl_tfh_tfd *tfd; +=09unsigned long flags2; =09copy_size =3D sizeof(struct iwl_cmd_header_wide); =09cmd_size =3D sizeof(struct iwl_cmd_header_wide); @@ -773,14 +774,14 @@ static int iwl_pcie_gen2_enqueue_hcmd(struct iwl_tran= s *trans, =09=09goto free_dup_buf; =09} -=09spin_lock_bh(&txq->lock); +=09spin_lock_irqsave(&txq->lock, flags2); =09idx =3D iwl_pcie_get_cmd_index(txq, txq->write_ptr); =09tfd =3D iwl_pcie_get_tfd(trans, txq, txq->write_ptr); =09memset(tfd, 0, sizeof(*tfd)); =09if (iwl_queue_space(trans, txq) < ((cmd->flags & CMD_ASYNC) ? 2 : 1)) { -=09=09spin_unlock_bh(&txq->lock); +=09=09spin_unlock_irqrestore(&txq->lock, flags2); =09=09IWL_ERR(trans, "No space in command queue\n"); =09=09iwl_op_mode_cmd_queue_full(trans->op_mode); @@ -915,7 +916,7 @@ static int iwl_pcie_gen2_enqueue_hcmd(struct iwl_trans = *trans, =09spin_unlock_irqrestore(&trans_pcie->reg_lock, flags); out: -=09spin_unlock_bh(&txq->lock); +=09spin_unlock_irqrestore(&txq->lock, flags2); free_dup_buf: =09if (idx < 0) =09=09kfree(dup_buf); -- Jari Ruusu=C2=A0 4096R/8132F189 12D6 4C3A DCDA 0AA4 27BD=C2=A0 ACDF F073 3C= 80 8132 F189