[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <c84d0436-1354-4925-aae7-158cdb3f4293@suse.cz>
Date: Fri, 13 Dec 2024 15:06:34 +0100
From: Vlastimil Babka <vbabka@...e.cz>
To: Lorenzo Stoakes <lorenzo.stoakes@...cle.com>,
Andrew Morton <akpm@...ux-foundation.org>,
"Liam R . Howlett" <Liam.Howlett@...cle.com>
Cc: Jann Horn <jannh@...gle.com>, linux-mm@...ck.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] mm: assert mmap write lock held on do_mmap(),
mmap_region()
On 12/12/24 12:48, Lorenzo Stoakes wrote:
> Both of these functions can be invoked outside of mm, so it is probably a
> good idea to assert that the required lock is held.
>
> Will only have an impact if CONFIG_DEBUG_VM is set, otherwise this amounts
> to no change at all.
>
> Signed-off-by: Lorenzo Stoakes <lorenzo.stoakes@...cle.com>
Acked-by: Vlastimil Babka <vbabka@...e.cz>
> ---
> mm/mmap.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/mm/mmap.c b/mm/mmap.c
> index df9154b15ef9..43ef85028921 100644
> --- a/mm/mmap.c
> +++ b/mm/mmap.c
> @@ -291,6 +291,8 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
>
> *populate = 0;
>
> + mmap_assert_write_locked(mm);
> +
> if (!len)
> return -EINVAL;
>
> @@ -1023,6 +1025,8 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
> unsigned long ret;
> bool writable_file_mapping = false;
>
> + mmap_assert_write_locked(current->mm);
> +
> /* Check to see if MDWE is applicable. */
> if (map_deny_write_exec(vm_flags, vm_flags))
> return -EACCES;
> --
> 2.47.1
Powered by blists - more mailing lists