lkml.org 
[lkml]   [2008]   [Sep]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Distributed storage release.
On Tue, 9 Sep 2008, Evgeniy Polyakov wrote:

> I am pleased to announce new Distributed Storage (DST) project release.

Hi,

I just had another quick random look over it and found a small memory
leak in an error path, that was already present in your last post, but I
didn't notice. Also there still seem to be some non-critical style
issues, like an explicit continue at then end of a loop, but I didn't
bother to catch them this time.

Sven

> +static void *dst_crypto_thread_init(void *data)
> +{
> + struct dst_node *n = data;
> + struct dst_crypto_engine *e;
> + int err = -ENOMEM;
> +
> + e = kzalloc(sizeof(struct dst_crypto_engine), GFP_KERNEL);
> + if (!e)
> + goto err_out_exit;
> + e->src = kzalloc(sizeof(struct scatterlist) * 2 * n->max_pages,
> + GFP_KERNEL);
> + if (!e->src)
> + goto err_out_free;
> +
> + e->dst = e->src + n->max_pages;
> +
> + err = dst_crypto_engine_init(e, n);
> + if (err)
> + goto err_out_free;
> +
> + return e;
> +
> +err_out_free:
> + kfree(e->src);

You leak the memory allocated for e here.

> +err_out_exit:
> + return ERR_PTR(err);
> +}


\
 
 \ /
  Last update: 2008-09-11 01:55    [W:0.044 / U:0.116 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site