Missed interfacesRemoved signal callbacks in object-mapper results in invalidated DBus objects

Lei Yu yulei.sh at bytedance.com
Sat Apr 2 14:33:57 AEDT 2022


On Sat, Apr 2, 2022 at 4:54 AM Patrick Williams <patrick at stwcx.xyz> wrote:
>
> On Mon, Mar 28, 2022 at 09:19:40PM +0800, Lei Yu wrote:
>
> > This looks like some fundamental issue in dbus-broker or sdbusplus.
> > Is there anyone who hits the similar issue?
>
> I've have a write-up on what I intend to do about this issue at:
>     https://www.stwcx.xyz/blog/2022/04/01/sdbusplus-object-signals.html

Thanks! It's a nice article and clarifies the different cases.
But I still have a question about `Permanent Sub-Objects`:

> We never want the sub-object to deal with its own lifetime signals! If we did they’d also be the lifetime signals for the parent object because they are all residing at the same dbus object-path

For example the `Value` and `Critical` objects in phosphor-hwmon:
1. when it's destructed, it will emit the interfacesRemoved signal for
the `Value` interface, but no such signal for the `Critical`
interface, is it? I do not think it's expected behavior.
2. It has the assumption that the service needs to know which is the
permanent `main` object, and which are the `sub` objects. What if the
service could not tell which is the main and which is the sub? I think
this makes it harder for sdbusplus' users to design the object
hierarchy, is it?


-- 
BRs,
Lei YU


More information about the openbmc mailing list