All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marcelo Henrique Cerri <marcelo.cerri@canonical.com>
To: linux-fsdevel@vger.kernel.org
Cc: Marcelo Henrique Cerri <marcelo.cerri@canonical.com>,
	David Disseldorp <ddiss@suse.de>,
	Thadeu Lima de Souza Cascardo <cascardo@canonical.com>,
	Alexey Dobriyan <adobriyan@gmail.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Christian Brauner <christian.brauner@ubuntu.com>,
	Michel Lespinasse <walken@google.com>,
	Helge Deller <deller@gmx.de>, Oleg Nesterov <oleg@redhat.com>,
	Lorenzo Stoakes <lstoakes@gmail.com>,
	linux-kernel@vger.kernel.org
Subject: [PATCH] proc: Avoid mixing integer types in mem_rw()
Date: Wed, 12 May 2021 09:52:12 -0300	[thread overview]
Message-ID: <20210512125215.3348316-1-marcelo.cerri@canonical.com> (raw)

Use size_t when capping the count argument received by mem_rw(). Since
count is size_t, using min_t(int, ...) can lead to a negative value
that will later be passed to access_remote_vm(), which can cause
unexpected behavior.

Since we are capping the value to at maximum PAGE_SIZE, the conversion
from size_t to int when passing it to access_remote_vm() as "len"
shouldn't be a problem.

Reviewed-by: David Disseldorp <ddiss@suse.de>
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
Signed-off-by: Marcelo Henrique Cerri <marcelo.cerri@canonical.com>
---
 fs/proc/base.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/proc/base.c b/fs/proc/base.c
index 3851bfcdba56..8dbc6a1aaadb 100644
--- a/fs/proc/base.c
+++ b/fs/proc/base.c
@@ -854,7 +854,7 @@ static ssize_t mem_rw(struct file *file, char __user *buf,
 	flags = FOLL_FORCE | (write ? FOLL_WRITE : 0);
 
 	while (count > 0) {
-		int this_len = min_t(int, count, PAGE_SIZE);
+		size_t this_len = min_t(size_t, count, PAGE_SIZE);
 
 		if (write && copy_from_user(page, buf, this_len)) {
 			copied = -EFAULT;
-- 
2.25.1


             reply	other threads:[~2021-05-12 12:55 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-12 12:52 Marcelo Henrique Cerri [this message]
2021-05-12 13:19 ` [PATCH] proc: Avoid mixing integer types in mem_rw() Alexey Dobriyan
2021-05-12 13:40   ` Marcelo Henrique Cerri

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=20210512125215.3348316-1-marcelo.cerri@canonical.com \
    --to=marcelo.cerri@canonical.com \
    --cc=adobriyan@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=cascardo@canonical.com \
    --cc=christian.brauner@ubuntu.com \
    --cc=ddiss@suse.de \
    --cc=deller@gmx.de \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lstoakes@gmail.com \
    --cc=oleg@redhat.com \
    --cc=walken@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 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.