* ----------------------------------------------------------------------
  * | Module Init and Probe        |       0x0199       |                |
  * | Mailbox commands             |       0x1206       | 0x11a5-0x11ff |
- * | Device Discovery             |       0x2134       | 0x210e-0x2116  |
- * |                             |                    | 0x211a         |
+ * | Device Discovery             |       0x2134       | 0x210e-0x2115  |
  * |                              |                    | 0x211c-0x2128  |
  * |                              |                    | 0x212c-0x2134  |
  * | Queue Command and IO tracing |       0x3074       | 0x300b         |
 
 
        fcport = qla2x00_find_fcport_by_nportid(vha, &ea->id, 1);
        if (fcport) {
+               if (fcport->flags & FCF_FCP2_DEVICE) {
+                       ql_dbg(ql_dbg_disc, vha, 0x2115,
+                              "Delaying session delete for FCP2 portid=%06x %8phC ",
+                              fcport->d_id.b24, fcport->port_name);
+                       return;
+               }
                fcport->scan_needed = 1;
                fcport->rscn_gen++;
        }
 
            "Mark all dev lost\n");
 
        list_for_each_entry(fcport, &vha->vp_fcports, list) {
+               if (fcport->loop_id != FC_NO_LOOP_ID &&
+                   (fcport->flags & FCF_FCP2_DEVICE) &&
+                   fcport->port_type == FCT_TARGET &&
+                   !qla2x00_reset_active(vha)) {
+                       ql_dbg(ql_dbg_disc, vha, 0x211a,
+                              "Delaying session delete for FCP2 flags 0x%x port_type = 0x%x port_id=%06x %phC",
+                              fcport->flags, fcport->port_type,
+                              fcport->d_id.b24, fcport->port_name);
+                       continue;
+               }
                fcport->scan_state = 0;
                qlt_schedule_sess_for_deletion(fcport);
        }