Then file is not given or OpenSM cannot open it config verification
procedure is not running and as result QoS parameters still have wrong
values - OpenSM crashes later when '-Q' is used.

This addresses bug #1401.

Signed-off-by: Sasha Khapyorsky <[EMAIL PROTECTED]>
---
 opensm/include/opensm/osm_subnet.h |    1 +
 opensm/opensm/main.c               |    2 ++
 opensm/opensm/osm_subnet.c         |    8 +++++---
 3 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/opensm/include/opensm/osm_subnet.h 
b/opensm/include/opensm/osm_subnet.h
index 2bcd232..d97d5f4 100644
--- a/opensm/include/opensm/osm_subnet.h
+++ b/opensm/include/opensm/osm_subnet.h
@@ -1100,6 +1100,7 @@ int osm_subn_write_conf_file(char *file_name, IN 
osm_subn_opt_t * const p_opt);
 *      Assumes the conf file is part of the cache dir which defaults to
 *      OSM_DEFAULT_CACHE_DIR or OSM_CACHE_DIR the name is opensm.opts
 *********/
+int osm_subn_verify_config(osm_subn_opt_t * const p_opt);
 
 END_C_DECLS
 #endif                         /* _OSM_SUBNET_H_ */
diff --git a/opensm/opensm/main.c b/opensm/opensm/main.c
index 53648d6..999e92f 100644
--- a/opensm/opensm/main.c
+++ b/opensm/opensm/main.c
@@ -948,6 +948,8 @@ int main(int argc, char *argv[])
                exit(status);
        }
 
+       osm_subn_verify_config(&opt);
+
        if (vendor_debug)
                osm_vendor_set_debug(osm.p_vendor, vendor_debug);
 
diff --git a/opensm/opensm/osm_subnet.c b/opensm/opensm/osm_subnet.c
index d787fe8..c41962d 100644
--- a/opensm/opensm/osm_subnet.c
+++ b/opensm/opensm/osm_subnet.c
@@ -949,7 +949,7 @@ static void subn_verify_qos_set(osm_qos_options_t *set, 
const char *prefix,
        subn_verify_sl2vl(&set->sl2vl, prefix, dflt->sl2vl);
 }
 
-static void subn_verify_conf_file(IN osm_subn_opt_t * const p_opts)
+int osm_subn_verify_config(IN osm_subn_opt_t * const p_opts)
 {
        if (p_opts->lmc > 7) {
                log_report(" Invalid Cached Option Value:lmc = %u:"
@@ -1024,6 +1024,8 @@ static void subn_verify_conf_file(IN osm_subn_opt_t * 
const p_opts)
                    OSM_PERFMGR_DEFAULT_MAX_OUTSTANDING_QUERIES;
        }
 #endif
+
+       return 0;
 }
 
 /**********************************************************************
@@ -1285,7 +1287,7 @@ int osm_subn_parse_conf_file(char *file_name, 
osm_subn_opt_t * const p_opts)
        }
        fclose(opts_file);
 
-       subn_verify_conf_file(p_opts);
+       osm_subn_verify_config(p_opts);
 
        return 0;
 }
@@ -1340,7 +1342,7 @@ int osm_subn_rescan_conf_files(IN osm_subn_t * const 
p_subn)
        }
        fclose(opts_file);
 
-       subn_verify_conf_file(&p_subn->opt);
+       osm_subn_verify_config(&p_subn->opt);
 
        osm_parse_prefix_routes_file(p_subn);
 
-- 
1.6.0.3.517.g759a

_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to