Re: [PATCH 1/2] drivers/base/node: merge register_one_node() and register_node() to a single function.

Mike Rapoport
2025-09-25T09:34:29Z

On Thu, Sep 25, 2025 at 10:54:07AM +0200, David Hildenbrand wrote:
> On 24.09.25 20:40, Donet Tom wrote:
> > register_one_node() and register_node() are small functions.
> > This patch merges them into a single function named register_node()
> > to improve code readability.
> >
> > No functional changes are introduced.
> >
> > Signed-off-by: Donet Tom <donettom@linux.ibm.com>
> > ---
>
> [...]
>
> > /**
> > * unregister_node - unregister a node device
> > * @node: node going away
> > @@ -869,7 +842,13 @@ void register_memory_blocks_under_node_hotplug(int nid, unsigned long start_pfn,
> > }
> > #endif /* CONFIG_MEMORY_HOTPLUG */
> > -int register_one_node(int nid)
> > +/*
>
> We can directly convert this to proper kernel doc by using /**
>
> > + * register_node - Setup a sysfs device for a node.
> > + * @nid - Node number to use when creating the device.
> > + *
> > + * Initialize and register the node device.
>
> and briefly describing what the return value means
>
> "Returns 0 on success, ..."

For kernel-doc it should be

Return: 0 on success, ...

>
> > + */
> > +int register_node(int nid)
> > {
> > int error;
> > int cpu;
> > @@ -880,14 +859,23 @@ int register_one_node(int nid)
> > return -ENOMEM;
> > INIT_LIST_HEAD(&node->access_list);
> > - node_devices[nid] = node;
> > - error = register_node(node_devices[nid], nid);
> > + node->dev.id = nid;
> > + node->dev.bus = &node_subsys;
> > + node->dev.release = node_device_release;
> > + node->dev.groups = node_dev_groups;
> > +
> > + error = device_register(&node->dev);
> > if (error) {
> > - node_devices[nid] = NULL;
>
> Wondering why we did have this temporary setting of the node_devices[] in
> there. But I cannot immediately spot why it was required.

register_cpu_under_node() references node_devices, so that assignment can
be moved just before the loop that adds CPUs to node.

> --
> Cheers
>
> David / dhildenb
>

--
Sincerely yours,
Mike.