Re: [PATCH 2/4] software node: use kobject_get_unless_zero() in software_node_find_by_name()
From: Andy Shevchenko
Date: Wed Nov 04 2026 - 17:52:59 EST
On Wed, Nov 04, 2026 at 11:43:14PM +0800, Peng Fan (OSS) wrote:
> software_node_find_by_name() also walks the swnode kset list and takes a
> reference with swnode_get(). Like the pointer-based lookup, it can
> encounter an entry whose refcount has already reached zero but which is
> still linked until its delayed release callback runs.
>
> Use kobject_get_unless_zero() and continue scanning when the entry is
> already dying.
...
> if (parent == swnode->node->parent && swnode->node->name &&
> !strcmp(name, swnode->node->name)) {
> - swnode_get(swnode);
> - break;
> + if (kobject_get_unless_zero(k))
> + break;
Can we rather see even in the previous patch something like
... swnode_get_alive(...)
{
...uses kobject_get_unless_zero()...
}
?
> }
--
With Best Regards,
Andy Shevchenko