On 17:52 Tue 07 Sep , Yevgeny Kliteynik wrote: > p_key is a parameter, and it is char[]. > It shouldn't be freed here.
I don't see this. st_delete() call: if (st_delete(p_domain_imp->p_hash, (void *)&p_key, (void *)&p_prev_val)) { ... free(p_key); ... } overwrites those value by pointers to key values stored in the hash table (then 1 is returned). Sasha > > Signed-off-by: Yevgeny Kliteynik <klit...@dev.mellanox.co.il> > --- > opensm/opensm/osm_db_files.c | 1 - > 1 files changed, 0 insertions(+), 1 deletions(-) > > diff --git a/opensm/opensm/osm_db_files.c b/opensm/opensm/osm_db_files.c > index dd9f772..c475004 100644 > --- a/opensm/opensm/osm_db_files.c > +++ b/opensm/opensm/osm_db_files.c > @@ -582,7 +582,6 @@ int osm_db_delete(IN osm_db_domain_t * p_domain, IN char > *p_key) > p_key, p_domain_imp->file_name, p_prev_val); > res = 1; > } else { > - free(p_key); > free(p_prev_val); > res = 0; > } > -- > 1.6.2.4 > -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html