Instead of having to check the individual stages we can
easier just check if any vlans are created. Vlans are
only created if the user specified '--create', so if
no VLANs are created either the user has not specified
it or some error occured along the line. In either case
we can shutdown the interface.

Signed-off-by: Hannes Reinecke <[email protected]>
---
 fipvlan.c |    6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/fipvlan.c b/fipvlan.c
index cb313df..3c786fe 100644
--- a/fipvlan.c
+++ b/fipvlan.c
@@ -725,8 +725,7 @@ void cleanup_interfaces(void)
 
        if (config.automode) {
                TAILQ_FOREACH(iff, &interfaces, list_node) {
-                       if (iff->linkup_sent &&
-                           (!iff->running || !iff->req_sent || 
!iff->resp_recv)) {
+                       if (iff->linkup_sent && TAILQ_EMPTY(&iff->vlans)) {
                                FIP_LOG_DBG("shutdown if %d",
                                            iff->ifindex);
                                rtnl_set_iff_down(iff->ifindex, NULL);
@@ -740,8 +739,7 @@ void cleanup_interfaces(void)
                                skipped++;
                                continue;
                        }
-                       if (iff->linkup_sent &&
-                           (!iff->running || !iff->req_sent || 
!iff->resp_recv)) {
+                       if (iff->linkup_sent && TAILQ_EMPTY(&iff->vlans)) {
                                FIP_LOG_DBG("shutdown if %d",
                                            iff->ifindex);
                                rtnl_set_iff_down(iff->ifindex, NULL);
-- 
1.7.10.4

_______________________________________________
fcoe-devel mailing list
[email protected]
http://lists.open-fcoe.org/mailman/listinfo/fcoe-devel

Reply via email to