From: Shea Levy <shea@shealevy.com>
To: Palmer Dabbelt <palmer@sifive.com>, Arnd Bergmann <arnd@arndb.de>,
Olof Johansson <olof@lixom.net>
Cc: linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v6 01/16] initrd: Add weakly-linked generic free_initrd_mem.
Date: Wed, 09 May 2018 07:15:24 -0400 [thread overview]
Message-ID: <8736z1hygj.fsf@xps13.shealevy.com> (raw)
In-Reply-To: <87muxx1oim.fsf@xps13.shealevy.com>
[-- Attachment #1: Type: text/plain, Size: 3444 bytes --]
Hi all,
Shea Levy <shea@shealevy.com> writes:
> Hi Palmer,
>
> Palmer Dabbelt <palmer@sifive.com> writes:
>
>> On Wed, 18 Apr 2018 04:10:16 PDT (-0700), shea@shealevy.com wrote:
>>> Hi all,
>>>
>>> Shea Levy <shea@shealevy.com> writes:
>>>
>>>> This function is effectively identical across 14 architectures, and
>>>> the generic implementation is small enough to be negligible in the
>>>> architectures that do override it. Many of the remaining divergent
>>>> implementations can be included in the common code path in future,
>>>> further reducing code duplication and sharing improvements between
>>>> architectures.
>>>>
>>>> Series boot-tested on RISC-V (which now uses the generic
>>>> implementation) and x86_64 (which doesn't).
>>>>
>>>> v6: Add information about build/run testing.
>>>> v5: Add more complete commit messages.
>>>> v4: Use weak symbols instead of Kconfig.
>>>> v3: Make the generic path opt-out instead of opt-in.
>>>> v2: Mark generic free_initrd_mem __init.
>>>>
>>>> Signed-off-by: Shea Levy <shea@shealevy.com>
>>>> ---
>>>> init/initramfs.c | 5 +++++
>>>> 1 file changed, 5 insertions(+)
>>>>
>>>> diff --git a/init/initramfs.c b/init/initramfs.c
>>>> index 7e99a0038942..c8fe150f958a 100644
>>>> --- a/init/initramfs.c
>>>> +++ b/init/initramfs.c
>>>> @@ -526,6 +526,11 @@ extern unsigned long __initramfs_size;
>>>> #include <linux/initrd.h>
>>>> #include <linux/kexec.h>
>>>>
>>>> +void __init __weak free_initrd_mem(unsigned long start, unsigned long end)
>>>> +{
>>>> + free_reserved_area((void *)start, (void *)end, -1, "initrd");
>>>> +}
>>>> +
>>>> static void __init free_initrd(void)
>>>> {
>>>> #ifdef CONFIG_KEXEC_CORE
>>>> --
>>>> 2.16.2
>>>
>>> This series has been quiet for a few weeks other than picking up some
>>> arch-specific acks. What is the next step here?
>>
>> I'm not sure. I don't really think it's sane for the RISC-V tree because it
>> touches so many architectures -- I haven't looked closely, though.
>
> Yeah, I think that makes sense.
>
>> IIRC
>> there's a slight behavior change to the RISC-V port, which I'd be OK taking
>> through my tree (and then obviously the RISC-V cleanup as well, unless it goes
>> in as a whole patch set).
>>
>
> So currently the behavior for RISC-V is changed by simply deleting the
> arch-specific free_initrd_mem, which was a noop. Would you like me to
> first submit a patch to have the arch-specific free_initrd_mem and then
> change that in this series?
>
>>
>> For the IRQ cleanup I currently have in flight
>>
>> * Add the generic support
>> * Move every arch over (RISC-V is in, the rest aren't yet)
>> * Clean up a bit now that everyone is generic
>>
>> That lets all the arch-specific patches go in parallel, but can be a bit of a
>> headache to manage.
>
> With the current series, the first patch could go in on its own and all
> of the arch-specific patches can go in in parallel if we wanted to, but
> beyond the above-suggested implementation of the RISC-V free_initrd_mem
> there's no real reordering meaningful here.
>
>>
>> I'm adding Arnd and Olof, as they know a lot more about Linux than I do.
>> Here's the top-level of the v4 patch set: https://lkml.org/lkml/2018/3/28/744
>
> And here's the top-level of v6, the latest: https://lkml.org/lkml/2018/4/1/50
What's the right next step here?
Thanks,
Shea
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
next prev parent reply other threads:[~2018-05-09 11:15 UTC|newest]
Thread overview: 128+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-24 17:44 [PATCH 00/16] Generic infrastructure for unloading initramfs Shea Levy
2018-03-24 17:44 ` [PATCH 01/16] initrd: Add generic code path for common initrd unloading logic Shea Levy
2018-03-25 17:17 ` LEROY Christophe
2018-03-25 22:20 ` Shea Levy
2018-03-28 12:04 ` Christoph Hellwig
2018-03-28 12:23 ` Geert Uytterhoeven
2018-03-24 17:44 ` [PATCH 02/16] riscv: Use INITRAMFS_GENERIC_UNLOAD Shea Levy
2018-03-24 17:44 ` [PATCH 03/16] alpha: " Shea Levy
2018-03-24 17:44 ` [PATCH 04/16] arc: " Shea Levy
2018-03-24 17:44 ` [PATCH 05/16] c6x: " Shea Levy
2018-03-24 17:44 ` [PATCH 06/16] frv: " Shea Levy
2018-03-24 17:44 ` [PATCH 07/16] h8300: " Shea Levy
2018-03-24 17:44 ` [PATCH 08/16] m32r: " Shea Levy
2018-03-24 17:44 ` [PATCH 09/16] m68k: " Shea Levy
2018-03-24 17:44 ` [PATCH 10/16] microblaze: " Shea Levy
2018-03-24 17:44 ` [PATCH 11/16] nios2: " Shea Levy
2018-03-24 17:44 ` [PATCH 12/16] openrisc: " Shea Levy
2018-03-24 17:44 ` [PATCH 13/16] parisc: " Shea Levy
2018-03-24 17:44 ` [PATCH 14/16] powerpc: " Shea Levy
2018-03-24 17:44 ` [PATCH 15/16] sh: " Shea Levy
2018-03-24 17:44 ` [PATCH 16/16] um: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 00/16] Generic infrastructure for unloading initramfs Shea Levy
2018-03-25 22:18 ` [PATCH v2 01/16] initrd: Add generic code path for common initrd unloading logic Shea Levy
2018-03-25 22:18 ` [PATCH v2 02/16] riscv: Use INITRAMFS_GENERIC_UNLOAD Shea Levy
2018-03-26 0:41 ` Palmer Dabbelt
2018-03-26 0:55 ` Shea Levy
2018-03-25 22:18 ` [PATCH v2 03/16] alpha: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 04/16] arc: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 05/16] c6x: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 06/16] frv: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 07/16] h8300: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 08/16] m32r: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 09/16] m68k: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 10/16] microblaze: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 11/16] nios2: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 12/16] openrisc: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 13/16] parisc: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 14/16] powerpc: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 15/16] sh: " Shea Levy
2018-03-25 22:18 ` [PATCH v2 16/16] um: " Shea Levy
2018-03-28 15:26 ` [PATCH] Extract initrd free logic from arch-specific code Shea Levy
2018-03-28 15:58 ` Rob Landley
2018-03-28 16:04 ` Shea Levy
2018-03-28 16:48 ` Russell King - ARM Linux
2018-03-28 19:04 ` Rob Landley
2018-03-28 22:14 ` Russell King - ARM Linux
2018-03-28 22:37 ` Oliver
2018-03-29 0:23 ` Nicholas Piggin
2018-03-29 15:27 ` Russell King - ARM Linux
2018-03-29 15:43 ` Geert Uytterhoeven
2018-03-29 15:58 ` Russell King - ARM Linux
2018-03-29 16:53 ` Marc Zyngier
2018-03-29 17:32 ` Russell King - ARM Linux
2018-03-29 17:53 ` Marc Zyngier
2018-03-29 17:43 ` Rob Landley
2018-03-29 16:39 ` Rob Landley
2018-03-29 17:31 ` Russell King - ARM Linux
2018-03-28 16:55 ` Kees Cook
2018-03-29 1:12 ` Wei Yang
2018-03-28 20:36 ` [PATCH v4 0/16] Generic initrd_free_mem Shea Levy
2018-03-28 20:36 ` [PATCH v4 01/16] initrd: Add weakly-linked generic free_initrd_mem Shea Levy
2018-03-28 20:36 ` [PATCH v4 02/16] riscv: Use " Shea Levy
2018-03-29 9:52 ` Daniel Thompson
2018-03-29 11:12 ` Shea Levy
2018-03-28 20:36 ` [PATCH v4 03/16] alpha: " Shea Levy
2018-03-28 20:36 ` [PATCH v4 04/16] arc: " Shea Levy
2018-03-28 20:36 ` [PATCH v4 05/16] c6x: " Shea Levy
2018-03-28 20:36 ` [PATCH v4 06/16] frv: " Shea Levy
2018-03-28 20:36 ` [PATCH v4 07/16] h8300: " Shea Levy
2018-03-28 20:36 ` [PATCH v4 08/16] m32r: " Shea Levy
2018-03-28 20:36 ` [PATCH v4 09/16] m68k: " Shea Levy
2018-03-29 6:55 ` Geert Uytterhoeven
2018-03-28 20:36 ` [PATCH v4 10/16] microblaze: " Shea Levy
2018-03-28 20:36 ` [PATCH v4 11/16] nios2: " Shea Levy
2018-03-28 20:36 ` [PATCH v4 12/16] openrisc: " Shea Levy
2018-03-28 20:36 ` [PATCH v4 13/16] parisc: " Shea Levy
2018-03-28 20:36 ` [PATCH v4 14/16] powerpc: " Shea Levy
2018-03-28 20:44 ` Joe Perches
2018-03-28 20:53 ` Shea Levy
2018-03-29 13:19 ` Michael Ellerman
2018-04-01 15:01 ` Shea Levy
2018-03-28 20:36 ` [PATCH v4 15/16] sh: " Shea Levy
2018-03-28 20:36 ` [PATCH v4 16/16] um: " Shea Levy
2018-03-29 11:31 ` [PATCH v5 01/16] initrd: Add weakly-linked " Shea Levy
2018-03-29 11:31 ` [PATCH v5 02/16] riscv: Free initrds with " Shea Levy
2018-03-29 11:31 ` [PATCH v5 03/16] alpha: Switch to " Shea Levy
2018-03-29 11:31 ` [PATCH v5 04/16] arc: " Shea Levy
2018-03-29 11:31 ` [PATCH v5 05/16] c6x: " Shea Levy
2018-03-29 11:31 ` [PATCH v5 06/16] frv: " Shea Levy
2018-03-29 11:31 ` [PATCH v5 07/16] h8300: " Shea Levy
2018-03-29 11:31 ` [PATCH v5 08/16] m32r: " Shea Levy
2018-03-29 11:32 ` [PATCH v5 09/16] m68k: " Shea Levy
2018-03-29 11:32 ` [PATCH v5 10/16] microblaze: " Shea Levy
2018-03-29 11:32 ` [PATCH v5 11/16] nios2: " Shea Levy
2018-03-29 11:32 ` [PATCH v5 12/16] openrisc: " Shea Levy
2018-03-29 11:50 ` Stafford Horne
2018-03-29 11:32 ` [PATCH v5 13/16] parisc: " Shea Levy
2018-03-29 11:32 ` [PATCH v5 14/16] powerpc: " Shea Levy
2018-03-29 11:32 ` [PATCH v5 15/16] sh: " Shea Levy
2018-03-29 16:26 ` Rich Felker
2018-03-29 11:32 ` [PATCH v5 16/16] um: " Shea Levy
2018-04-01 14:59 ` [PATCH v6 01/16] initrd: Add weakly-linked " Shea Levy
2018-04-01 14:59 ` [PATCH v6 02/16] riscv: Free initrds with " Shea Levy
2018-04-01 14:59 ` [PATCH v6 03/16] alpha: Switch to " Shea Levy
2018-04-01 14:59 ` [PATCH v6 04/16] arc: " Shea Levy
2018-04-04 15:21 ` Alexey Brodkin
2018-04-09 16:40 ` Vineet Gupta
2018-04-01 14:59 ` [PATCH v6 05/16] c6x: " Shea Levy
2018-04-19 16:37 ` Mark Salter
2018-04-01 14:59 ` [PATCH v6 06/16] frv: " Shea Levy
2018-04-01 14:59 ` [PATCH v6 07/16] h8300: " Shea Levy
2018-04-01 14:59 ` [PATCH v6 08/16] m32r: " Shea Levy
2018-04-01 14:59 ` [PATCH v6 09/16] m68k: " Shea Levy
2018-04-01 14:59 ` [PATCH v6 10/16] microblaze: " Shea Levy
2018-04-01 14:59 ` [PATCH v6 11/16] nios2: " Shea Levy
2018-04-02 16:04 ` Ley Foon Tan
2018-04-01 14:59 ` [PATCH v6 12/16] openrisc: " Shea Levy
2018-04-01 14:59 ` [PATCH v6 13/16] parisc: " Shea Levy
2018-04-02 20:07 ` Helge Deller
2018-04-01 14:59 ` [PATCH v6 14/16] powerpc: " Shea Levy
2018-04-01 14:59 ` [PATCH v6 15/16] sh: " Shea Levy
2018-04-01 14:59 ` [PATCH v6 16/16] um: " Shea Levy
2018-04-18 11:10 ` [PATCH v6 01/16] initrd: Add weakly-linked " Shea Levy
2018-04-20 20:22 ` Palmer Dabbelt
2018-04-20 22:50 ` Shea Levy
2018-05-09 11:15 ` Shea Levy [this message]
2018-03-30 11:15 ` [PATCH] Extract initrd free logic from arch-specific code Ingo Molnar
2018-04-01 15:05 ` Shea Levy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8736z1hygj.fsf@xps13.shealevy.com \
--to=shea@shealevy.com \
--cc=arnd@arndb.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=olof@lixom.net \
--cc=palmer@sifive.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).