All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thierry Reding <thierry.reding@kernel.org>
To: Krzysztof Kozlowski <krzk@kernel.org>
Cc: Sumit Gupta <sumitg@nvidia.com>,
	treding@nvidia.com,  jonathanh@nvidia.com,
	linux-kernel@vger.kernel.org, linux-tegra@vger.kernel.org,
	 bbasu@nvidia.com
Subject: Re: [PATCH] memory: tegra: add multi-socket support to the memory interconnect
Date: Thu, 28 May 2026 15:05:38 +0200	[thread overview]
Message-ID: <ahg5_Lm51AcfkQm_@orome> (raw)
In-Reply-To: <ad3c49f1-044f-445c-a586-675252f157ae@kernel.org>

[-- Attachment #1: Type: text/plain, Size: 2080 bytes --]

On Thu, May 28, 2026 at 02:20:07PM +0200, Krzysztof Kozlowski wrote:
> On 28/05/2026 13:56, Thierry Reding wrote:
> >>>>>
> >>>>> -     mc->debugfs.root = debugfs_create_dir("mc", NULL);
> >>>>> +     if (!mc_debugfs_root)
> >>>> That's a probe path and you created a singletone. Looks like preventing
> >>>> async probing for no real reason.
> >>>>
> >>>> I am very against singletons and debugfs does not look like justified
> >>>> exception.
> >>>
> >>> The singleton was added so multi-socket MC/EMC instances could
> >>> share a "mc"/"emc" parent. I'll drop it in v2.
> >>>
> >>> On single-socket SoCs, the "mc"/"emc" names will be unchanged.
> >>> On multi-socket SoCs, each instance will create a top-level debugfs
> >>> dir named with dev_name(). Same pattern in tegra186-emc.c.
> >>>
> >>>    if (dev_to_node(mc->dev) == NUMA_NO_NODE)
> >>>        mc->debugfs.root = debugfs_create_dir("mc", NULL);
> >>>    else
> >>>        mc->debugfs.root = debugfs_create_dir(dev_name(mc->dev), NULL);
> >>
> >> You assume this is fully synced, so you as well could do a look up and
> >> then use what you found or create new dir. If you think that is racy, so
> >> is this approach... How are other drivers handling per-device debugfs
> >> directories? Do they also create such in the top-level? I think no.
> > 
> > I think we want a top-level directory for a bit more structure in
> > debugfs. But I also think we want to create that top-level directory in
> > the module's init function rather than _probe.
> 
> I was thinking about this as well but that would mean your driver will
> create it on every multi-arch kernel.
> 
> This should be then moved to some core bus (and there are examples of
> that, e.g. USB), except there is no core-MC bus code to do that.

We have a utility function (soc_is_tegra()) that we've used in similar
situations in the past. We haven't used them in a little while, but it
could be useful here. It's not for free, but should be fairly quick to
error out early on multi-arch kernels.

Thierry

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  reply	other threads:[~2026-05-28 13:05 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-21 14:05 [PATCH] memory: tegra: add multi-socket support to the memory interconnect Sumit Gupta
2026-05-27 12:55 ` Krzysztof Kozlowski
2026-05-27 14:21   ` Sumit Gupta
2026-05-27 14:46     ` Krzysztof Kozlowski
2026-05-28 11:56       ` Thierry Reding
2026-05-28 12:20         ` Krzysztof Kozlowski
2026-05-28 13:05           ` Thierry Reding [this message]
2026-05-29  9:25             ` Sumit Gupta
2026-05-29 15:23               ` Thierry Reding
2026-06-02 11:49                 ` Sumit Gupta

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=ahg5_Lm51AcfkQm_@orome \
    --to=thierry.reding@kernel.org \
    --cc=bbasu@nvidia.com \
    --cc=jonathanh@nvidia.com \
    --cc=krzk@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=sumitg@nvidia.com \
    --cc=treding@nvidia.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.