Message ID | 20190610212015.9157-16-hch@lst.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [01/15] binfmt_flat: remove flat_reloc_valid | expand |
On 6/10/19 10:20 PM, Christoph Hellwig wrote: > Use the generic support with arguments are on the stack. Same as arm > and m68k. Out of curiosity, what is reason for keeping arguments on the stack? ARM port of uClibc has following comment around manipulating of argv/argc: /* * uClinux/arm stacks look a little different from normal * MMU-full Linux/arm stacks (for no good reason) */ So I though it is kind of legacy. Thanks Vladimir > > Signed-off-by: Christoph Hellwig <hch@lst.de> > --- > arch/riscv/Kconfig | 2 ++ > arch/riscv/include/asm/Kbuild | 1 + > 2 files changed, 3 insertions(+) > > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig > index 0c4b12205632..2e3b60cdeef4 100644 > --- a/arch/riscv/Kconfig > +++ b/arch/riscv/Kconfig > @@ -17,7 +17,9 @@ config RISCV > select OF > select OF_EARLY_FLATTREE > select OF_IRQ > + select ARCH_HAS_BINFMT_FLAT > select ARCH_WANT_FRAME_POINTERS > + select BINFMT_FLAT_ARGVP_ENVP_ON_STACK > select CLONE_BACKWARDS > select COMMON_CLK > select GENERIC_CLOCKEVENTS > diff --git a/arch/riscv/include/asm/Kbuild b/arch/riscv/include/asm/Kbuild > index 5ee646619cc3..1efaeddf1e4b 100644 > --- a/arch/riscv/include/asm/Kbuild > +++ b/arch/riscv/include/asm/Kbuild > @@ -5,6 +5,7 @@ generic-y += compat.h > generic-y += device.h > generic-y += div64.h > generic-y += extable.h > +generic-y += flat.h > generic-y += dma.h > generic-y += dma-contiguous.h > generic-y += dma-mapping.h >
On Tue, Jun 11, 2019 at 09:16:43AM +0100, Vladimir Murzin wrote: > On 6/10/19 10:20 PM, Christoph Hellwig wrote: > > Use the generic support with arguments are on the stack. Same as arm > > and m68k. > > Out of curiosity, what is reason for keeping arguments on the stack? > > ARM port of uClibc has following comment around manipulating of argv/argc: > > /* > * uClinux/arm stacks look a little different from normal > * MMU-full Linux/arm stacks (for no good reason) > */ > > So I though it is kind of legacy. I just copied m68k and arm. But dropping this makes the uclinux crt1 code simpler, so I'll drop the flag for the next version.
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig index 0c4b12205632..2e3b60cdeef4 100644 --- a/arch/riscv/Kconfig +++ b/arch/riscv/Kconfig @@ -17,7 +17,9 @@ config RISCV select OF select OF_EARLY_FLATTREE select OF_IRQ + select ARCH_HAS_BINFMT_FLAT select ARCH_WANT_FRAME_POINTERS + select BINFMT_FLAT_ARGVP_ENVP_ON_STACK select CLONE_BACKWARDS select COMMON_CLK select GENERIC_CLOCKEVENTS diff --git a/arch/riscv/include/asm/Kbuild b/arch/riscv/include/asm/Kbuild index 5ee646619cc3..1efaeddf1e4b 100644 --- a/arch/riscv/include/asm/Kbuild +++ b/arch/riscv/include/asm/Kbuild @@ -5,6 +5,7 @@ generic-y += compat.h generic-y += device.h generic-y += div64.h generic-y += extable.h +generic-y += flat.h generic-y += dma.h generic-y += dma-contiguous.h generic-y += dma-mapping.h
Use the generic support with arguments are on the stack. Same as arm and m68k. Signed-off-by: Christoph Hellwig <hch@lst.de> --- arch/riscv/Kconfig | 2 ++ arch/riscv/include/asm/Kbuild | 1 + 2 files changed, 3 insertions(+)