DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] proc-info: wrong sizeof argument in malloc function
@ 2017-05-09  5:23 Kuba Kozak
  2017-05-09  8:44 ` Van Haaren, Harry
  0 siblings, 1 reply; 3+ messages in thread
From: Kuba Kozak @ 2017-05-09  5:23 UTC (permalink / raw)
  To: dev; +Cc: harry.van.haaren, deepak.k.jain, michalx.k.jastrzebski, kubax.kozak

From: Michal Jastrzebski <michalx.k.jastrzebski@intel.com>

Coverity reported that an argument for sizeof was used improperly. 
We should allocate memory for value size that pointer points to,
instead of pointer size itself. 

Coverity issue: 144523, 144521
Fixes: 7ac16a3660c0 ("app/proc-info: support xstats by ID and by name")

Signed-off-by: Michal Jastrzebski <michalx.k.jastrzebski@intel.com>
---
 app/proc_info/main.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/app/proc_info/main.c b/app/proc_info/main.c
index 17a1c87..d4f6a82 100644
--- a/app/proc_info/main.c
+++ b/app/proc_info/main.c
@@ -434,7 +434,7 @@ static void collectd_resolve_cnt_type(char *cnt_type, size_t cnt_type_len,
 	int ret, i;
 	static const char *nic_stats_border = "########################";
 
-	values = malloc(sizeof(values) * len);
+	values = malloc(sizeof(*values) * len);
 	if (values == NULL) {
 		printf("Cannot allocate memory for xstats\n");
 		return;
@@ -486,7 +486,7 @@ static void collectd_resolve_cnt_type(char *cnt_type, size_t cnt_type_len,
 		printf("Cannot get xstats count\n");
 		return;
 	}
-	values = malloc(sizeof(values) * len);
+	values = malloc(sizeof(*values) * len);
 	if (values == NULL) {
 		printf("Cannot allocate memory for xstats\n");
 		return;
-- 
1.7.9.5

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

* Re: [dpdk-dev] [PATCH] proc-info: wrong sizeof argument in malloc function
  2017-05-09  5:23 [dpdk-dev] [PATCH] proc-info: wrong sizeof argument in malloc function Kuba Kozak
@ 2017-05-09  8:44 ` Van Haaren, Harry
  2017-05-10 16:50   ` Thomas Monjalon
  0 siblings, 1 reply; 3+ messages in thread
From: Van Haaren, Harry @ 2017-05-09  8:44 UTC (permalink / raw)
  To: dev, Thomas Monjalon; +Cc: Jain, Deepak K, Jastrzebski, MichalX K, Kozak, KubaX

> From: Kozak, KubaX
> Sent: Tuesday, May 9, 2017 6:23 AM
> To: dev@dpdk.org
> Cc: Van Haaren, Harry <harry.van.haaren@intel.com>; Jain, Deepak K <deepak.k.jain@intel.com>;
> Jastrzebski, MichalX K <michalx.k.jastrzebski@intel.com>; Kozak, KubaX <kubax.kozak@intel.com>
> Subject: [PATCH] proc-info: wrong sizeof argument in malloc function
> 
> From: Michal Jastrzebski <michalx.k.jastrzebski@intel.com>
> 
> Coverity reported that an argument for sizeof was used improperly.
> We should allocate memory for value size that pointer points to,
> instead of pointer size itself.
> 
> Coverity issue: 144523, 144521
> Fixes: 7ac16a3660c0 ("app/proc-info: support xstats by ID and by name")
> 
> Signed-off-by: Michal Jastrzebski <michalx.k.jastrzebski@intel.com>


Please consider merging these in 17.05, this is an important fix for 32 bit systems.

Acked-by: Harry van Haaren <harry.van.haaren@intel.com>



Details:
64 bit system: sizeof(uint64_t*) == sizeof(uint64_t)
32 bit system: sizeof(uint64_t*) != sizeof(uint64_t)

uint64_t *values;

> -	values = malloc(sizeof(values) * len);
> +	values = malloc(sizeof(*values) * len);

The change here ensures that we allocate sizeof(uint64_t) * len, instead of the incorrect sizeof(void *) * len.

Previously on 32 bit systems, only half of the memory required would be allocated.

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

* Re: [dpdk-dev] [PATCH] proc-info: wrong sizeof argument in malloc function
  2017-05-09  8:44 ` Van Haaren, Harry
@ 2017-05-10 16:50   ` Thomas Monjalon
  0 siblings, 0 replies; 3+ messages in thread
From: Thomas Monjalon @ 2017-05-10 16:50 UTC (permalink / raw)
  To: Jastrzebski, MichalX K, Kozak, KubaX
  Cc: dev, Van Haaren, Harry, Jain, Deepak K

09/05/2017 10:44, Van Haaren, Harry:
> > From: Michal Jastrzebski <michalx.k.jastrzebski@intel.com>
> > 
> > Coverity reported that an argument for sizeof was used improperly.
> > We should allocate memory for value size that pointer points to,
> > instead of pointer size itself.
> > 
> > Coverity issue: 144523, 144521
> > Fixes: 7ac16a3660c0 ("app/proc-info: support xstats by ID and by name")
> > 
> > Signed-off-by: Michal Jastrzebski <michalx.k.jastrzebski@intel.com>
> 
> 
> Please consider merging these in 17.05, this is an important fix for 32 bit systems.
> 
> Acked-by: Harry van Haaren <harry.van.haaren@intel.com>

Applied, thanks

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

end of thread, other threads:[~2017-05-10 16:50 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-09  5:23 [dpdk-dev] [PATCH] proc-info: wrong sizeof argument in malloc function Kuba Kozak
2017-05-09  8:44 ` Van Haaren, Harry
2017-05-10 16:50   ` Thomas Monjalon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).