From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757441AbcFAHtB (ORCPT ); Wed, 1 Jun 2016 03:49:01 -0400 Received: from mail-pf0-f195.google.com ([209.85.192.195]:35499 "EHLO mail-pf0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752036AbcFAHtA (ORCPT ); Wed, 1 Jun 2016 03:49:00 -0400 Date: Wed, 1 Jun 2016 16:48:45 +0900 From: Sergey Senozhatsky To: Minchan Kim Cc: Sergey Senozhatsky , Sergey Senozhatsky , Andrew Morton , Joonsoo Kim , linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 4/8] zram: use crypto api to check alg availability Message-ID: <20160601074845.GA491@swordfish> References: <20160531122017.2878-1-sergey.senozhatsky@gmail.com> <20160531122017.2878-5-sergey.senozhatsky@gmail.com> <20160601000304.GF19976@bbox> <20160601010707.GB461@swordfish> <20160601022708.GL19976@bbox> <20160601025236.GG461@swordfish> <20160601064709.GM19976@bbox> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160601064709.GM19976@bbox> User-Agent: Mutt/1.6.1 (2016-04-27) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On (06/01/16 15:47), Minchan Kim wrote: [..] > > so both BUILTIN and BUILT-AS-A-MODULE cases are handled at compile > > time now and we can avoid crypto_has_comp() checks for most of the > > comp_algorithm calls, except for the case when someone requests an > > out-of-tree module. > > Hmm, isn't it problem, either? > > That module was built but not installed. In that case, setting the > algorithm will be failed. IOW, we are lying to user. have you ever seen this? really, why should we even bother? if there is no requested algorithm we will fallback to LZO. and how is that different from: user enabled LZO in .config (because it's a prerequisite for zram) but forgot to install the module? do we have to "fix" this as well?... implement our own LZO compression in zram? or `cp lib/lzo/* drivers/block/zram/'? > For solving the problem, if we check it with crypto_has_comp, again, > it will load module into memory. :( this will require a *VERY* non-standard behaviour from user cat /sys/block/zram0/comp_algorithm [lzo] lz4 # um... echo 842 > /sys/block/zram0/comp_algorithm and I'm quite confident that anyone who does this actually want to init the device with the requested out-of-tree module right after `echo FOO > comp_algorithm', rather than anything else. -ss