Re: [PATCH v2] PCI: of: Downgrade error message on missing of_root node

From: Bjorn Helgaas

Date: Wed Nov 05 2025 - 19:23:47 EST


[+cc Lizhi]

On Wed, Nov 05, 2025 at 07:33:40PM +0100, Andrea della Porta wrote:
> When CONFIG_PCI_DYNAMIC_OF_NODES is enabled, an error message
> is generated if no 'of_root' node is defined.
>
> On DT-based systems, this cannot happen as a root DT node is
> always present. On ACPI-based systems, this is not a true error
> because a DT is not used.
>
> Downgrade the pr_err() to pr_info() and reword the message text
> to be less context specific.

of_pci_make_host_bridge_node() is called in the very generic
pci_register_host_bridge() path. Does that mean every boot of a
kernel with CONFIG_PCI_DYNAMIC_OF_NODES on a non-DT system will see
this message?

This message seems like something that will generate user questions.
Or is this really an error, and we were supposed to have created
of_root somewhere but it failed? If so, I would expect a message
where the of_root creation failed.

I guess I'm confused about what the point of this message is. If it's
just a hint that loading an overlay in the future will fail, I assume
we would emit a message at that time, connected with the user action
of trying to load the overlay.

What badness would ensue if we downgraded this message even further
and removed it completely?

> Signed-off-by: Andrea della Porta <andrea.porta@xxxxxxxx>
> ---
> CHANGES in V2:
>
> * message text reworded to be less context specific (Bjorn)
> ---
> drivers/pci/of.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/pci/of.c b/drivers/pci/of.c
> index 3579265f1198..872c36b195e3 100644
> --- a/drivers/pci/of.c
> +++ b/drivers/pci/of.c
> @@ -775,7 +775,7 @@ void of_pci_make_host_bridge_node(struct pci_host_bridge *bridge)
>
> /* Check if there is a DT root node to attach the created node */
> if (!of_root) {
> - pr_err("of_root node is NULL, cannot create PCI host bridge node\n");
> + pr_info("Missing DeviceTree, cannot create PCI host bridge node\n");
> return;
> }
>
> --
> 2.35.3
>