Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 117138
b: refs/heads/master
c: db2af14
h: refs/heads/master
v: v3
  • Loading branch information
Pekka Enberg authored and Greg Kroah-Hartman committed Oct 22, 2008
1 parent 3586206 commit 9c2cf9d
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 29 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: f55ccbf6bc5e5e857b15f51d481aa7b1cd993ae0
refs/heads/master: db2af149bd0c798ce599365ee4320dd30dda852c
36 changes: 17 additions & 19 deletions trunk/drivers/staging/echo/echo.c
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,6 @@
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/slab.h>
#define malloc(a) kmalloc((a), GFP_KERNEL)
#define free(a) kfree(a)

#include "bit_operations.h"
#include "echo.h"
Expand Down Expand Up @@ -238,27 +236,19 @@ struct oslec_state *oslec_create(int len, int adaption_mode)
{
struct oslec_state *ec;
int i;
int j;

ec = kmalloc(sizeof(*ec), GFP_KERNEL);
if (ec == NULL)
return NULL;
memset(ec, 0, sizeof(*ec));
ec = kzalloc(sizeof(*ec), GFP_KERNEL);
if (!ec)
return NULL;

ec->taps = len;
ec->log2taps = top_bit(len);
ec->curr_pos = ec->taps - 1;

for (i = 0; i < 2; i++)
{
if ((ec->fir_taps16[i] = (int16_t *) malloc((ec->taps)*sizeof(int16_t))) == NULL)
{
for (j = 0; j < i; j++)
kfree(ec->fir_taps16[j]);
kfree(ec);
return NULL;
}
memset(ec->fir_taps16[i], 0, (ec->taps)*sizeof(int16_t));
for (i = 0; i < 2; i++) {
ec->fir_taps16[i] = kcalloc(ec->taps, sizeof(int16_t), GFP_KERNEL);
if (!ec->fir_taps16[i])
goto error_oom;
}

fir16_create(&ec->fir_state,
Expand All @@ -275,8 +265,9 @@ struct oslec_state *oslec_create(int len, int adaption_mode)
ec->cng_level = 1000;
oslec_adaption_mode(ec, adaption_mode);

ec->snapshot = (int16_t*)malloc(ec->taps*sizeof(int16_t));
memset(ec->snapshot, 0, sizeof(int16_t)*ec->taps);
ec->snapshot = kcalloc(ec->taps, sizeof(int16_t), GFP_KERNEL);
if (!ec->snapshot)
goto error_oom;

ec->cond_met = 0;
ec->Pstates = 0;
Expand All @@ -288,6 +279,13 @@ struct oslec_state *oslec_create(int len, int adaption_mode)
ec->Lbgn_upper_acc = ec->Lbgn_upper << 13;

return ec;

error_oom:
for (i = 0; i < 2; i++)
kfree(ec->fir_taps16[i]);

kfree(ec);
return NULL;
}
EXPORT_SYMBOL_GPL(oslec_create);
/*- End of function --------------------------------------------------------*/
Expand Down
14 changes: 5 additions & 9 deletions trunk/drivers/staging/echo/fir.h
Original file line number Diff line number Diff line change
Expand Up @@ -117,11 +117,9 @@ static __inline__ const int16_t *fir16_create(fir16_state_t *fir,
fir->curr_pos = taps - 1;
fir->coeffs = coeffs;
#if defined(USE_MMX) || defined(USE_SSE2) || defined(__bfin__)
if ((fir->history = malloc(2*taps*sizeof(int16_t))))
memset(fir->history, 0, 2*taps*sizeof(int16_t));
fir->history = kcalloc(2*taps, sizeof(int16_t), GFP_KERNEL);
#else
if ((fir->history = (int16_t *) malloc(taps*sizeof(int16_t))))
memset(fir->history, 0, taps*sizeof(int16_t));
fir->history = kcalloc(taps, sizeof(int16_t), GFP_KERNEL);
#endif
return fir->history;
}
Expand All @@ -139,7 +137,7 @@ static __inline__ void fir16_flush(fir16_state_t *fir)

static __inline__ void fir16_free(fir16_state_t *fir)
{
free(fir->history);
kfree(fir->history);
}
/*- End of function --------------------------------------------------------*/

Expand Down Expand Up @@ -275,9 +273,7 @@ static __inline__ const int16_t *fir32_create(fir32_state_t *fir,
fir->taps = taps;
fir->curr_pos = taps - 1;
fir->coeffs = coeffs;
fir->history = (int16_t *) malloc(taps*sizeof(int16_t));
if (fir->history)
memset(fir->history, '\0', taps*sizeof(int16_t));
fir->history = kcalloc(taps, sizeof(int16_t), GFP_KERNEL);
return fir->history;
}
/*- End of function --------------------------------------------------------*/
Expand All @@ -290,7 +286,7 @@ static __inline__ void fir32_flush(fir32_state_t *fir)

static __inline__ void fir32_free(fir32_state_t *fir)
{
free(fir->history);
kfree(fir->history);
}
/*- End of function --------------------------------------------------------*/

Expand Down

0 comments on commit 9c2cf9d

Please sign in to comment.