lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240703171235.68d02755@rorschach.local.home>
Date: Wed, 3 Jul 2024 17:12:35 -0400
From: Steven Rostedt <rostedt@...dmis.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: LKML <linux-kernel@...r.kernel.org>, Masami Hiramatsu
 <mhiramat@...nel.org>, Mathieu Desnoyers <mathieu.desnoyers@...icios.com>
Subject: [GIT PULL] tracing: Fix ioctl conflict with memmapped ring buffer
 ioctl



Linus,

tracing: Fix ioctl conflict with memmapped ring buffer ioctl

It was reported that the ioctl() number used to update the ring buffer
memory mapping conflicted with the TCGETS ioctl causing strace to report:

  $ strace -e ioctl stty
  ioctl(0, TCGETS or TRACE_MMAP_IOCTL_GET_READER, {c_iflag=ICRNL|IXON, c_oflag=NL0|CR0|TAB0|BS0|VT0|FF0|OPOST|ONLCR, c_cflag=B38400|CS8|CREAD, c_lflag=ISIG|ICANON|ECHO|ECHOE|ECHOK|IEXTEN|ECHOCTL|ECHOKE, ...}) = 0

Since this ioctl hasn't been in a full release yet, change it from "T", 0x1
to "R" 0x20, and also reserve 0x20-0x2F for future ioctl commands, as
some more are being worked on for the future.


Please pull the latest trace-v6.10-rc6 tree, which can be found at:


  git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
trace-v6.10-rc6

Tag SHA1: 944abfe5775e0d509546ed6b586d8c32df37c263
Head SHA1: 4ecaf7e98a3ae0c843d67c76649ecc694232834b


Steven Rostedt (Google) (1):
      tracing: Have memmapped ring buffer use ioctl of "R" range 0x20-2F

----
 Documentation/userspace-api/ioctl/ioctl-number.rst | 1 +
 include/uapi/linux/trace_mmap.h                    | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)
---------------------------
commit 4ecaf7e98a3ae0c843d67c76649ecc694232834b
Author: Steven Rostedt (Google) <rostedt@...dmis.org>
Date:   Tue Jul 2 15:33:54 2024 -0400

    tracing: Have memmapped ring buffer use ioctl of "R" range 0x20-2F
    
    To prevent conflicts with other ioctl numbers to allow strace to have an
    idea of what is happening, add the range of ioctls for the trace buffer
    mapping from _IO("T", 0x1) to the range of "R" 0x20 - 0x2F.
    
    Link: https://lore.kernel.org/linux-trace-kernel/20240630105322.GA17573@altlinux.org/
    Link: https://lore.kernel.org/linux-trace-kernel/20240630213626.GA23566@altlinux.org/
    
    Cc: Jonathan Corbet <corbet@....net>
    Fixes: cf9f0f7c4c5bb ("tracing: Allow user-space mapping of the ring-buffer")
    Link: https://lore.kernel.org/20240702153354.367861db@rorschach.local.home
    Reported-by: "Dmitry V. Levin" <ldv@...ace.io>
    Reviewed-by: Mathieu Desnoyers <mathieu.desnoyers@...icios.com>
    Acked-by: Masami Hiramatsu (Google) <mhiramat@...nel.org>
    Signed-off-by: Steven Rostedt (Google) <rostedt@...dmis.org>

diff --git a/Documentation/userspace-api/ioctl/ioctl-number.rst b/Documentation/userspace-api/ioctl/ioctl-number.rst
index a141e8e65c5d..9a97030c6c8d 100644
--- a/Documentation/userspace-api/ioctl/ioctl-number.rst
+++ b/Documentation/userspace-api/ioctl/ioctl-number.rst
@@ -186,6 +186,7 @@ Code  Seq#    Include File                                           Comments
 'Q'   all    linux/soundcard.h
 'R'   00-1F  linux/random.h                                          conflict!
 'R'   01     linux/rfkill.h                                          conflict!
+'R'   20-2F  linux/trace_mmap.h
 'R'   C0-DF  net/bluetooth/rfcomm.h
 'R'   E0     uapi/linux/fsl_mc.h
 'S'   all    linux/cdrom.h                                           conflict!
diff --git a/include/uapi/linux/trace_mmap.h b/include/uapi/linux/trace_mmap.h
index bd1066754220..c102ef35d11e 100644
--- a/include/uapi/linux/trace_mmap.h
+++ b/include/uapi/linux/trace_mmap.h
@@ -43,6 +43,6 @@ struct trace_buffer_meta {
 	__u64	Reserved2;
 };
 
-#define TRACE_MMAP_IOCTL_GET_READER		_IO('T', 0x1)
+#define TRACE_MMAP_IOCTL_GET_READER		_IO('R', 0x20)
 
 #endif /* _TRACE_MMAP_H_ */

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ