From patchwork Wed Jul 21 12:00:36 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kulikov Vasiliy X-Patchwork-Id: 59435 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 3F1DFB70AB for ; Wed, 21 Jul 2010 22:00:58 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755326Ab0GUMAr (ORCPT ); Wed, 21 Jul 2010 08:00:47 -0400 Received: from mail-ew0-f46.google.com ([209.85.215.46]:59930 "EHLO mail-ew0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755296Ab0GUMAp (ORCPT ); Wed, 21 Jul 2010 08:00:45 -0400 Received: by ewy23 with SMTP id 23so2148845ewy.19 for ; Wed, 21 Jul 2010 05:00:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:from:to:cc:subject:date :message-id:x-mailer; bh=wVR8TbCri5Jz+GsKeD1FF+wuEmSdu6D+FNnCmbn2uMU=; b=OW7Zqi/ABFEY+bmXELyQzYCce/wjQcz/WD9zt0cqUa/MQ6Rup2OVwc4LXBrDbACpcJ 3t/a2ourJIzKah/6LPocNnkx4ssMdwDGqmf2ZzO9kAzhujvSJqCxyXrbrsboOIURoyM1 HJbzHeKBlMPlryVVe/n50IWc3G6MvcvMBpFsk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:cc:subject:date:message-id:x-mailer; b=AW3Sc86l+sL4VtRdSTkJn0+61EOp+qkSrb+tlytJeAJmRvwhZugkOGSzigg4oj8EQh BLfldCaiQ9926QfVAncxUmq/ugdYwAkRLz16xB14vl3+BC8wQRVUNWpSu982pjTl9mfk 5QUpj6swDqMQbvh9Ht0jLBpsel09ETu4NPHKk= Received: by 10.213.31.147 with SMTP id y19mr5986838ebc.57.1279713643065; Wed, 21 Jul 2010 05:00:43 -0700 (PDT) Received: from localhost (ppp91-78-210-161.pppoe.mtu-net.ru [91.78.210.161]) by mx.google.com with ESMTPS id x54sm53247656eeh.17.2010.07.21.05.00.41 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 21 Jul 2010 05:00:42 -0700 (PDT) From: Kulikov Vasiliy To: kernel-janitors@vger.kernel.org Cc: Steffen Klassert , "David S. Miller" , Eric Dumazet , Ben Hutchings , Alexey Dobriyan , Joe Perches , netdev@vger.kernel.org Subject: [PATCH] 3c59x: handle pci_iomap() errors Date: Wed, 21 Jul 2010 16:00:36 +0400 Message-Id: <1279713638-31567-1-git-send-email-segooon@gmail.com> X-Mailer: git-send-email 1.7.0.4 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org pci_iomap() can fail, handle this case and return -ENOMEM from probe function. Signed-off-by: Kulikov Vasiliy --- drivers/net/3c59x.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/drivers/net/3c59x.c b/drivers/net/3c59x.c index 069a03f..9b137e1 100644 --- a/drivers/net/3c59x.c +++ b/drivers/net/3c59x.c @@ -1020,6 +1020,11 @@ static int __devinit vortex_init_one(struct pci_dev *pdev, ioaddr = pci_iomap(pdev, pci_bar, 0); if (!ioaddr) /* If mapping fails, fall-back to BAR 0... */ ioaddr = pci_iomap(pdev, 0, 0); + if (!ioaddr) { + pci_disable_device(pdev); + rc = -ENOMEM; + goto out; + } rc = vortex_probe1(&pdev->dev, ioaddr, pdev->irq, ent->driver_data, unit);