From 8ab2f51997db80c88d098844ad5a9af5736d1c9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Jaroszy=C5=84ski?= Date: Sun, 27 Mar 2011 19:26:28 +0200 Subject: [PATCH] [netdevice] Mark devices as open only if opening succeeds netdev_close() assumes that devices that are open are on the open_list, which wasn't true if device specific opening failed. Signed-off-by: Michael Brown --- src/net/netdevice.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/net/netdevice.c b/src/net/netdevice.c index 813823760..301738173 100644 --- a/src/net/netdevice.c +++ b/src/net/netdevice.c @@ -463,13 +463,13 @@ int netdev_open ( struct net_device *netdev ) { DBGC ( netdev, "NETDEV %s opening\n", netdev->name ); - /* Mark as opened */ - netdev->state |= NETDEV_OPEN; - /* Open the device */ if ( ( rc = netdev->op->open ( netdev ) ) != 0 ) return rc; + /* Mark as opened */ + netdev->state |= NETDEV_OPEN; + /* Add to head of open devices list */ list_add ( &netdev->open_list, &open_net_devices );