ffa2b7ec | 13-Apr-2021 |
Patrick Williams <patrick@stwcx.xyz> |
bootstrap: fix shellcheck warnings
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I86ef079c9632e5563a1a56d6a2e23aad59ecbc57 |
59521e87 | 11-Feb-2021 |
Matt Spinler <spinler@us.ibm.com> |
associations: Add conditions support
Allow there to be multiple associations files that are selected based on an inventory property condition specified inside of them. The file(s) needs to be locat
associations: Add conditions support
Allow there to be multiple associations files that are selected based on an inventory property condition specified inside of them. The file(s) needs to be located in the same directory as the default associations file, but can have any name as long as it ends in .json. If a conditional associations file is found, the default associations file is ignored.
For example: { "condition": { "path": "system/chassis/motherboard", "interface": "xyz.openbmc_project.Inventory.Decorator.Asset", "property": "Model", "values": [ "ModelA", "ModelB" ] }, "associations": [ // The same associations syntax as described above. ] }
This states that the associations in this file are valid if the motherboard inventory item has a Model property with a value of either ModelA or ModelB.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ib0f32815dee718ea268715896b5470ed2f25119e
show more ...
|
b3d3df57 | 23-Feb-2021 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
New maintainers
My contribution to PIM has been lacking as of late, so I'm forfeiting my commit authority.
This leaves PIM without any committers, so I've nominated a few based on past contribution
New maintainers
My contribution to PIM has been lacking as of late, so I'm forfeiting my commit authority.
This leaves PIM without any committers, so I've nominated a few based on past contribution or subject matter expertise.
Remove Deepak as this email address doesn't work.
Change-Id: I55cff240eb5914c57b1ba5cd2fb20cffecc5530a Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
ee294d68 | 13-Jan-2021 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
manager: fix build fail with CREATE_ASSOCIATIONS
Manager doesn't have any "state" member. The correct member is _status"
Fixes: 23a8d935b326eedc7ae1ff826e6994a0fba0b341 Change-Id: I30497ef9b2dd1c9
manager: fix build fail with CREATE_ASSOCIATIONS
Manager doesn't have any "state" member. The correct member is _status"
Fixes: 23a8d935b326eedc7ae1ff826e6994a0fba0b341 Change-Id: I30497ef9b2dd1c9f8cf19a50328d5717eb0611ad Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
23a8d935 | 06-Dec-2020 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
don't emit unnecessary signals
Fix a number of places where DBus signals are emitted when they should not be:
-Prior to claiming a well known DBus service name -When using the map-of-properties sdb
don't emit unnecessary signals
Fix a number of places where DBus signals are emitted when they should not be:
-Prior to claiming a well known DBus service name -When using the map-of-properties sdbusplus interface constructor
On a system with ~175 inventory interfaces this eliminates 650 PropertiesChanged and ObjectManager signals on PIM startup.
Change-Id: I7b8fa6af69ca3553f5b2ea49e488a75a592a4d0b Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
4627a9cc | 06-Dec-2020 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
manager: add status
Add a status field to assist keeping track of manager state.
STARTING - the manager is initializing RUNNING - the manager event loop is running STOPPING - the manager is shuttin
manager: add status
Add a status field to assist keeping track of manager state.
STARTING - the manager is initializing RUNNING - the manager event loop is running STOPPING - the manager is shutting down
Remove the old _shutdown property and make use of _status == (or !=) STOPPING.
Change-Id: I8326cb164aba32f2d64bbf4fa0753932821571ff Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
e96f2aa7 | 06-Dec-2020 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
manager: explicitly pass deferSignal
Explicitly pass the deferSignal parameter to the dbus bindings to enable creating objects without emitting signals.
The patch does not introduce any functional
manager: explicitly pass deferSignal
Explicitly pass the deferSignal parameter to the dbus bindings to enable creating objects without emitting signals.
The patch does not introduce any functional change - only future capability; the dbus binding argument is defaulted to emit a signal (deferSignal = false) and that logic is preserved - moved from the binding call site to higher up the call stack (updateInterfaces).
A careful observer may notice this patch highlights that interfaces are constructed with the map-of-properties constructor with signals enabled. This is arguably a bug in the bindings - it would never make sense to construct an interface in this fashion and send PropertiesChanged signals while the interface is in the process of being constructed. This patch retains the current broken behavior, with a fix to be provided in a later patch.
Change-Id: I0d9ef93651595b751e96cae07d9f1095770c05a6 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
104ccba9 | 06-Dec-2020 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
associations: explicitly pass deferSignal
Explicitly pass the deferSignal parameter to the dbus bindings to enable creating associations without emitting signals.
The patch does not introduce any f
associations: explicitly pass deferSignal
Explicitly pass the deferSignal parameter to the dbus bindings to enable creating associations without emitting signals.
The patch does not introduce any functional change - only future capability; the dbus binding argument is defaulted to emit a signal (deferSignal = false) and that logic is preserved - moved from the binding call site to higher up the call stack (createAssociations).
Change-Id: I6d55237d43c994442d10b899e725ea36c46dc834 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
20c9435c | 06-Dec-2020 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
manager: claim busname after startup complete
Idiomatic DBus programming would have us defer claiming a well known bus name until after all of our startup initialization is done. This avoids unnece
manager: claim busname after startup complete
Idiomatic DBus programming would have us defer claiming a well known bus name until after all of our startup initialization is done. This avoids unnecessary PropertiesChanged or ObjectManager signals during our startup phase with callbacks that generate dbus activity such as createObjects or setProperty.
Change-Id: I5f91bbc2a9a5b343e8db214ebadb52bc71b2d459 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
acaaab6a | 06-Dec-2020 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
manager: remove unused interface
The manager doesn't use the interface being passed in, so remove it.
Change-Id: I1ebb07a7fa109d41a0a06772c5229b896f4352f3 Signed-off-by: Brad Bishop <bradleyb@fuzzi
manager: remove unused interface
The manager doesn't use the interface being passed in, so remove it.
Change-Id: I1ebb07a7fa109d41a0a06772c5229b896f4352f3 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
ea350c6d | 06-Dec-2020 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
Remove ability to configure Manager attributes
DBus attributes like service, path, and interface have well-known names and thus don't make sense sense to make configurable since they define the sche
Remove ability to configure Manager attributes
DBus attributes like service, path, and interface have well-known names and thus don't make sense sense to make configurable since they define the schema and contracts expected from client applications. As such, remove the autoconf options associated with these.
Change-Id: Ibf6dfdea7bedfeda0bd9788c46e9d1cf043ccf3a Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
ae110f9b | 06-Dec-2020 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
manager: avoid default arguments
Two defaulted parameters of the same type is just a bug waiting to happen. Since there is only a single call site that is already explicitly providing both argument
manager: avoid default arguments
Two defaulted parameters of the same type is just a bug waiting to happen. Since there is only a single call site that is already explicitly providing both arguments, drop the defaults.
Change-Id: Ibf41e53bec603dd1585f24ade7c8e8b15f4f9295 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
a83db30e | 06-Dec-2020 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
style: update clang-format
Pull the most recent OpenBMC style rules and run clang-format.
Change-Id: I11a25ea1e62d6c739010d9dd742a139fb17cc09a Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.co
style: update clang-format
Pull the most recent OpenBMC style rules and run clang-format.
Change-Id: I11a25ea1e62d6c739010d9dd742a139fb17cc09a Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
84b99d99 | 14-Oct-2020 |
Patrick Williams <patrick@stwcx.xyz> |
serialization: add cereal support for maps
xyz.openbmc_project.Inventory.Decorator.ManufacturingExt added a 'dict' type, so we need to add the corresponding cereal header.
Signed-off-by: Patrick Wi
serialization: add cereal support for maps
xyz.openbmc_project.Inventory.Decorator.ManufacturingExt added a 'dict' type, so we need to add the corresponding cereal header.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I6d372298f2c942065d0f143d0e9c4bb0e1f226a6
show more ...
|
55f9eae4 | 13-May-2020 |
Patrick Williams <patrick@stwcx.xyz> |
sdbusplus: replace message::variant with std::variant
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Iea684a5a06d6d8f3e83b0dc1d7b8080dc2751466 |
26f8668d | 13-May-2020 |
Patrick Williams <patrick@stwcx.xyz> |
sdbusplus: remove deprecated variant_ns
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I8ae0323c7eabb6c0cde2126b07a7396b4e3e17ea |
ebff814f | 03-Apr-2020 |
Patrick Williams <patrick@stwcx.xyz> |
MAINTAINERS: update Deepak's email address
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ic50ecf66d87ed071b2e2a93751246c5d0005e486 |
55878989 | 03-Apr-2020 |
Patrick Williams <patrick@stwcx.xyz> |
scripts: convert to python3
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ib181a38f5c3c47f66bed4b7997f2946529f6d05e |
5a71b4c6 | 12-Nov-2019 |
Andrew Geissler <geissonator@yahoo.com> |
dbus-name: do startup work before registering name
The following commit aggravated an existing issue within OpenBMC software:
https://gerrit.openbmc-project.xyz/c/openbmc/meta-phosphor/+/26476
A b
dbus-name: do startup work before registering name
The following commit aggravated an existing issue within OpenBMC software:
https://gerrit.openbmc-project.xyz/c/openbmc/meta-phosphor/+/26476
A busctl pcap of the failure shows mapper trying to introspect the inventory manager while the inventory manager is trying to restore its objects from persistent storage. This results in a timeout on the mapper side and the inventory object never being stored within mapper.
The above commit appears to aggravate this bug by allowing mapper to start introspecting inventory manager sooner then it normally does.
Tested: Verified with this fix that the issue, which was 100% recreatable prior to this change, did not recreate with multiple BMC reboots
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Ic4bd77b2161481a4dc8515d163b82f133a430b50
show more ...
|
af2eb7a0 | 16-Oct-2019 |
Alpana Kumari <alpankum@in.ibm.com> |
Add support for byte array as a property type
It is useful for the PIM to hold byte array type properties. In some cases, data to write to the d-bus is of array of bytes type. One of that case is vp
Add support for byte array as a property type
It is useful for the PIM to hold byte array type properties. In some cases, data to write to the d-bus is of array of bytes type. One of that case is vpd data where D-bus method "Notify" gets called to write it down.
Change-Id: I1cdd3479197b16c86d3976a70636877713cf33ad Signed-off-by: Alpana Kumari <alpankum@in.ibm.com>
show more ...
|
bbacd232 | 17-Oct-2019 |
Gunnar Mills <gmills@us.ibm.com> |
Update object-mapper.md link
object-mapper.md is moving under architecture/ as part of https://gerrit.openbmc-project.xyz/c/openbmc/docs/+/26250/
26250 should merge before this is merged.
Change-I
Update object-mapper.md link
object-mapper.md is moving under architecture/ as part of https://gerrit.openbmc-project.xyz/c/openbmc/docs/+/26250/
26250 should merge before this is merged.
Change-Id: Icf4ace8d827cd6fbfb61f41008b4662635755a3c Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
show more ...
|
ded627c4 | 19-Apr-2019 |
Matt Spinler <spinler@us.ibm.com> |
deserialization: adapt to filesystem API changes
This function also needs to handle the different behavior of the std::filesystem::path::/ operator (as opposed to std::experimental::filesystem::path
deserialization: adapt to filesystem API changes
This function also needs to handle the different behavior of the std::filesystem::path::/ operator (as opposed to std::experimental::filesystem::path).
Change-Id: I913c1a04b90f396e174edf712a5e041e26656528 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
c47ca585 | 06-Mar-2019 |
Matt Spinler <spinler@us.ibm.com> |
Create associations
When a new inventory object is created, check if it has an association that needs to be created in the data loaded from the JSON associations configuration file. If it does, the
Create associations
When a new inventory object is created, check if it has an association that needs to be created in the data loaded from the JSON associations configuration file. If it does, then create an xyz.openbmc_project.Association.Definitions interface object for the association.
Change-Id: Ie850601cbd0acba631c5b66cb4541decf66e286d Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
99e66a03 | 06-Mar-2019 |
Matt Spinler <spinler@us.ibm.com> |
Load the associations definitions
Parse the JSON file to load in the _associations data structures. Any failures will cause an exception to be thrown that will crash the app.
The JSON looks like:
Load the associations definitions
Parse the JSON file to load in the _associations data structures. Any failures will cause an exception to be thrown that will crash the app.
The JSON looks like:
[ { "path": "The relative path of the inventory object to create the org.openbmc.Associations interface on." "endpoints": [ { "types": { "fType": "The forward association type." "rType": "The reverse association type." }, "paths": [ "The list of association endpoints for this inventory path and association type." ] } ] } ]
Change-Id: I098fdc607f0c3ab2861f9b33e3e0d46e4989bd7a Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
852db67b | 06-Mar-2019 |
Matt Spinler <spinler@us.ibm.com> |
Add associations::Manager class
This class will handle creating the org.openbmc.Associations D-Bus interfaces on inventory paths if it has been told to by a JSON configuration file.
Every time PIM
Add associations::Manager class
This class will handle creating the org.openbmc.Associations D-Bus interfaces on inventory paths if it has been told to by a JSON configuration file.
Every time PIM creates a new inventory path, this class will check to see if any associations need to be created.
This functionality is optional, and is off by default. To enable it, the --enable-associations configure option needs to be used.
This commit just introduces the class.
Change-Id: I70045b768f3db683bcfac0c7d4bc9798eb10a5c5 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|