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 e51358f..4559e07 100644
--- a/fipvlan.c
+++ b/fipvlan.c
@@ -857,8 +857,7 @@ static 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);
@@ -872,8 +871,7 @@ static 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.8.1.4

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

Reply via email to