All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alex Ghiti <alex@ghiti.fr>
To: Kees Cook <keescook@chromium.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Christoph Hellwig <hch@lst.de>,
	Russell King <linux@armlinux.org.uk>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will.deacon@arm.com>,
	Ralf Baechle <ralf@linux-mips.org>,
	Paul Burton <paul.burton@mips.com>,
	James Hogan <jhogan@kernel.org>,
	Palmer Dabbelt <palmer@sifive.com>,
	Albert Ou <aou@eecs.berkeley.edu>,
	Alexander Viro <viro@zeniv.linux.org.uk>,
	Luis Chamberlain <mcgrof@kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
	linux-mips@vger.kernel.org, linux-riscv@lists.infradead.org,
	"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
	Linux-MM <linux-mm@kvack.org>
Subject: Re: [PATCH v3 03/11] arm64: Consider stack randomization for mmap base only when necessary
Date: Thu, 18 Apr 2019 01:24:32 -0400	[thread overview]
Message-ID: <b2d80348-a3d4-ffcc-d174-0a7a244dae0b@ghiti.fr> (raw)
In-Reply-To: <CAGXu5jKo26zXw=jfKSzr_pnfx5Zux+fVbY7V9bJwEMApDcFi8w@mail.gmail.com>

On 4/18/19 12:37 AM, Kees Cook wrote:
> On Wed, Apr 17, 2019 at 12:26 AM Alexandre Ghiti <alex@ghiti.fr> wrote:
>> Do not offset mmap base address because of stack randomization if
>> current task does not want randomization.
> Maybe mention that this makes this logic match the existing x86 behavior too?


Ok I will add this in case of a v4.


>
>> Signed-off-by: Alexandre Ghiti <alex@ghiti.fr>
> Acked-by: Kees Cook <keescook@chromium.org>

Thanks !


>
> -Kees
>
>> ---
>>   arch/arm64/mm/mmap.c | 6 +++++-
>>   1 file changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm64/mm/mmap.c b/arch/arm64/mm/mmap.c
>> index ed4f9915f2b8..ac89686c4af8 100644
>> --- a/arch/arm64/mm/mmap.c
>> +++ b/arch/arm64/mm/mmap.c
>> @@ -65,7 +65,11 @@ unsigned long arch_mmap_rnd(void)
>>   static unsigned long mmap_base(unsigned long rnd, struct rlimit *rlim_stack)
>>   {
>>          unsigned long gap = rlim_stack->rlim_cur;
>> -       unsigned long pad = (STACK_RND_MASK << PAGE_SHIFT) + stack_guard_gap;
>> +       unsigned long pad = stack_guard_gap;
>> +
>> +       /* Account for stack randomization if necessary */
>> +       if (current->flags & PF_RANDOMIZE)
>> +               pad += (STACK_RND_MASK << PAGE_SHIFT);
>>
>>          /* Values close to RLIM_INFINITY can overflow. */
>>          if (gap + pad > gap)
>> --
>> 2.20.1
>>
>

WARNING: multiple messages have this Message-ID (diff)
From: Alex Ghiti <alex@ghiti.fr>
To: Kees Cook <keescook@chromium.org>
Cc: Albert Ou <aou@eecs.berkeley.edu>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Palmer Dabbelt <palmer@sifive.com>,
	Will Deacon <will.deacon@arm.com>,
	Russell King <linux@armlinux.org.uk>,
	Ralf Baechle <ralf@linux-mips.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Linux-MM <linux-mm@kvack.org>, Paul Burton <paul.burton@mips.com>,
	linux-riscv@lists.infradead.org,
	Alexander Viro <viro@zeniv.linux.org.uk>,
	James Hogan <jhogan@kernel.org>,
	"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-mips@vger.kernel.org, Christoph Hellwig <hch@lst.de>,
	linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
	Luis Chamberlain <mcgrof@kernel.org>
Subject: Re: [PATCH v3 03/11] arm64: Consider stack randomization for mmap base only when necessary
Date: Thu, 18 Apr 2019 01:24:32 -0400	[thread overview]
Message-ID: <b2d80348-a3d4-ffcc-d174-0a7a244dae0b@ghiti.fr> (raw)
In-Reply-To: <CAGXu5jKo26zXw=jfKSzr_pnfx5Zux+fVbY7V9bJwEMApDcFi8w@mail.gmail.com>

On 4/18/19 12:37 AM, Kees Cook wrote:
> On Wed, Apr 17, 2019 at 12:26 AM Alexandre Ghiti <alex@ghiti.fr> wrote:
>> Do not offset mmap base address because of stack randomization if
>> current task does not want randomization.
> Maybe mention that this makes this logic match the existing x86 behavior too?


Ok I will add this in case of a v4.


>
>> Signed-off-by: Alexandre Ghiti <alex@ghiti.fr>
> Acked-by: Kees Cook <keescook@chromium.org>

Thanks !


>
> -Kees
>
>> ---
>>   arch/arm64/mm/mmap.c | 6 +++++-
>>   1 file changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm64/mm/mmap.c b/arch/arm64/mm/mmap.c
>> index ed4f9915f2b8..ac89686c4af8 100644
>> --- a/arch/arm64/mm/mmap.c
>> +++ b/arch/arm64/mm/mmap.c
>> @@ -65,7 +65,11 @@ unsigned long arch_mmap_rnd(void)
>>   static unsigned long mmap_base(unsigned long rnd, struct rlimit *rlim_stack)
>>   {
>>          unsigned long gap = rlim_stack->rlim_cur;
>> -       unsigned long pad = (STACK_RND_MASK << PAGE_SHIFT) + stack_guard_gap;
>> +       unsigned long pad = stack_guard_gap;
>> +
>> +       /* Account for stack randomization if necessary */
>> +       if (current->flags & PF_RANDOMIZE)
>> +               pad += (STACK_RND_MASK << PAGE_SHIFT);
>>
>>          /* Values close to RLIM_INFINITY can overflow. */
>>          if (gap + pad > gap)
>> --
>> 2.20.1
>>
>

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

WARNING: multiple messages have this Message-ID (diff)
From: Alex Ghiti <alex@ghiti.fr>
To: Kees Cook <keescook@chromium.org>
Cc: Albert Ou <aou@eecs.berkeley.edu>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Palmer Dabbelt <palmer@sifive.com>,
	Will Deacon <will.deacon@arm.com>,
	Russell King <linux@armlinux.org.uk>,
	Ralf Baechle <ralf@linux-mips.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Linux-MM <linux-mm@kvack.org>, Paul Burton <paul.burton@mips.com>,
	linux-riscv@lists.infradead.org,
	Alexander Viro <viro@zeniv.linux.org.uk>,
	James Hogan <jhogan@kernel.org>,
	"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-mips@vger.kernel.org, Christoph Hellwig <hch@lst.de>,
	linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
	Luis Chamberlain <mcgrof@kernel.org>
Subject: Re: [PATCH v3 03/11] arm64: Consider stack randomization for mmap base only when necessary
Date: Thu, 18 Apr 2019 01:24:32 -0400	[thread overview]
Message-ID: <b2d80348-a3d4-ffcc-d174-0a7a244dae0b@ghiti.fr> (raw)
In-Reply-To: <CAGXu5jKo26zXw=jfKSzr_pnfx5Zux+fVbY7V9bJwEMApDcFi8w@mail.gmail.com>

On 4/18/19 12:37 AM, Kees Cook wrote:
> On Wed, Apr 17, 2019 at 12:26 AM Alexandre Ghiti <alex@ghiti.fr> wrote:
>> Do not offset mmap base address because of stack randomization if
>> current task does not want randomization.
> Maybe mention that this makes this logic match the existing x86 behavior too?


Ok I will add this in case of a v4.


>
>> Signed-off-by: Alexandre Ghiti <alex@ghiti.fr>
> Acked-by: Kees Cook <keescook@chromium.org>

Thanks !


>
> -Kees
>
>> ---
>>   arch/arm64/mm/mmap.c | 6 +++++-
>>   1 file changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm64/mm/mmap.c b/arch/arm64/mm/mmap.c
>> index ed4f9915f2b8..ac89686c4af8 100644
>> --- a/arch/arm64/mm/mmap.c
>> +++ b/arch/arm64/mm/mmap.c
>> @@ -65,7 +65,11 @@ unsigned long arch_mmap_rnd(void)
>>   static unsigned long mmap_base(unsigned long rnd, struct rlimit *rlim_stack)
>>   {
>>          unsigned long gap = rlim_stack->rlim_cur;
>> -       unsigned long pad = (STACK_RND_MASK << PAGE_SHIFT) + stack_guard_gap;
>> +       unsigned long pad = stack_guard_gap;
>> +
>> +       /* Account for stack randomization if necessary */
>> +       if (current->flags & PF_RANDOMIZE)
>> +               pad += (STACK_RND_MASK << PAGE_SHIFT);
>>
>>          /* Values close to RLIM_INFINITY can overflow. */
>>          if (gap + pad > gap)
>> --
>> 2.20.1
>>
>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2019-04-18  5:24 UTC|newest]

Thread overview: 143+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-17  5:22 [PATCH v3 00/11] Provide generic top-down mmap layout functions Alexandre Ghiti
2019-04-17  5:22 ` Alexandre Ghiti
2019-04-17  5:22 ` Alexandre Ghiti
2019-04-17  5:22 ` [PATCH v3 01/11] mm, fs: Move randomize_stack_top from fs to mm Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-18  5:20   ` Kees Cook
2019-04-18  5:20     ` Kees Cook
2019-04-18  5:20     ` Kees Cook
2019-04-18  5:20     ` Kees Cook
2019-04-17  5:22 ` [PATCH v3 02/11] arm64: Make use of is_compat_task instead of hardcoding this test Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-18  4:32   ` Kees Cook
2019-04-18  4:32     ` Kees Cook
2019-04-18  4:32     ` Kees Cook
2019-04-18  4:32     ` Kees Cook
2019-04-18  5:23     ` Alex Ghiti
2019-04-18  5:23       ` Alex Ghiti
2019-04-18  5:23       ` Alex Ghiti
2019-04-22 19:53   ` Christoph Hellwig
2019-04-22 19:53     ` Christoph Hellwig
2019-04-22 19:53     ` Christoph Hellwig
2019-04-17  5:22 ` [PATCH v3 03/11] arm64: Consider stack randomization for mmap base only when necessary Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-18  4:37   ` Kees Cook
2019-04-18  4:37     ` Kees Cook
2019-04-18  4:37     ` Kees Cook
2019-04-18  4:37     ` Kees Cook
2019-04-18  5:24     ` Alex Ghiti [this message]
2019-04-18  5:24       ` Alex Ghiti
2019-04-18  5:24       ` Alex Ghiti
2019-04-22 19:53   ` Christoph Hellwig
2019-04-22 19:53     ` Christoph Hellwig
2019-04-22 19:53     ` Christoph Hellwig
2019-04-17  5:22 ` [PATCH v3 04/11] arm64, mm: Move generic mmap layout functions to mm Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-18  5:17   ` Kees Cook
2019-04-18  5:17     ` Kees Cook
2019-04-18  5:17     ` Kees Cook
2019-04-18  5:17     ` Kees Cook
2019-04-18  5:55     ` Alex Ghiti
2019-04-18  5:55       ` Alex Ghiti
2019-04-18  5:55       ` Alex Ghiti
2019-04-18 14:19       ` Kees Cook
2019-04-18 14:19         ` Kees Cook
2019-04-18 14:19         ` Kees Cook
2019-04-18 14:19         ` Kees Cook
2019-04-19  7:20         ` Alex Ghiti
2019-04-19  7:20           ` Alex Ghiti
2019-04-19  7:20           ` Alex Ghiti
2019-04-22 19:55         ` Christoph Hellwig
2019-04-22 19:55           ` Christoph Hellwig
2019-04-22 19:55           ` Christoph Hellwig
2019-04-28 14:27         ` Alex Ghiti
2019-04-28 14:27           ` Alex Ghiti
2019-04-28 14:27           ` Alex Ghiti
2019-04-22 19:54   ` Christoph Hellwig
2019-04-22 19:54     ` Christoph Hellwig
2019-04-22 19:54     ` Christoph Hellwig
2019-04-17  5:22 ` [PATCH v3 05/11] arm: Properly account for stack randomization and stack guard gap Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-18  5:26   ` Kees Cook
2019-04-18  5:26     ` Kees Cook
2019-04-18  5:26     ` Kees Cook
2019-04-18  5:26     ` Kees Cook
2019-04-18  6:01     ` Alex Ghiti
2019-04-18  6:01       ` Alex Ghiti
2019-04-18  6:01       ` Alex Ghiti
2019-04-17  5:22 ` [PATCH v3 06/11] arm: Use STACK_TOP when computing mmap base address Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-18  5:27   ` Kees Cook
2019-04-18  5:27     ` Kees Cook
2019-04-18  5:27     ` Kees Cook
2019-04-18  5:27     ` Kees Cook
2019-04-18  6:04     ` Alex Ghiti
2019-04-18  6:04       ` Alex Ghiti
2019-04-18  6:04       ` Alex Ghiti
2019-04-17  5:22 ` [PATCH v3 07/11] arm: Use generic mmap top-down layout Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-18  5:28   ` Kees Cook
2019-04-18  5:28     ` Kees Cook
2019-04-18  5:28     ` Kees Cook
2019-04-18  5:28     ` Kees Cook
2019-04-18  6:06     ` Alex Ghiti
2019-04-18  6:06       ` Alex Ghiti
2019-04-18  6:06       ` Alex Ghiti
2019-04-17  5:22 ` [PATCH v3 08/11] mips: Properly account for stack randomization and stack guard gap Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-18  5:30   ` Kees Cook
2019-04-18  5:30     ` Kees Cook
2019-04-18  5:30     ` Kees Cook
2019-04-18  5:30     ` Kees Cook
2019-04-18  6:06     ` Alex Ghiti
2019-04-18  6:06       ` Alex Ghiti
2019-04-18  6:06       ` Alex Ghiti
2019-04-18 21:27   ` Paul Burton
2019-04-18 21:27     ` Paul Burton
2019-04-18 21:27     ` Paul Burton
2019-04-18 21:27     ` Paul Burton
2019-04-19  7:20     ` Alex Ghiti
2019-04-19  7:20       ` Alex Ghiti
2019-04-19  7:20       ` Alex Ghiti
2019-04-19  7:20       ` Alex Ghiti
2019-04-17  5:22 ` [PATCH v3 09/11] mips: Use STACK_TOP when computing mmap base address Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-18  5:31   ` Kees Cook
2019-04-18  5:31     ` Kees Cook
2019-04-18  5:31     ` Kees Cook
2019-04-18  5:31     ` Kees Cook
2019-04-18  6:08     ` Alex Ghiti
2019-04-18  6:08       ` Alex Ghiti
2019-04-18  6:08       ` Alex Ghiti
2019-04-17  5:22 ` [PATCH v3 10/11] mips: Use generic mmap top-down layout Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-18  5:31   ` Kees Cook
2019-04-18  5:31     ` Kees Cook
2019-04-18  5:31     ` Kees Cook
2019-04-18  5:31     ` Kees Cook
2019-04-18  6:08     ` Alex Ghiti
2019-04-18  6:08       ` Alex Ghiti
2019-04-18  6:08       ` Alex Ghiti
2019-04-17  5:22 ` [PATCH v3 11/11] riscv: Make mmap allocation top-down by default Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-17  5:22   ` Alexandre Ghiti
2019-04-18  5:31   ` Kees Cook
2019-04-18  5:31     ` Kees Cook
2019-04-18  5:31     ` Kees Cook
2019-04-18  5:31     ` Kees Cook
2019-04-18  6:09     ` Alex Ghiti
2019-04-18  6:09       ` Alex Ghiti
2019-04-18  6:09       ` Alex Ghiti
2019-04-22 19:56   ` Christoph Hellwig
2019-04-22 19:56     ` Christoph Hellwig
2019-04-22 19:56     ` Christoph Hellwig

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=b2d80348-a3d4-ffcc-d174-0a7a244dae0b@ghiti.fr \
    --to=alex@ghiti.fr \
    --cc=akpm@linux-foundation.org \
    --cc=aou@eecs.berkeley.edu \
    --cc=catalin.marinas@arm.com \
    --cc=hch@lst.de \
    --cc=jhogan@kernel.org \
    --cc=keescook@chromium.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=linux@armlinux.org.uk \
    --cc=mcgrof@kernel.org \
    --cc=palmer@sifive.com \
    --cc=paul.burton@mips.com \
    --cc=ralf@linux-mips.org \
    --cc=viro@zeniv.linux.org.uk \
    --cc=will.deacon@arm.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.