From patchwork Mon Feb 20 07:38:52 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yevgeny Petrilin X-Patchwork-Id: 142137 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40360B6FA9 for ; Mon, 20 Feb 2012 18:39:17 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752282Ab2BTHjE (ORCPT ); Mon, 20 Feb 2012 02:39:04 -0500 Received: from eu1sys200aog111.obsmtp.com ([207.126.144.131]:42758 "HELO eu1sys200aog111.obsmtp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1751501Ab2BTHi7 (ORCPT ); Mon, 20 Feb 2012 02:38:59 -0500 Received: from MTLCAS02.mtl.com ([194.90.237.34]) (using TLSv1) by eu1sys200aob111.postini.com ([207.126.147.11]) with SMTP ID DSNKT0H4jswy0GUIvTLh7CQVqhWBSAHkpHxh@postini.com; Mon, 20 Feb 2012 07:38:58 UTC Received: from [10.4.45.17] (10.0.13.1) by MTLCAS02.mtl.com (10.0.8.72) with Microsoft SMTP Server id 14.2.247.3; Mon, 20 Feb 2012 09:38:52 +0200 Message-ID: <4F41F88C.3070607@mellanox.co.il> Date: Mon, 20 Feb 2012 09:38:52 +0200 From: Yevgeny Petrilin User-Agent: Thunderbird 2.0.0.17 (X11/20080914) MIME-Version: 1.0 To: CC: , , Subject: [PATCH net] mlx4_core: Do not map BF area if capability is 0 X-Originating-IP: [10.0.13.1] Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Jack Morgenstein BF can be disabled in some cases, the capability field, bf_reg_size is set to zero in this case. Don't map the BF area in this case, it would cause failures. In addition, leaving the BF area unmapped also alerts the ETH driver to not use BF. Signed-off-by: Jack Morgenstein --- drivers/net/ethernet/mellanox/mlx4/main.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/drivers/net/ethernet/mellanox/mlx4/main.c b/drivers/net/ethernet/mellanox/mlx4/main.c index 678558b..9c5fbad 100644 --- a/drivers/net/ethernet/mellanox/mlx4/main.c +++ b/drivers/net/ethernet/mellanox/mlx4/main.c @@ -986,6 +986,9 @@ static int map_bf_area(struct mlx4_dev *dev) resource_size_t bf_len; int err = 0; + if (!dev->caps.bf_reg_size) + return -ENXIO; + bf_start = pci_resource_start(dev->pdev, 2) + (dev->caps.num_uars << PAGE_SHIFT); bf_len = pci_resource_len(dev->pdev, 2) -