From: Herbert Xu Subject: Re: [PATCH 3.11-rc1] crypto: Fix boot failure due to module dependency. Date: Sat, 20 Jul 2013 09:24:59 +1000 Message-ID: <20130719232459.GA18039@gondor.apana.org.au> References: <201307180550.BDB51536.LHMQOOOVFJFSFt@I-love.SAKURA.ne.jp> <2493652.fjZLqTL8IF@vostro.rjw.lan> <1374257329.22432.382.camel@schen9-DESK> <4295105.1txhDL4OOg@vostro.rjw.lan> <20130719231630.GC1701@kroah.com> <51E9C9E5.2060602@zytor.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Greg Kroah-Hartman , "Rafael J. Wysocki" , Tim Chen , "Rafael J. Wysocki" , Tetsuo Handa , linux-kernel@vger.kernel.org, linux-crypto@vger.kernel.org, ak , ACPI Devel Maling List To: "H. Peter Anvin" Return-path: Content-Disposition: inline In-Reply-To: <51E9C9E5.2060602@zytor.com> Sender: linux-acpi-owner@vger.kernel.org List-Id: linux-crypto.vger.kernel.org On Fri, Jul 19, 2013 at 04:21:09PM -0700, H. Peter Anvin wrote: > > The issue here seems to be the dynamic binding nature of the crypto > subsystem. When something needs crypto, it will request the appropriate > crypto module (e.g. crct10dif), which may race with detecting a specific > hardware accelerator based on CPUID or device information (e.g. > crct10dif_pclmul). > > RAID has effectively the same issue, and we just "solved" it by > compiling in all the accelerators into the top-level module. I think for crypto the simplest solution is to not do CPUID-based loading. Then crypto users will simply load the module alias which causes modprobe to load all modules providing that alias. Cheers, -- Email: Herbert Xu Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt