Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp1769711ybl; Sat, 11 Jan 2020 02:27:33 -0800 (PST) X-Google-Smtp-Source: APXvYqwZQbMsQ1QZoQZdk+JxMm7jYpZwWykPRknQIuOPSUCMuP0XJ+Gt5FzUXx9SD3gO6tABZY08 X-Received: by 2002:a9d:4805:: with SMTP id c5mr6541051otf.292.1578738453143; Sat, 11 Jan 2020 02:27:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1578738453; cv=none; d=google.com; s=arc-20160816; b=s/1KRYGqX+fSpLKR22jEIPfPCBeg18tryC6UeJqRsgpBgqZFxqr70E8Vten36S/F2l 4H82SD4pqEi3tdkcicHaT2bZaDxdKZ+IBVYnZdWo7/k6OjiduuIfcwUL20RohxYNm8qb LA4wY6BDYPfGzcXARgfHRDsJsVBOMHN5i83sbCxdmrWKnYPcIlXHibyIp99Gk2kRfmQS +ZYJsgPXEN1Pg8B8gTMu2F5iKVuLSNkktZO1bzMMDeGF1VCbomitD8jizNnJLqs7hqsa AdIQTvoC2vTsx6rTU8nONw0+udetHSuhEfrXBx2JawGZlyqWSr8BQnn9HX6TQpJbIw43 pxoA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=uSI8w68STLAk+aUx4EHnIOZDGNu90qeERsFQ3uD+jkM=; b=xGNO2VJvLpOIAVONzHF1w7xuOMO3CDlNdEVSAdwW/zTgX2gWazAWheXtmYJfnkvbkZ niIHJxDvnuSxSJcxVhUsH33Wytyp6nRT06y8dpms+ak4349lK+RkcEbKYDM3eLWATjct OAJQP34TdJx93VyvD5fvb62FCWFqXG/RY0sfStR3/wg0oEPRKvI/WCIQedwcUmsjBx+h 5k/xiUp3721yH0SDxDzooUVbyDLXnfE7bcaEcUxH25UWswU0rxLLi7w8Fxp1jeVrP+ND 8IKE4TZi0/DEFpCk5f1caZvXlGhZzc0Lt0yLXRck6v4gG89B9L3Qt2aH4VYxB0L7F6uq 8H8w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=mQWM6eWj; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b137si2776535oii.63.2020.01.11.02.27.21; Sat, 11 Jan 2020 02:27:33 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=mQWM6eWj; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731036AbgAKK0e (ORCPT + 99 others); Sat, 11 Jan 2020 05:26:34 -0500 Received: from mail.kernel.org ([198.145.29.99]:59304 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730871AbgAKK0c (ORCPT ); Sat, 11 Jan 2020 05:26:32 -0500 Received: from localhost (unknown [62.119.166.9]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 5FF992082E; Sat, 11 Jan 2020 10:26:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1578738392; bh=VILDewDdZZ57MJtd8nZfpQtoINtvKmzSvR8cAHZgqHE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=mQWM6eWj63pG4HbpN+zqvPJ6r0o3U0FDFVQzdC5VAz6BNStz8ABbEwP6G1qdYmbPZ AHXVYxG/WGliXh8GoxaiDGzXUlnalijzC9+Pm8/l6FmHQTarviHGKcYSR6k1jWq1xU YLsEMWbkz4Y/h9SJxNfckQW6rvUxlvHDiYG9OlpQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Herat Ramani , Vishal Kulkarni , Jakub Kicinski , Sasha Levin Subject: [PATCH 5.4 085/165] cxgb4: Fix kernel panic while accessing sge_info Date: Sat, 11 Jan 2020 10:50:04 +0100 Message-Id: <20200111094928.271154438@linuxfoundation.org> X-Mailer: git-send-email 2.24.1 In-Reply-To: <20200111094921.347491861@linuxfoundation.org> References: <20200111094921.347491861@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Vishal Kulkarni [ Upstream commit 479a0d1376f6d97c60871442911f1394d4446a25 ] The sge_info debugfs collects offload queue info even when offload capability is disabled and leads to panic. [ 144.139871] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 144.139874] CR2: 0000000000000000 CR3: 000000082d456005 CR4: 00000000001606e0 [ 144.139876] Call Trace: [ 144.139887] sge_queue_start+0x12/0x30 [cxgb4] [ 144.139897] seq_read+0x1d4/0x3d0 [ 144.139906] full_proxy_read+0x50/0x70 [ 144.139913] vfs_read+0x89/0x140 [ 144.139916] ksys_read+0x55/0xd0 [ 144.139924] do_syscall_64+0x5b/0x1d0 [ 144.139933] entry_SYSCALL_64_after_hwframe+0x44/0xa9 [ 144.139936] RIP: 0033:0x7f4b01493990 Fix this crash by skipping the offload queue access in sge_qinfo when offload capability is disabled Signed-off-by: Herat Ramani Signed-off-by: Vishal Kulkarni Signed-off-by: Jakub Kicinski Signed-off-by: Sasha Levin --- drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c index ae6a47dd7dc9..fb8ade9a05a9 100644 --- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c +++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c @@ -2996,6 +2996,9 @@ static int sge_queue_entries(const struct adapter *adap) int tot_uld_entries = 0; int i; + if (!is_uld(adap)) + goto lld_only; + mutex_lock(&uld_mutex); for (i = 0; i < CXGB4_TX_MAX; i++) tot_uld_entries += sge_qinfo_uld_txq_entries(adap, i); @@ -3006,6 +3009,7 @@ static int sge_queue_entries(const struct adapter *adap) } mutex_unlock(&uld_mutex); +lld_only: return DIV_ROUND_UP(adap->sge.ethqsets, 4) + tot_uld_entries + DIV_ROUND_UP(MAX_CTRL_QUEUES, 4) + 1; -- 2.20.1