From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755329AbcBCA2g (ORCPT ); Tue, 2 Feb 2016 19:28:36 -0500 Received: from mail.kernel.org ([198.145.29.136]:46617 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752339AbcBCA2e (ORCPT ); Tue, 2 Feb 2016 19:28:34 -0500 MIME-Version: 1.0 In-Reply-To: <56B148DF.4050506@zytor.com> References: <1450217797-19295-1-git-send-email-mcgrof@do-not-panic.com> <56731D32.4040900@zytor.com> <20151217234625.GM20409@wotan.suse.de> <56738AAF.2080601@zytor.com> <56738E29.3070605@zytor.com> <56A13D42.7040500@zytor.com> <56A27DB0.4090706@zytor.com> <56B148DF.4050506@zytor.com> From: "Luis R. Rodriguez" Date: Tue, 2 Feb 2016 16:28:09 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [RFC v1 0/8] x86/init: Linux linker tables To: "H. Peter Anvin" Cc: Michael Matz , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Konrad Rzeszutek Wilk , Rusty Russell , Andy Lutomirski , Boris Ostrovsky , Michael Brown , Juergen Gross , Jan Beulich , Joerg Roedel , Andrey Ryabinin , long.wanglong@huawei.com, qiuxishi@huawei.com, aryabinin@virtuozzo.com, Mauro Carvalho Chehab , Valentin Rothberg , Peter Senna Tschudin , X86 ML , Michal Marek , "xen-devel@lists.xensource.com" , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Feb 2, 2016 at 4:25 PM, H. Peter Anvin wrote: > On 02/02/2016 04:22 PM, Luis R. Rodriguez wrote: >>> >>> Should it be possible to resuse free_init_pages() and/or >>> free_reserved_area() only for routines (members in the array in this >>> case of a struct of fns) that don't meet our subarch once we're done >>> iterating over the routies and know we can discard things we know we >>> can drop? Through a cursory glance, *I think* its possible as-is, we >>> would just need easy access to the respective start and end addresses >>> and I guess there lies the challenge. Question is, is would that be >>> clean enough for us? Or are there other things you can think of that >>> perhaps might make this prospect cleaner later to add? >>> >>> I figure better ask now for architectural purposes than later after merged. >> >> I don't think its needed we iron out in a solution *now* to be able to >> free code we know we won't need at run time but having a solid >> understanding adding this feature later without much impact to users >> might be worthy. As such I was pursuing a very basic proof of concept >> to ensure this is possible first given I didn't hear back if folks >> were sure this might be possible. I don't think a proof of concept >> should take long so just want to get fleshed out. >> > > This applies to the specific subarch use rather than generic linker > tables, right? Well both, given that for instance the kernel frees unused kernel code using the __init section, so a neat generic section solution for this perhaps in consideration for the subarch might be worthy to consider. You had also suggested perhaps the linker table could be pivoted based on the subarch at one point too, so I gave that a though. It would make the freeing much easier but for run time it wouldn't fit well into the current design yet. Luis