All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Hildenbrand <david@redhat.com>
To: Andrew Morton <akpm@linux-foundation.org>,
	mm-commits@vger.kernel.org, xrivendell7@gmail.com,
	stable@vger.kernel.org, samsun1006219@gmail.com, rppt@kernel.org,
	mszeredi@redhat.com, miklos@szeredi.hu, lstoakes@gmail.com
Subject: Re: [merged mm-hotfixes-stable] mm-secretmem-fix-gup-fast-succeeding-on-secretmem-folios.patch removed from -mm tree
Date: Tue, 26 Mar 2024 19:11:13 +0100	[thread overview]
Message-ID: <8a4c167f-6dcc-4fe2-9edc-a722badd4df9@redhat.com> (raw)
In-Reply-To: <20240326180828.AC6E1C433F1@smtp.kernel.org>

On 26.03.24 19:08, Andrew Morton wrote:
> 
> The quilt patch titled
>       Subject: mm/secretmem: fix GUP-fast succeeding on secretmem folios
> has been removed from the -mm tree.  Its filename was
>       mm-secretmem-fix-gup-fast-succeeding-on-secretmem-folios.patch
> 
> This patch was dropped because it was merged into the mm-hotfixes-stable branch
> of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
> 

I sent an updated patch that removes the LRU check completely. Still 
time to fix that? :)

> ------------------------------------------------------
> From: David Hildenbrand <david@redhat.com>
> Subject: mm/secretmem: fix GUP-fast succeeding on secretmem folios
> Date: Mon, 25 Mar 2024 14:41:12 +0100
> 
> folio_is_secretmem() states that secretmem folios cannot be LRU folios: so
> we may only exit early if we find an LRU folio.  Yet, we exit early if we
> find a folio that is not a secretmem folio.
> 
> Consequently, folio_is_secretmem() fails to detect secretmem folios and,
> therefore, we can succeed in grabbing a secretmem folio during GUP-fast,
> crashing the kernel when we later try reading/writing to the folio,
> because the folio has been unmapped from the directmap.
> 
> Link: https://lkml.kernel.org/r/20240325134114.257544-2-david@redhat.com
> Fixes: 1507f51255c9 ("mm: introduce memfd_secret system call to create "secret" memory areas")
> Signed-off-by: David Hildenbrand <david@redhat.com>
> Reported-by: xingwei lee <xrivendell7@gmail.com>
> Reported-by: yue sun <samsun1006219@gmail.com>
> Closes: https://lore.kernel.org/lkml/CABOYnLyevJeravW=QrH0JUPYEcDN160aZFb7kwndm-J2rmz0HQ@mail.gmail.com/
> Debugged-by: Miklos Szeredi <miklos@szeredi.hu>
> Reviewed-by: Mike Rapoport (IBM) <rppt@kernel.org>
> Tested-by: Miklos Szeredi <mszeredi@redhat.com>
> Cc: Lorenzo Stoakes <lstoakes@gmail.com>
> Cc: "Mike Rapoport (IBM)" <rppt@kernel.org>
> Cc: <stable@vger.kernel.org>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
> ---
> 
>   include/linux/secretmem.h |    2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> --- a/include/linux/secretmem.h~mm-secretmem-fix-gup-fast-succeeding-on-secretmem-folios
> +++ a/include/linux/secretmem.h
> @@ -16,7 +16,7 @@ static inline bool folio_is_secretmem(st
>   	 * We know that secretmem pages are not compound and LRU so we can
>   	 * save a couple of cycles here.
>   	 */
> -	if (folio_test_large(folio) || !folio_test_lru(folio))
> +	if (folio_test_large(folio) || folio_test_lru(folio))
>   		return false;
>   
>   	mapping = (struct address_space *)
> _
> 
> Patches currently in -mm which might be from david@redhat.com are
> 
> mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.patch
> mm-madvise-dont-perform-madvise-vma-walk-for-madv_populate_readwrite.patch
> mm-userfaultfd-dont-place-zeropages-when-zeropages-are-disallowed.patch
> s390-mm-re-enable-the-shared-zeropage-for-pv-and-skeys-kvm-guests.patch
> mm-convert-folio_estimated_sharers-to-folio_likely_mapped_shared.patch
> mm-convert-folio_estimated_sharers-to-folio_likely_mapped_shared-fix.patch
> selftests-memfd_secret-add-vmsplice-test.patch
> mm-merge-folio_is_secretmem-into-folio_fast_pin_allowed.patch
> 

-- 
Cheers,

David / dhildenb


  reply	other threads:[~2024-03-26 18:11 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-26 18:08 [merged mm-hotfixes-stable] mm-secretmem-fix-gup-fast-succeeding-on-secretmem-folios.patch removed from -mm tree Andrew Morton
2024-03-26 18:11 ` David Hildenbrand [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-04-05 18:22 Andrew Morton

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=8a4c167f-6dcc-4fe2-9edc-a722badd4df9@redhat.com \
    --to=david@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=lstoakes@gmail.com \
    --cc=miklos@szeredi.hu \
    --cc=mm-commits@vger.kernel.org \
    --cc=mszeredi@redhat.com \
    --cc=rppt@kernel.org \
    --cc=samsun1006219@gmail.com \
    --cc=stable@vger.kernel.org \
    --cc=xrivendell7@gmail.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.