From: "Lorenzo Stoakes (ARM)" <ljs@kernel.org>
To: Hengyu Liang <hengyul@cs.unc.edu>
Cc: akpm@linux-foundation.org, linux-mm@kvack.org,
liam@infradead.org, vbabka@kernel.org, jannh@google.com,
pfalcato@suse.de, usama.anjum@arm.com, avagin@gmail.com,
mirq-linux@rere.qmqm.pl, arnd@arndb.de,
linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
stable@vger.kernel.org
Subject: Re: [PATCH] fs/proc/task_mmu: return -ENOTTY for unknown pagemap ioctls
Date: Mon, 26 Oct 2026 13:53:23 +0000 [thread overview]
Message-ID: <at9YUh99R8Ib7Lr9@gremlin> (raw)
In-Reply-To: <20261023181300.3366487-1-hengyul@cs.unc.edu>
On Fri, Oct 23, 2026 at 02:13:00PM -0400, Hengyu Liang wrote:
> Commit 52526ca7fdb9 ("fs/proc/task_mmu: implement IOCTL to get and
> optionally clear info about PTEs") made do_pagemap_cmd() the ioctl
> handler of /proc/<pid>/pagemap.
>
> However, do_pagemap_cmd() returns -EINVAL for every command other than
> PAGEMAP_SCAN. Before that commit, pagemap had no ioctl handler, and
> the VFS returned -ENOTTY for these commands. As of now, they fail with
> EINVAL, so tcgetattr() and isatty() on pagemap report EINVAL instead
> of ENOTTY.
>
> The issue can be reproduced with a simple C program:
>
> #include <fcntl.h>
> #include <stdio.h>
> #include <termios.h>
>
> int main(void)
> {
> struct termios t;
> int fd = open("/proc/self/pagemap", O_RDONLY);
>
> if (tcgetattr(fd, &t) < 0)
> perror("tcgetattr");
> return 0;
> }
>
> Before that commit, the result is:
>
> tcgetattr: Inappropriate ioctl for device
>
> After that commit, the result is:
>
> tcgetattr: Invalid argument
>
> This patch will return -ENOIOCTLCMD for unknown commands, as
> procfs_procmap_ioctl() in the same file does, so that the VFS turns it
> into -ENOTTY.
>
> Fixes: 52526ca7fdb9 ("fs/proc/task_mmu: implement IOCTL to get and optionally clear info about PTEs")
> Cc: stable@vger.kernel.org
> Signed-off-by: Hengyu Liang <hengyul@cs.unc.edu>
Seems reasonable, though I doubt any sane user is relying on this.
Confirmed the conversion from -ENOIOCTLCMD (first time I saw that :) to -ENOTTY also.
Reviewed-by: Lorenzo Stoakes (ARM) <ljs@kernel.org>
--
Cheers, Lorenzo
prev parent reply other threads:[~2026-10-26 13:53 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-23 18:13 [PATCH] fs/proc/task_mmu: return -ENOTTY for unknown pagemap ioctls Hengyu Liang
2026-10-23 18:24 ` Andrew Morton
2026-10-25 10:56 ` David Hildenbrand (Arm)
2026-10-26 13:23 ` Pedro Falcato
2026-10-26 13:53 ` Lorenzo Stoakes (ARM) [this message]
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=at9YUh99R8Ib7Lr9@gremlin \
--to=ljs@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=arnd@arndb.de \
--cc=avagin@gmail.com \
--cc=hengyul@cs.unc.edu \
--cc=jannh@google.com \
--cc=liam@infradead.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mirq-linux@rere.qmqm.pl \
--cc=pfalcato@suse.de \
--cc=stable@vger.kernel.org \
--cc=usama.anjum@arm.com \
--cc=vbabka@kernel.org \
/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.