public inbox for linux-rdma@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] opensm/osm_db_files.c: remove bad free() call
@ 2010-09-07 14:52 Yevgeny Kliteynik
       [not found] ` <4C865190.3070904-VPRAkNaXOzVS1MOuV/RT9w@public.gmane.org>
  0 siblings, 1 reply; 3+ messages in thread
From: Yevgeny Kliteynik @ 2010-09-07 14:52 UTC (permalink / raw)
  To: Sasha Khapyorsky, Linux RDMA

p_key is a parameter, and it is char[].
It shouldn't be freed here.

Signed-off-by: Yevgeny Kliteynik <kliteyn-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
---
 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 majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] opensm/osm_db_files.c: remove bad free() call
       [not found] ` <4C865190.3070904-VPRAkNaXOzVS1MOuV/RT9w@public.gmane.org>
@ 2010-09-07 19:51   ` Sasha Khapyorsky
  2010-09-12  9:27     ` Yevgeny Kliteynik
  0 siblings, 1 reply; 3+ messages in thread
From: Sasha Khapyorsky @ 2010-09-07 19:51 UTC (permalink / raw)
  To: kliteyn-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb; +Cc: Linux RDMA

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 <kliteyn-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
> ---
>  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 majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] opensm/osm_db_files.c: remove bad free() call
  2010-09-07 19:51   ` Sasha Khapyorsky
@ 2010-09-12  9:27     ` Yevgeny Kliteynik
  0 siblings, 0 replies; 3+ messages in thread
From: Yevgeny Kliteynik @ 2010-09-12  9:27 UTC (permalink / raw)
  To: Sasha Khapyorsky; +Cc: Linux RDMA, Yevgeny Kliteynik

On 07-Sep-10 10:51 PM, Sasha Khapyorsky wrote:
> 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).

Oh, you're right. I was following the function
parameter itself and missed this part.

-- Yevgeny


> Sasha
> 
>>
>> Signed-off-by: Yevgeny Kliteynik<kliteyn-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
>> ---
>>   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 majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-09-12  9:27 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-07 14:52 [PATCH] opensm/osm_db_files.c: remove bad free() call Yevgeny Kliteynik
     [not found] ` <4C865190.3070904-VPRAkNaXOzVS1MOuV/RT9w@public.gmane.org>
2010-09-07 19:51   ` Sasha Khapyorsky
2010-09-12  9:27     ` Yevgeny Kliteynik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox