From: Marc Zyngier <marc.zyngier@arm•com>
To: Russell King - ARM Linux <linux@armlinux•org.uk>
Cc: "Geert Uytterhoeven" <geert@linux-m68k•org>,
Oliver <oohall@gmail•com>, "Rob Landley" <rob@landley•net>,
"Shea Levy" <shea@shealevy•com>,
linux-riscv@lists•infradead.org,
"Linux Kernel Mailing List" <linux-kernel@vger•kernel.org>,
"Christoph Hellwig" <hch@infradead•org>,
"Richard Henderson" <rth@twiddle•net>,
"Ivan Kokshaysky" <ink@jurassic•park.msu.ru>,
"Matt Turner" <mattst88@gmail•com>,
"Vineet Gupta" <vgupta@synopsys•com>,
"Catalin Marinas" <catalin.marinas@arm•com>,
"Will Deacon" <will.deacon@arm•com>,
"Mark Salter" <msalter@redhat•com>,
"Aurelien Jacquiot" <jacquiot.aurelien@gmail•com>,
"Mikael Starvik" <starvik@axis•com>,
"Jesper Nilsson" <jesper.nilsson@axis•com>,
"Yoshinori Sato" <ysato@users•sourceforge.jp>,
"Richard Kuo" <rkuo@codeaurora•org>,
"Tony Luck" <tony.luck@intel•com>,
"Fenghua Yu" <fenghua.yu@intel•com>,
"James Hogan" <jhogan@kernel•org>,
"Michal Simek" <monstr@monstr•eu>,
"Ralf Baechle" <ralf@linux-mips•org>,
"David Howells" <dhowells@redhat•com>,
"Ley Foon Tan" <lftan@altera•com>,
"Jonas Bonn" <jonas@southpole•se>,
"Stefan Kristiansson" <stefan.kristiansson@saunalahti•fi>,
"Stafford Horne" <shorne@gmail•com>,
"James E.J. Bottomley" <jejb@parisc-linux•org>,
"Helge Deller" <deller@gmx•de>,
"Benjamin Herrenschmidt" <benh@kernel•crashing.org>,
"Paul Mackerras" <paulus@samba•org>,
"Michael Ellerman" <mpe@ellerman•id.au>,
"Palmer Dabbelt" <palmer@sifive•com>,
"Albert Ou" <albert@sifive•com>,
"Martin Schwidefsky" <schwidefsky@de•ibm.com>,
"Heiko Carstens" <heiko.carstens@de•ibm.com>,
"Chen Liqin" <liqin.linux@gmail•com>,
"Lennox Wu" <lennox.wu@gmail•com>,
"Rich Felker" <dalias@libc•org>,
"David S. Miller" <davem@davemloft•net>,
"Jeff Dike" <jdike@addtoit•com>,
"Richard Weinberger" <richard@nod•at>,
"Guan Xuetao" <gxt@mprc•pku.edu.cn>,
"Thomas Gleixner" <tglx@linutronix•de>,
"Ingo Molnar" <mingo@redhat•com>,
"H. Peter Anvin" <hpa@zytor•com>,
"the arch/x86 maintainers" <x86@kernel•org>,
"Chris Zankel" <chris@zankel•net>,
"Max Filippov" <jcmvbkbc@gmail•com>,
"Kate Stewart" <kstewart@linuxfoundation•org>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation•org>,
"Philippe Ombredanne" <pombredanne@nexb•com>,
"Eugeniy Paltsev" <Eugeniy.Paltsev@synopsys•com>,
"Al Viro" <viro@zeniv•linux.org.uk>,
"Vladimir Murzin" <vladimir.murzin@arm•com>,
"Linus Walleij" <linus.walleij@linaro•org>,
"Michal Hocko" <mhocko@suse•com>,
"Andrew Morton" <akpm@linux-foundation•org>,
"Sudip Mukherjee" <sudipm.mukherjee@gmail•com>,
"Rob Herring" <robh@kernel•org>,
"Kees Cook" <keescook@chromium•org>,
"Vlastimil Babka" <vbabka@suse•cz>,
"Balbir Singh" <bsingharora@gmail•com>,
"Christophe Leroy" <christophe.leroy@c-s•fr>,
"Joe Perches" <joe@perches•com>,
"Dan Williams" <dan.j.williams@intel•com>,
"Wei Yang" <richard.weiyang@gmail•com>,
"Christian König" <christian.koenig@amd•com>,
"Arnd Bergmann" <arnd@arndb•de>,
"Deepa Dinamani" <deepa.kernel@gmail•com>,
"Daniel Thompson" <daniel.thompson@linaro•org>,
"Florian Fainelli" <f.fainelli@gmail•com>,
alpha <linux-alpha@vger•kernel.org>,
arcml <linux-snps-arc@lists•infradead.org>,
"Linux ARM" <linux-arm-kernel@lists•infradead.org>,
adi-buildroot-devel@lists•sourceforge.net,
linux-c6x-dev@linux-c6x•org, Cris <linux-cris-kernel@axis•com>,
"moderated list:H8/300 ARCHITECTURE"
<uclinux-h8-devel@lists•sourceforge.jp>,
"open list:QUALCOMM HEXAGON..." <linux-hexagon@vger•kernel.org>,
linux-ia64@vger•kernel.org,
linux-m68k <linux-m68k@lists•linux-m68k.org>,
"open list:METAG ARCHITECTURE" <linux-metag@vger•kernel.org>,
"Linux MIPS Mailing List" <linux-mips@linux-mips•org>,
"moderated list:PANASONIC MN10300..."
<linux-am33-list@redhat•com>,
nios2-dev@lists•rocketboards.org,
Openrisc <openrisc@lists•librecores.org>,
"Parisc List" <linux-parisc@vger•kernel.org>,
linuxppc-dev <linuxppc-dev@lists•ozlabs.org>,
linux-s390 <linux-s390@vger•kernel.org>,
"Linux-sh list" <linux-sh@vger•kernel.org>,
sparclinux <sparclinux@vger•kernel.org>,
uml-devel <user-mode-linux-devel@lists•sourceforge.net>,
uml-user <user-mode-linux-user@lists•sourceforge.net>,
linux-xtensa@linux-xtensa•org,
"Nicholas Piggin" <npiggin@gmail•com>
Subject: Re: [PATCH] Extract initrd free logic from arch-specific code.
Date: Thu, 29 Mar 2018 17:53:14 +0100 [thread overview]
Message-ID: <86zi2qrfgl.wl-marc.zyngier@arm.com> (raw)
In-Reply-To: <20180329155827.GD16141@n2100.armlinux.org.uk>
On Thu, 29 Mar 2018 16:58:27 +0100,
Russell King - ARM Linux wrote:
>
> On Thu, Mar 29, 2018 at 05:43:47PM +0200, Geert Uytterhoeven wrote:
> > On Thu, Mar 29, 2018 at 5:27 PM, Russell King - ARM Linux
> > <linux@armlinux•org.uk> wrote:
> > > On Thu, Mar 29, 2018 at 09:37:52AM +1100, Oliver wrote:
> > >> On Thu, Mar 29, 2018 at 9:14 AM, Russell King - ARM Linux
> > >> <linux@armlinux•org.uk> wrote:
> > >> > On Wed, Mar 28, 2018 at 02:04:22PM -0500, Rob Landley wrote:
> > >> >> On 03/28/2018 11:48 AM, Russell King - ARM Linux wrote:
> > >> >> > On Wed, Mar 28, 2018 at 10:58:51AM -0500, Rob Landley wrote:
> > >> >> >> On 03/28/2018 10:26 AM, Shea Levy wrote:
> > >> >> >>> Now only those architectures that have custom initrd free requirements
> > >> >> >>> need to define free_initrd_mem.
> > >> >> >> ...
> > >> >> >>> --- a/arch/arc/mm/init.c
> > >> >> >>> +++ b/arch/arc/mm/init.c
> > >> >> >>> @@ -229,10 +229,3 @@ void __ref free_initmem(void)
> > >> >> >>> {
> > >> >> >>> free_initmem_default(-1);
> > >> >> >>> }
> > >> >> >>> -
> > >> >> >>> -#ifdef CONFIG_BLK_DEV_INITRD
> > >> >> >>> -void __init free_initrd_mem(unsigned long start, unsigned long end)
> > >> >> >>> -{
> > >> >> >>> - free_reserved_area((void *)start, (void *)end, -1, "initrd");
> > >> >> >>> -}
> > >> >> >>> -#endif
> > >> >> >>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > >> >> >>> index 3f972e83909b..19d1c5594e2d 100644
> > >> >> >>> --- a/arch/arm/Kconfig
> > >> >> >>> +++ b/arch/arm/Kconfig
> > >> >> >>> @@ -47,6 +47,7 @@ config ARM
> > >> >> >>> select HARDIRQS_SW_RESEND
> > >> >> >>> select HAVE_ARCH_AUDITSYSCALL if (AEABI && !OABI_COMPAT)
> > >> >> >>> select HAVE_ARCH_BITREVERSE if (CPU_32v7M || CPU_32v7) && !CPU_32v6
> > >> >> >>> + select HAVE_ARCH_FREE_INITRD_MEM
> > >> >> >>> select HAVE_ARCH_JUMP_LABEL if !XIP_KERNEL && !CPU_ENDIAN_BE32 && MMU
> > >> >> >>> select HAVE_ARCH_KGDB if !CPU_ENDIAN_BE32 && MMU
> > >> >> >>> select HAVE_ARCH_MMAP_RND_BITS if MMU
> > >> >> >>
> > >> >> >> Isn't this why weak symbols were invented?
> > >> >> >
> > >> >> > Weak symbols means that we end up with both the weakly-referenced code
> > >> >> > and the arch code in the kernel image. That's fine if the weak code
> > >> >> > is small.
> > >> >>
> > >> >> The kernel's been able to build with link time garbage collection since 2016:
> > >> >>
> > >> >> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b67067f1176d
> > >> >>
> > >> >> Wouldn't that remove the unused one?
> > >> >
> > >> > Probably, if anyone bothered to use that, which they don't.
> > >> >
> > >> > LD_DEAD_CODE_DATA_ELIMINATION is a symbol without a prompt, and from
> > >> > what I can see, nothing selects it. Therefore, the symbol is always
> > >> > disabled, and so the feature never gets used in mainline kernels.
> > >> >
> > >> > Brings up the obvious question - why is it there if it's completely
> > >> > unused? (Maybe to cause confusion, and allowing a justification
> > >> > for __weak ?)
> > >>
> > >> IIRC Nick had some patches to do the arch enablement for powerpc, but
> > >> I'm not sure what happened to them though. I suspect it just fell down
> > >> Nick's ever growing TODO list.
> > >
> > > I've given it a go on ARM, marking every linker-built table with KEEP()
> > > and comparing the System.map files. The resulting kernel is around
> > > 150k smaller, which seems good.
> > >
> > > However, it doesn't boot - and I don't know why. Booting the kernel
> > > under kvmtool in a VM using virtio-console, I can find no way to get
> > > any kernel messages out of it. Using lkvm debug, I can see that the
> > > PC is stuck inside die(), and that's the only information I have.
> > > It dies before bringing up the other CPUs, so it's a very early death.
> > >
> > > I don't think other console types are available under ARM64.
> >
> > earlycon?
>
> Through what - as I say above, I think the only thing that's present is
> virtio-console, and the virtio stack only get initialised much later in
> boot.
>
> Eg, there's the memory-based virtio driver which interfaces any virtio
> driver to a memory-based ring structures for communication with the host
> (drivers/virtio/virtio_mmio.c) which is initialised at module_init()
> time, and so isn't available for earlycon.
>
> I don't think merely changing the module_init() calls in the appropriate
> virtio bits will suffice - it's why I pointed out that it dies before
> SMP initialisation, which also means that it dies before we start
> running the initcalls for subsystems and drivers.
>
> I'm not aware of there being an emulated UART in the guest's address
> space, so serial based stuff doesn't work.
"earlycon=uart,mmio,0x3f8" is what you're looking for:
$ Work/kvmtool/lkvm run -c2 -k zImage -p "earlycon=uart,mmio,0x3f8" --console virtio --aarch32
# lkvm run -k zImage -m 320 -c 2 --name guest-3856
Info: Loaded kernel to 0x80008000 (6767104 bytes)
Info: Placing fdt at 0x8fe00000 - 0x8fffffff
Info: virtio-mmio.devices=0x200@0x10000:36
Info: virtio-mmio.devices=0x200@0x10200:37
Info: virtio-mmio.devices=0x200@0x10400:38
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.16.0-rc6+ (maz@approximate) (gcc version 6.3.0 20170516 (Debian 6.3.0-18)) #8407 SMP PREEMPT Tue Mar 20 15:01:43 GMT 2018
[ 0.000000] CPU: ARMv7 Processor [410fd082] revision 2 (ARMv7), cr=30c5383d
[ 0.000000] CPU: div instructions available: patching division code
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[ 0.000000] OF: fdt: Machine model: linux,dummy-virt
[ 0.000000] earlycon: uart0 at MMIO 0x00000000000003f8 (options '')
[ 0.000000] bootconsole [uart0] enabled
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] efi: Getting EFI parameters from FDT:
[ 0.000000] efi: UEFI not found.
[...]
M.
--
Jazz is not dead, it just smell funny.
next prev parent reply other threads:[~2018-03-29 16:53 UTC|newest]
Thread overview: 71+ 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 [this message]
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
[not found] ` <20180328203659.18692-1-shea@shealevy.com>
2018-03-28 20:36 ` [PATCH v4 14/16] powerpc: Use generic free_initrd_mem 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
[not found] ` <20180329113207.30674-1-shea@shealevy.com>
2018-03-29 11:32 ` [PATCH v5 14/16] powerpc: Switch to " Shea Levy
[not found] ` <20180401145931.7932-1-shea@shealevy.com>
2018-04-01 14:59 ` [PATCH v6 " Shea Levy
2018-03-30 1:43 ` [PATCH] Extract initrd free logic from arch-specific code kbuild test robot
2018-03-30 3:16 ` kbuild test robot
2018-03-30 11:15 ` Ingo Molnar
2018-04-01 15:05 ` Shea Levy
2018-04-02 5:59 ` Ingo Molnar
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=86zi2qrfgl.wl-marc.zyngier@arm.com \
--to=marc.zyngier@arm$(echo .)com \
--cc=Eugeniy.Paltsev@synopsys$(echo .)com \
--cc=adi-buildroot-devel@lists$(echo .)sourceforge.net \
--cc=akpm@linux-foundation$(echo .)org \
--cc=albert@sifive$(echo .)com \
--cc=arnd@arndb$(echo .)de \
--cc=benh@kernel$(echo .)crashing.org \
--cc=bsingharora@gmail$(echo .)com \
--cc=catalin.marinas@arm$(echo .)com \
--cc=chris@zankel$(echo .)net \
--cc=christian.koenig@amd$(echo .)com \
--cc=christophe.leroy@c-s$(echo .)fr \
--cc=dalias@libc$(echo .)org \
--cc=dan.j.williams@intel$(echo .)com \
--cc=daniel.thompson@linaro$(echo .)org \
--cc=davem@davemloft$(echo .)net \
--cc=deepa.kernel@gmail$(echo .)com \
--cc=deller@gmx$(echo .)de \
--cc=dhowells@redhat$(echo .)com \
--cc=f.fainelli@gmail$(echo .)com \
--cc=fenghua.yu@intel$(echo .)com \
--cc=geert@linux-m68k$(echo .)org \
--cc=gregkh@linuxfoundation$(echo .)org \
--cc=gxt@mprc$(echo .)pku.edu.cn \
--cc=hch@infradead$(echo .)org \
--cc=heiko.carstens@de$(echo .)ibm.com \
--cc=hpa@zytor$(echo .)com \
--cc=ink@jurassic$(echo .)park.msu.ru \
--cc=jacquiot.aurelien@gmail$(echo .)com \
--cc=jcmvbkbc@gmail$(echo .)com \
--cc=jdike@addtoit$(echo .)com \
--cc=jejb@parisc-linux$(echo .)org \
--cc=jesper.nilsson@axis$(echo .)com \
--cc=jhogan@kernel$(echo .)org \
--cc=joe@perches$(echo .)com \
--cc=jonas@southpole$(echo .)se \
--cc=keescook@chromium$(echo .)org \
--cc=kstewart@linuxfoundation$(echo .)org \
--cc=lennox.wu@gmail$(echo .)com \
--cc=lftan@altera$(echo .)com \
--cc=linus.walleij@linaro$(echo .)org \
--cc=linux-alpha@vger$(echo .)kernel.org \
--cc=linux-am33-list@redhat$(echo .)com \
--cc=linux-arm-kernel@lists$(echo .)infradead.org \
--cc=linux-c6x-dev@linux-c6x$(echo .)org \
--cc=linux-cris-kernel@axis$(echo .)com \
--cc=linux-hexagon@vger$(echo .)kernel.org \
--cc=linux-ia64@vger$(echo .)kernel.org \
--cc=linux-kernel@vger$(echo .)kernel.org \
--cc=linux-m68k@lists$(echo .)linux-m68k.org \
--cc=linux-metag@vger$(echo .)kernel.org \
--cc=linux-mips@linux-mips$(echo .)org \
--cc=linux-parisc@vger$(echo .)kernel.org \
--cc=linux-riscv@lists$(echo .)infradead.org \
--cc=linux-s390@vger$(echo .)kernel.org \
--cc=linux-sh@vger$(echo .)kernel.org \
--cc=linux-snps-arc@lists$(echo .)infradead.org \
--cc=linux-xtensa@linux-xtensa$(echo .)org \
--cc=linux@armlinux$(echo .)org.uk \
--cc=linuxppc-dev@lists$(echo .)ozlabs.org \
--cc=liqin.linux@gmail$(echo .)com \
--cc=mattst88@gmail$(echo .)com \
--cc=mhocko@suse$(echo .)com \
--cc=mingo@redhat$(echo .)com \
--cc=monstr@monstr$(echo .)eu \
--cc=mpe@ellerman$(echo .)id.au \
--cc=msalter@redhat$(echo .)com \
--cc=nios2-dev@lists$(echo .)rocketboards.org \
--cc=npiggin@gmail$(echo .)com \
--cc=oohall@gmail$(echo .)com \
--cc=openrisc@lists$(echo .)librecores.org \
--cc=palmer@sifive$(echo .)com \
--cc=paulus@samba$(echo .)org \
--cc=pombredanne@nexb$(echo .)com \
--cc=ralf@linux-mips$(echo .)org \
--cc=richard.weiyang@gmail$(echo .)com \
--cc=richard@nod$(echo .)at \
--cc=rkuo@codeaurora$(echo .)org \
--cc=rob@landley$(echo .)net \
--cc=robh@kernel$(echo .)org \
--cc=rth@twiddle$(echo .)net \
--cc=schwidefsky@de$(echo .)ibm.com \
--cc=shea@shealevy$(echo .)com \
--cc=shorne@gmail$(echo .)com \
--cc=sparclinux@vger$(echo .)kernel.org \
--cc=starvik@axis$(echo .)com \
--cc=stefan.kristiansson@saunalahti$(echo .)fi \
--cc=sudipm.mukherjee@gmail$(echo .)com \
--cc=tglx@linutronix$(echo .)de \
--cc=tony.luck@intel$(echo .)com \
--cc=uclinux-h8-devel@lists$(echo .)sourceforge.jp \
--cc=user-mode-linux-devel@lists$(echo .)sourceforge.net \
--cc=user-mode-linux-user@lists$(echo .)sourceforge.net \
--cc=vbabka@suse$(echo .)cz \
--cc=vgupta@synopsys$(echo .)com \
--cc=viro@zeniv$(echo .)linux.org.uk \
--cc=vladimir.murzin@arm$(echo .)com \
--cc=will.deacon@arm$(echo .)com \
--cc=x86@kernel$(echo .)org \
--cc=ysato@users$(echo .)sourceforge.jp \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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