From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Thu, 17 Dec 2015 18:46:44 -0800 From: Davidlohr Bueso To: Paul Gortmaker Cc: linux-kernel@vger.kernel.org, Nadia Yvette Chambers , Alexander Viro , Andrew Morton , Naoya Horiguchi , Mike Kravetz , David Rientjes , Hillf Danton , linux-mm@kvack.org, linux-fsdevel@vger.kernel.org Subject: Re: [PATCH 1/8] hugetlb: make mm and fs code explicitly non-modular Message-ID: <20151218024644.GA17386@linux-uzut.site> References: <1450379466-23115-1-git-send-email-paul.gortmaker@windriver.com> <1450379466-23115-2-git-send-email-paul.gortmaker@windriver.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: <1450379466-23115-2-git-send-email-paul.gortmaker@windriver.com> Sender: owner-linux-mm@kvack.org List-ID: On Thu, 17 Dec 2015, Paul Gortmaker wrote: >The Kconfig currently controlling compilation of this code is: > >config HUGETLBFS > bool "HugeTLB file system support" > >...meaning that it currently is not being built as a module by anyone. > >Lets remove the modular code that is essentially orphaned, so that >when reading the driver there is no doubt it is builtin-only. > >Since module_init translates to device_initcall in the non-modular >case, the init ordering gets moved to earlier levels when we use the >more appropriate initcalls here. > >Originally I had the fs part and the mm part as separate commits, >just by happenstance of the nature of how I detected these >non-modular use cases. But that can possibly introduce regressions >if the patch merge ordering puts the fs part 1st -- as the 0-day >testing reported a splat at mount time. > >Investigating with "initcall_debug" showed that the delta was >init_hugetlbfs_fs being called _before_ hugetlb_init instead of >after. So both the fs change and the mm change are here together. > >In addition, it worked before due to luck of link order, since they >were both in the same initcall category. So we now have the fs >part using fs_initcall, and the mm part using subsys_initcall, >which puts it one bucket earlier. It now passes the basic sanity >test that failed in earlier 0-day testing. > >We delete the MODULE_LICENSE tag and capture that information at the >top of the file alongside author comments, etc. > >We don't replace module.h with init.h since the file already has that. >Also note that MODULE_ALIAS is a no-op for non-modular code. > >Cc: Nadia Yvette Chambers >Cc: Alexander Viro >Cc: Andrew Morton >Cc: Naoya Horiguchi >Cc: Mike Kravetz >Cc: David Rientjes >Cc: Hillf Danton >Cc: Davidlohr Bueso >Cc: linux-mm@kvack.org >Cc: linux-fsdevel@vger.kernel.org >Reported-by: kernel test robot >Signed-off-by: Paul Gortmaker Acked-by: Davidlohr Bueso -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org