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-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ac85d8be-3cbd-4a51-a627-3a1a9926d801@nvidia.com>
Date: Mon, 10 Nov 2025 10:16:00 -0500
From: Joel Fernandes <joelagnelf@...dia.com>
To: Timur Tabi <ttabi@...dia.com>, John Hubbard <jhubbard@...dia.com>
Cc: "dakr@...nel.org" <dakr@...nel.org>, "lossin@...nel.org"
 <lossin@...nel.org>, "ojeda@...nel.org" <ojeda@...nel.org>,
 "boqun.feng@...il.com" <boqun.feng@...il.com>,
 "a.hindborg@...nel.org" <a.hindborg@...nel.org>,
 "simona@...ll.ch" <simona@...ll.ch>, "tmgross@...ch.edu"
 <tmgross@...ch.edu>, "alex.gaynor@...il.com" <alex.gaynor@...il.com>,
 "mripard@...nel.org" <mripard@...nel.org>,
 "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
 "maarten.lankhorst@...ux.intel.com" <maarten.lankhorst@...ux.intel.com>,
 "dri-devel@...ts.freedesktop.org" <dri-devel@...ts.freedesktop.org>,
 "nouveau@...ts.freedesktop.org" <nouveau@...ts.freedesktop.org>,
 "rust-for-linux@...r.kernel.org" <rust-for-linux@...r.kernel.org>,
 "gary@...yguo.net" <gary@...yguo.net>,
 "bjorn3_gh@...tonmail.com" <bjorn3_gh@...tonmail.com>,
 "tzimmermann@...e.de" <tzimmermann@...e.de>,
 "airlied@...il.com" <airlied@...il.com>,
 "aliceryhl@...gle.com" <aliceryhl@...gle.com>,
 Alexandre Courbot <acourbot@...dia.com>,
 "joel@...lfernandes.org" <joel@...lfernandes.org>,
 Alistair Popple <apopple@...dia.com>
Subject: Re: [PATCH v2 08/12] nova-core: sequencer: Add register opcodes

On 11/5/2025 6:19 PM, Timur Tabi wrote:
> On Wed, 2025-11-05 at 13:55 -0800, John Hubbard wrote:
>>> #define nvdev_trace(d,f,a...) nvdev_printk((d), TRACE,   info, f, ##a)
>>> #define nvdev_spam(d,f,a...)  nvdev_printk((d),  SPAM,    dbg, f, ##a)
>>
>> ...and those are unusable, unfortunately. I've tried.
> 
> This works great for me:
> 
> modprobe nouveau dyndbg="+p" modeset=1 debug="gsp=spam" config=NvGspRm=1
> 
> I get all sequencer messages when I boot with these options.
> 
>> ftrace/bpftrace, maybe those are the real way to "trace"...or something
>> other than this.
> 
> You could say the same thing about most dev_dbg() statements.
> 
> I agree that dev_dbg for sequencer commands is excessive, and that implementing new debug levels
> just to get sequencer prints is also excessive.  But Nouveau implement nvkm_trace for a reason.  And
> we all know that because of ? in Rust, NovaCore does a terrible job at telling us where an error
> actually occurred.  So there is a lot of room for improvement.

IMO, the best way to do this is the tracing subsystem. It is the lowest overhead
runtime kernel logging system that I know off, lockless, independent of the
serial console etc, next to no runtime overhead when off, etc.

I recommend we use the tracing subsystem for "trace" and even "spam" level
logging levels for Nova. The brave souls can always ask the tracing subsystem to
also spam to kernel logs if they so wish.

++ Tracing Czar Steven Rostedt as well. Steve, Nova is a new modern Nvidia GPU
driver.

I guess we have to decide how to do this - what kind of tracepoints do we need
for Nova. One use case that just came up is RPC message buffer dumps for
debugging communication with the firmware.

thanks,

 - Joel


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ