From patchwork Fri Aug 6 19:51:35 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kulikov Vasiliy X-Patchwork-Id: 61145 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 21F12B6EDD for ; Sat, 7 Aug 2010 05:51:50 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934039Ab0HFTvp (ORCPT ); Fri, 6 Aug 2010 15:51:45 -0400 Received: from mail-ey0-f174.google.com ([209.85.215.174]:64126 "EHLO mail-ey0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750969Ab0HFTvn (ORCPT ); Fri, 6 Aug 2010 15:51:43 -0400 Received: by eya25 with SMTP id 25so2921757eya.19 for ; Fri, 06 Aug 2010 12:51:42 -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=aTJzM5EAa8+GdG7GHp3oIw/ubT7Pz+iT9bPQlz2FyME=; b=eA2RlwlbjI7oy7jgnznzeIx11g58DvPBMCy6T1oeCPi0Q6YvheUbHDqOTqBR5iyYfX w+Arf3lk5rVfW1k7y5SgI+0YpFhj82ZKk663BKTiyk3tE7Q9K6WiTuzLwSfF1ZEalbde oh0MZVLY7B74CQjCfnXVLnGaiqWfIAVL88SZk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:cc:subject:date:message-id:x-mailer; b=cFBC0P/Pt1EfrIHD5bDr3uCr9uscR5RKO5Kd72wzR5s92KN3Ik8JQhwKdGisk6T6bD Kc2WyF/+Dzq56cEvajMoP6Lb56qEC0K1mnNAcovRnEAHm73uqW2926Ckd7ILfVrGjsr/ SsLFA7f98uhdOuHsy32sfnhzxaudyDaagwtgI= Received: by 10.213.29.65 with SMTP id p1mr4643313ebc.59.1281124302453; Fri, 06 Aug 2010 12:51:42 -0700 (PDT) Received: from localhost (ppp91-78-210-54.pppoe.mtu-net.ru [91.78.210.54]) by mx.google.com with ESMTPS id u9sm2894952eeh.11.2010.08.06.12.51.40 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 06 Aug 2010 12:51:41 -0700 (PDT) From: Kulikov Vasiliy To: kernel-janitors@vger.kernel.org Cc: Karsten Keil , "David S. Miller" , Alexey Dobriyan , Tilman Schmidt , Tejun Heo , netdev@vger.kernel.org Subject: [PATCH 06/18] isdn: avm: call disable_pci_device() if pci_probe() failed Date: Fri, 6 Aug 2010 23:51:35 +0400 Message-Id: <1281124297-13492-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 Driver should call disable_pci_device() if it returns from pci_probe() with error. Also it must not be called if request_region() fails as it means that somebody uses device resources and rules the device. Signed-off-by: Kulikov Vasiliy --- drivers/isdn/hardware/avm/c4.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/drivers/isdn/hardware/avm/c4.c b/drivers/isdn/hardware/avm/c4.c index 7715d32..f255001 100644 --- a/drivers/isdn/hardware/avm/c4.c +++ b/drivers/isdn/hardware/avm/c4.c @@ -1273,6 +1273,8 @@ static int __devinit c4_probe(struct pci_dev *dev, if (retval != 0) { printk(KERN_ERR "c4: no AVM-C%d at i/o %#x, irq %d detected, mem %#x\n", nr, param.port, param.irq, param.membase); + if (retval != -EBUSY) + pci_disable_device(dev); return -ENODEV; } return 0;