From: Isaac Manjarres <isaacmanjarres@google.com>
To: Alice Ryhl <aliceryhl@google.com>
Cc: lorenzo.stoakes@oracle.com,
Andrew Morton <akpm@linux-foundation.org>,
kaleshsingh@google.com, jstultz@google.com, surenb@google.com,
kernel-team@android.com, linux-mm@kvack.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 2/2] mm/memfd: Use strncpy_from_user() to read memfd name
Date: Wed, 8 Jan 2025 10:43:12 -0800 [thread overview]
Message-ID: <Z37HQC07ZIYQ2XvZ@google.com> (raw)
In-Reply-To: <CAH5fLghH+637BDpEYpRZ+qMF=WdiLoJ6T93vPwRCaPvEdh_mNw@mail.gmail.com>
On Wed, Jan 08, 2025 at 02:43:12PM +0100, Alice Ryhl wrote:
> On Tue, Jan 7, 2025 at 7:48 PM Isaac J. Manjarres
> <isaacmanjarres@google.com> wrote:
> >
> > The existing logic uses strnlen_user() to calculate the length of the
> > memfd name from userspace and then copies the string into a buffer using
> > copy_from_user(). This is error-prone, as the string length
> > could have changed between the time when it was calculated and when the
> > string was copied. The existing logic handles this by ensuring that the
> > last byte in the buffer is the terminating zero.
> >
> > This handling is contrived and can better be handled by using
> > strncpy_from_user(), which gets the length of the string and copies
> > it in one shot. Therefore, simplify the logic for copying the memfd
> > name by using strncpy_from_user().
> >
> > No functional change.
> >
> > Signed-off-by: Isaac J. Manjarres <isaacmanjarres@google.com>
>
> Looks okay to me. One nit below, but:
>
> Reviewed-by: Alice Ryhl <aliceryhl@google.com>
>
> > + /* length does not include terminating zero */
> > + len = strncpy_from_user(name + MFD_NAME_PREFIX_LEN, uname, MFD_NAME_MAX_LEN + 1);
>
> Can we have this comment say "returned length" instead of just
> "length"? Or just remove the comment. Initially I thought you were
> talking about the last argument, and I was confused as that does
> include the nul-terminator.
>
> Alice
Yes, I will update it to say returned length and add your "Reviewed-by"
tag. Thanks for this!
--Isaac
next prev parent reply other threads:[~2025-01-08 18:43 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-07 18:48 [PATCH v2 0/2] Cleanup for memfd_create() Isaac J. Manjarres
2025-01-07 18:48 ` [PATCH v2 1/2] mm/memfd: Refactor and cleanup the logic in memfd_create() Isaac J. Manjarres
2025-01-08 13:31 ` Alice Ryhl
2025-01-08 18:40 ` Isaac Manjarres
2025-01-08 18:30 ` Lorenzo Stoakes
2025-01-08 20:04 ` Isaac Manjarres
2025-01-08 20:23 ` Lorenzo Stoakes
2025-01-07 18:48 ` [PATCH v2 2/2] mm/memfd: Use strncpy_from_user() to read memfd name Isaac J. Manjarres
2025-01-08 13:43 ` Alice Ryhl
2025-01-08 18:43 ` Isaac Manjarres [this message]
2025-01-08 18:58 ` Lorenzo Stoakes
2025-01-09 2:15 ` Isaac Manjarres
2025-01-09 11:31 ` Lorenzo Stoakes
2025-01-09 18:14 ` Isaac Manjarres
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=Z37HQC07ZIYQ2XvZ@google.com \
--to=isaacmanjarres@google.com \
--cc=akpm@linux-foundation.org \
--cc=aliceryhl@google.com \
--cc=jstultz@google.com \
--cc=kaleshsingh@google.com \
--cc=kernel-team@android.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lorenzo.stoakes@oracle.com \
--cc=surenb@google.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox