From patchwork Thu Oct 15 08:54:58 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ursula Braun X-Patchwork-Id: 36101 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.176.167]) by ozlabs.org (Postfix) with ESMTP id EFF84B7B7E for ; Thu, 15 Oct 2009 20:10:12 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1762488AbZJOJIe (ORCPT ); Thu, 15 Oct 2009 05:08:34 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1757360AbZJOJId (ORCPT ); Thu, 15 Oct 2009 05:08:33 -0400 Received: from mtagate3.de.ibm.com ([195.212.17.163]:38927 "EHLO mtagate3.de.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756436AbZJOJI2 (ORCPT ); Thu, 15 Oct 2009 05:08:28 -0400 Received: from d12nrmr1607.megacenter.de.ibm.com (d12nrmr1607.megacenter.de.ibm.com [9.149.167.49]) by mtagate3.de.ibm.com (8.13.1/8.13.1) with ESMTP id n9F97ohq006044; Thu, 15 Oct 2009 09:07:50 GMT Received: from d12av02.megacenter.de.ibm.com (d12av02.megacenter.de.ibm.com [9.149.165.228]) by d12nrmr1607.megacenter.de.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id n9F97oWY3338472; Thu, 15 Oct 2009 11:07:50 +0200 Received: from d12av02.megacenter.de.ibm.com (loopback [127.0.0.1]) by d12av02.megacenter.de.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id n9F97o4h015926; Thu, 15 Oct 2009 11:07:50 +0200 Received: from tuxmaker.boeblingen.de.ibm.com (tuxmaker.boeblingen.de.ibm.com [9.152.85.9]) by d12av02.megacenter.de.ibm.com (8.12.11.20060308/8.12.11) with ESMTP id n9F97oor015923; Thu, 15 Oct 2009 11:07:50 +0200 Received: by tuxmaker.boeblingen.de.ibm.com (Postfix, from userid 4267) id 04688122422C; Thu, 15 Oct 2009 11:07:50 +0200 (CEST) Message-Id: <20091015090749.898475000@linux.vnet.ibm.com> User-Agent: quilt/0.47-1 Date: Thu, 15 Oct 2009 10:54:58 +0200 From: Ursula Braun To: davem@davemloft.net, netdev@vger.kernel.org, linux-s390@vger.kernel.org Cc: schwidefsky@de.ibm.com, heiko.carstens@de.ibm.com, Klaus-Dieter Wacker , Ursula Braun Subject: [patch 4/5] [PATCH] lcs: Recognize return codes of ccw_device_set_online(). References: <20091015085454.124154000@linux.vnet.ibm.com> Content-Disposition: inline; filename=611-lcs-set_online-rc.diff Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Klaus-Dieter Wacker The creation of a new lcs device requires a call to the function ccw_device_set_online() for the read and the write channel. Failure of either call should terminate the lcs device creation immediately with return code -ENODEV. Signed-off-by: Klaus-Dieter Wacker Signed-off-by: Ursula Braun --- drivers/s390/net/lcs.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff -urpN linux-2.6/drivers/s390/net/lcs.c linux-2.6-patched/drivers/s390/net/lcs.c --- linux-2.6/drivers/s390/net/lcs.c 2009-10-15 10:19:52.000000000 +0200 +++ linux-2.6-patched/drivers/s390/net/lcs.c 2009-10-15 10:19:52.000000000 +0200 @@ -2130,8 +2130,12 @@ lcs_new_device(struct ccwgroup_device *c card->write.ccwdev = ccwgdev->cdev[1]; recover_state = card->state; - ccw_device_set_online(card->read.ccwdev); - ccw_device_set_online(card->write.ccwdev); + rc = ccw_device_set_online(card->read.ccwdev); + if (rc) + goto out_err; + rc = ccw_device_set_online(card->write.ccwdev); + if (rc) + goto out_werr; LCS_DBF_TEXT(3, setup, "lcsnewdv"); @@ -2210,8 +2214,10 @@ netdev_out: return 0; out: - ccw_device_set_offline(card->read.ccwdev); ccw_device_set_offline(card->write.ccwdev); +out_werr: + ccw_device_set_offline(card->read.ccwdev); +out_err: return -ENODEV; }