On Wed, Jun 26, 2013 at 04:49:02PM +0200, Michal Hocko wrote: > 835f2f51 (staging: zcache: enable zcache to be built/loaded as a module) > introduced in 3.10-rc1 has introduced a bug for zcache=FOO module > parameter processing. > > zcache_comp_init return code doesn't agree with crypto_has_comp which > uses 1 for the success unlike zcache_comp_init which uses 0. This > causes module loading failure even if the given algorithm is supported: > [ 0.815330] zcache: compressor initialization failed > > Reported-by: Cristian Rodríguez <crrodriguez@xxxxxxxxxxxx> > Signed-off-by: Michal Hocko <mhocko@xxxxxxx> Looks OK to me. Cc-ing Greg. > --- > drivers/staging/zcache/zcache-main.c | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/drivers/staging/zcache/zcache-main.c b/drivers/staging/zcache/zcache-main.c > index dcceed2..0fe530b 100644 > --- a/drivers/staging/zcache/zcache-main.c > +++ b/drivers/staging/zcache/zcache-main.c > @@ -1811,10 +1811,12 @@ static int zcache_comp_init(void) > #else > if (*zcache_comp_name != '\0') { > ret = crypto_has_comp(zcache_comp_name, 0, 0); > - if (!ret) > + if (!ret) { > pr_info("zcache: %s not supported\n", > zcache_comp_name); > - goto out; > + goto out; > + } > + goto out_alloc; > } > if (!ret) > strcpy(zcache_comp_name, "lzo"); > @@ -1827,6 +1829,7 @@ static int zcache_comp_init(void) > pr_info("zcache: using %s compressor\n", zcache_comp_name); > > /* alloc percpu transforms */ > +out_alloc: > ret = 0; > zcache_comp_pcpu_tfms = alloc_percpu(struct crypto_comp *); > if (!zcache_comp_pcpu_tfms) > -- > 1.8.3.1 > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href