From: Jeff Layton <jlayton@kernel.org>
To: Kees Cook <kees@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>,
Paolo Abeni <pabeni@redhat.com>, Simon Horman <horms@kernel.org>,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Maxime Ripard <mripard@kernel.org>,
Thomas Zimmermann <tzimmermann@suse.de>,
David Airlie <airlied@gmail.com>,
Simona Vetter <simona@ffwll.ch>,
Jani Nikula <jani.nikula@linux.intel.com>,
Joonas Lahtinen <joonas.lahtinen@linux.intel.com>,
Rodrigo Vivi <rodrigo.vivi@intel.com>,
Tvrtko Ursulin <tursulin@ursulin.net>,
Krzysztof Karas <krzysztof.karas@intel.com>,
Kuniyuki Iwashima <kuniyu@amazon.com>,
Qasim Ijaz <qasdev00@gmail.com>,
Nathan Chancellor <nathan@kernel.org>,
Andrew Lunn <andrew@lunn.ch>,
linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
dri-devel@lists.freedesktop.org,
intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH v15 6/9] ref_tracker: automatically register a file in debugfs for a ref_tracker_dir
Date: Thu, 31 Jul 2025 06:29:00 -0400 [thread overview]
Message-ID: <6270c853cdf90172d4794e2b601ebc88590b774f.camel@kernel.org> (raw)
In-Reply-To: <202507301603.62E553F93@keescook>
On Wed, 2025-07-30 at 16:07 -0700, Kees Cook wrote:
> On Wed, Jun 18, 2025 at 10:24:19AM -0400, Jeff Layton wrote:
> > [...]
> > The file is given the name "class@%px", as having the unmodified address
> > is helpful for debugging. This should be safe since this directory is only
> > accessible by root
> > [...]
> > +void ref_tracker_dir_debugfs(struct ref_tracker_dir *dir)
> > +{
> > + char name[NAME_MAX + 1];
> > + struct dentry *dentry;
> > + int ret;
> > +
> > + /* No-op if already created */
> > + dentry = xa_load(&debugfs_dentries, (unsigned long)dir);
> > + if (dentry && !xa_is_err(dentry))
> > + return;
> > +
> > + ret = snprintf(name, sizeof(name), "%s@%px", dir->class, dir);
> > + name[sizeof(name) - 1] = '\0';
>
> Yikes! Never use %px, and especially don't use it for a stable
> identifier nor expose it to userspace like this. If you absolutely must,
> use %p, but never %px. This is a kernel address leak:
> https://docs.kernel.org/process/deprecated.html#p-format-specifier
>
> "helpful for debugging" is not a sufficiently good reason; and "only
> accessible by root" has nothing to do with kernel address integrity.
> Those kinds of things are (roughly) managed by various capabilities,
> not DAC uid==0.
From the link above:
"If you think you can justify it (in comments and commit log) well
enough to stand up to Linus’s scrutiny, maybe you can use “%px”, along
with making sure you have sensible permissions."
Is making it only accessible by root not sensible enough? What are
"sensible permissions" in this instance?
Those questions asked, I'm not dead-set on using %px here. I just
figured it would be more convenient to have the actual address if you
needed to go poke around with drgn. We can change it to %p (or
something else) if it's really a problem.
--
Jeff Layton <jlayton@kernel.org>
next prev parent reply other threads:[~2025-07-31 10:29 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-18 14:24 [PATCH v15 0/9] ref_tracker: add ability to register a debugfs file for a ref_tracker_dir Jeff Layton
2025-06-18 14:24 ` [PATCH v15 1/9] ref_tracker: don't use %pK in pr_ostream() output Jeff Layton
2025-06-18 14:24 ` [PATCH v15 2/9] ref_tracker: add a top level debugfs directory for ref_tracker Jeff Layton
2025-06-18 14:24 ` [PATCH v15 3/9] ref_tracker: have callers pass output function to pr_ostream() Jeff Layton
2025-06-23 12:57 ` Krzysztof Karas
2025-06-18 14:24 ` [PATCH v15 4/9] ref_tracker: add a static classname string to each ref_tracker_dir Jeff Layton
2025-06-23 13:21 ` Krzysztof Karas
2025-06-18 14:24 ` [PATCH v15 5/9] ref_tracker: allow pr_ostream() to print directly to a seq_file Jeff Layton
2025-06-23 14:01 ` Krzysztof Karas
2025-06-23 17:28 ` Jeff Layton
2025-06-27 12:32 ` Krzysztof Karas
2025-06-18 14:24 ` [PATCH v15 6/9] ref_tracker: automatically register a file in debugfs for a ref_tracker_dir Jeff Layton
2025-07-30 23:07 ` Kees Cook
2025-07-31 10:29 ` Jeff Layton [this message]
2025-07-31 16:54 ` Kees Cook
2025-06-18 14:24 ` [PATCH v15 7/9] ref_tracker: add a way to create a symlink to the ref_tracker_dir debugfs file Jeff Layton
2025-06-18 14:24 ` [PATCH v15 8/9] net: add symlinks to ref_tracker_dir for netns Jeff Layton
2025-06-18 14:24 ` [PATCH v15 9/9] ref_tracker: eliminate the ref_tracker_dir name field Jeff Layton
2025-06-18 15:30 ` ✓ i915.CI.BAT: success for ref_tracker: add ability to register a debugfs file for a ref_tracker_dir (rev11) Patchwork
2025-06-19 7:21 ` ✗ i915.CI.Full: failure " Patchwork
2025-06-20 0:13 ` [PATCH v15 0/9] ref_tracker: add ability to register a debugfs file for a ref_tracker_dir Jakub Kicinski
2025-06-21 6:58 ` Eric Dumazet
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=6270c853cdf90172d4794e2b601ebc88590b774f.camel@kernel.org \
--to=jlayton@kernel.org \
--cc=airlied@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=dri-devel@lists.freedesktop.org \
--cc=edumazet@google.com \
--cc=horms@kernel.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jani.nikula@linux.intel.com \
--cc=joonas.lahtinen@linux.intel.com \
--cc=kees@kernel.org \
--cc=krzysztof.karas@intel.com \
--cc=kuba@kernel.org \
--cc=kuniyu@amazon.com \
--cc=linux-kernel@vger.kernel.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=nathan@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=qasdev00@gmail.com \
--cc=rodrigo.vivi@intel.com \
--cc=simona@ffwll.ch \
--cc=tursulin@ursulin.net \
--cc=tzimmermann@suse.de \
/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