Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp2080848imu; Wed, 28 Nov 2018 22:02:22 -0800 (PST) X-Google-Smtp-Source: AFSGD/Wv/LI4JHRVKK9H99H5AY3KT2nZy4nHUw27/ZeJgC88zooS7ATPfo4X+jdI1nbfL/wI8I2b X-Received: by 2002:a63:920a:: with SMTP id o10mr151260pgd.141.1543471342431; Wed, 28 Nov 2018 22:02:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1543471342; cv=none; d=google.com; s=arc-20160816; b=r/QrgsgJsQRDqck7ID0JbgtmZhWHFdO2oO2hHzyep9x4Nsx/qIui6k4v3m8vaSX9HK VxdC+xymOB6OTYGg4fp1HmFXeBYKsBxBNORZAS+Eh2aFR+vQ9usdLICpeqeuIcB3gsGL mIPlb1Jlo5Hvbyig+QFchOr4PtXIb6cjHLFee+KWgoV/CI1mTcNXAVPzg1XaLZmoUqag 7aac8+yyWFpNT8I1/42L1xT3s1ZPot8zpstG4D/zzN6of8sNvgqIECWmz6+XAk1AuQkB 4+Y7h4x+TNSWvVgqFqdfbgILzXQdHFYg/yjA2ruvT8gGHkogq0cyYYIhUYH9VL/cWcOh XmnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=u6j7wYXtInLrx7/G+e1p2pb5qpHwwDVgUFX/2RUU+Hs=; b=F7kQ5+6d92QBa/718+7YSg5tzR6zLZaglcmn08DG3+B+dfcL0x+melMsGpCWTTFAiK EjSZs21AZQSRD0fp4e39KObkPhdAxQ+SSpwZb+VlB7I5V9vT09gpFV7TsnVmvg87AKMq 5RWYdSzBgk7T3/tbvPgKMH4kgpfVzMIaRqmlODKZ73KOEUcEyiwQnt7+noJp6LFqiA6S lu14WM9uoOZaocD9UtAW+ux2+ngTMkTALom0R57c5TCKQ2a+9UYFXKPLXcK8yE5ZSaxt AgcCRxNe8r29WpGdXzQeg7JbCqi6VXlya9EWw8PBYPNZzvTpYn5skXAl9Dui+y6map31 CXlQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Ry06Y+OR; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v5si1039898ply.74.2018.11.28.22.02.07; Wed, 28 Nov 2018 22:02:22 -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=Ry06Y+OR; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729231AbeK2RE6 (ORCPT + 99 others); Thu, 29 Nov 2018 12:04:58 -0500 Received: from mail.kernel.org ([198.145.29.99]:39856 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728013AbeK2RE5 (ORCPT ); Thu, 29 Nov 2018 12:04:57 -0500 Received: from sasha-vm.mshome.net (unknown [37.142.5.207]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 66441213A2; Thu, 29 Nov 2018 06:00:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1543471246; bh=7hpmEqVv55ABWE4GjC7XfnAzjZIF9tDpMaVuDcwSe2U=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Ry06Y+ORV9OJ5mCWcoo2wyH1Cw/CDApGXzMZWofhrgXrVa8zj/JDy7pyW2/EnUr0K MmKj9EodiUaeZH1QVwoyh9oBT1Yv6NeU95RDdkWAE27Y6iSWKhJmDDUu5mXiOY5L5T TGuD4NACHy+8mr4TU34ikTPu4uPknlYz5Bc2CrKA= From: Sasha Levin To: stable@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Thomas Falcon , "David S . Miller" , Sasha Levin , netdev@vger.kernel.org, linuxppc-dev@lists.ozlabs.org Subject: [PATCH AUTOSEL 4.19 62/68] ibmvnic: Update driver queues after change in ring size support Date: Thu, 29 Nov 2018 00:55:53 -0500 Message-Id: <20181129055559.159228-62-sashal@kernel.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20181129055559.159228-1-sashal@kernel.org> References: <20181129055559.159228-1-sashal@kernel.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Thomas Falcon [ Upstream commit 5bf032ef08e6a110edc1e3bfb3c66a208fb55125 ] During device reset, queue memory is not being updated to accommodate changes in ring buffer sizes supported by backing hardware. Track any differences in ring buffer sizes following the reset and update queue memory when possible. Signed-off-by: Thomas Falcon Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/ibm/ibmvnic.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/ibm/ibmvnic.c b/drivers/net/ethernet/ibm/ibmvnic.c index f1d4d7a1278b..5ab21a1b5444 100644 --- a/drivers/net/ethernet/ibm/ibmvnic.c +++ b/drivers/net/ethernet/ibm/ibmvnic.c @@ -1737,6 +1737,7 @@ static int do_reset(struct ibmvnic_adapter *adapter, struct ibmvnic_rwi *rwi, u32 reset_state) { u64 old_num_rx_queues, old_num_tx_queues; + u64 old_num_rx_slots, old_num_tx_slots; struct net_device *netdev = adapter->netdev; int i, rc; @@ -1748,6 +1749,8 @@ static int do_reset(struct ibmvnic_adapter *adapter, old_num_rx_queues = adapter->req_rx_queues; old_num_tx_queues = adapter->req_tx_queues; + old_num_rx_slots = adapter->req_rx_add_entries_per_subcrq; + old_num_tx_slots = adapter->req_tx_entries_per_subcrq; ibmvnic_cleanup(netdev); @@ -1810,7 +1813,11 @@ static int do_reset(struct ibmvnic_adapter *adapter, if (rc) return rc; } else if (adapter->req_rx_queues != old_num_rx_queues || - adapter->req_tx_queues != old_num_tx_queues) { + adapter->req_tx_queues != old_num_tx_queues || + adapter->req_rx_add_entries_per_subcrq != + old_num_rx_slots || + adapter->req_tx_entries_per_subcrq != + old_num_tx_slots) { release_rx_pools(adapter); release_tx_pools(adapter); release_napi(adapter); -- 2.17.1