From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758262Ab3APDiG (ORCPT ); Tue, 15 Jan 2013 22:38:06 -0500 Received: from mail-vc0-f177.google.com ([209.85.220.177]:45554 "EHLO mail-vc0-f177.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758107Ab3APDiE (ORCPT ); Tue, 15 Jan 2013 22:38:04 -0500 MIME-Version: 1.0 In-Reply-To: <20130116032502.GN2668@htj.dyndns.org> References: <20130115183204.GE2668@htj.dyndns.org> <20130115235043.GJ2668@htj.dyndns.org> <20130116025251.GM2668@htj.dyndns.org> <20130116032502.GN2668@htj.dyndns.org> From: Linus Torvalds Date: Tue, 15 Jan 2013 19:37:42 -0800 X-Google-Sender-Auth: 8yYTcOn-Hi6vHjcHQAAJQUsFJxA Message-ID: Subject: Re: [PATCH] module, async: async_synchronize_full() on module init iff async is used To: Tejun Heo Cc: Ming Lei , Alex Riesen , Alan Stern , Jens Axboe , USB list , Linux Kernel Mailing List , Arjan van de Ven , Rusty Russell Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jan 15, 2013 at 7:25 PM, Tejun Heo wrote: > Hello, Linus. > > On Tue, Jan 15, 2013 at 07:00:31PM -0800, Linus Torvalds wrote: >> That said, maybe we could just make the rule be that you can't pick a >> default IO scheduler that is modular. > > This is definitely much more preferable but it would affect use case > where everything is built modular and the elevator is selected via > kernel param. This is way outside the usual usage and we can warn > about the new behavior but it still is an observable behavior change. > Do you think this would be okay? I do want the same user-visible semantics, so it's not some one-liner. The compiled-in elevator would be easy enough to handle in the Kconfig file (maybe we do already, I didn't even bother to check). The real problem is the "chosen_elevator" one, which is dynamic with the kernel command line. And we could handle that one by just trying to load the module early (but exactly _when_?) and then instead of looking things up by name, just keep a pointer to the default elevator around. But no, it's not just some trivial one-liner. Especially the question about "when to try to load the module that is given on the kernel command line" is not trivial. Do we require that the module is in the initrd and loadable basically immediate at boot? Do we try again after switching the root filesystem? Things like that.. > And then this warning can be added without introducing > request_module_but_dont_warn_about_being_called_from_async(). I do agree that it would be much nicer that way. Linus