From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751924Ab3FZPBd (ORCPT ); Wed, 26 Jun 2013 11:01:33 -0400 Received: from aserp1040.oracle.com ([141.146.126.69]:47947 "EHLO aserp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751532Ab3FZPBc convert rfc822-to-8bit (ORCPT ); Wed, 26 Jun 2013 11:01:32 -0400 Date: Wed, 26 Jun 2013 11:01:16 -0400 From: Konrad Rzeszutek Wilk To: Michal Hocko , gregkh@linuxfoundation.org Cc: Linus Torvalds , Andrew Morton , Bob Liu , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Cristian =?iso-8859-1?Q?Rodr=EDguez?= Subject: Re: [PATCH] zcache: initialize module properly when zcache=FOO is given Message-ID: <20130626150116.GA6004@phenom.dumpdata.com> References: <1372258142-7019-1-git-send-email-mhocko@suse.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline In-Reply-To: <1372258142-7019-1-git-send-email-mhocko@suse.cz> User-Agent: Mutt/1.5.21 (2010-09-15) Content-Transfer-Encoding: 8BIT X-Source-IP: ucsinet22.oracle.com [156.151.31.94] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 > Signed-off-by: Michal Hocko 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 >