MCTP control messages handling in libmctp
wiktor.golgowski at linux.intel.com
Sat Mar 21 05:21:26 AEDT 2020
I am currently working on a base implementation for handling control
command requests in libmctp (relevant change here: ). As I am not
sure which solution would be the best here, I would like to put a
quick summary of the different approaches that could be used for
further discussion on Monday PMCI WG meeting:
1. External handling (as Andrew proposes)
All control messages are handled in the layer calling into
libmctp. The daemon is in control of how messages are handled.
2. Separate handlers (what  introduces)
There are separate callbacks for regular messages, control messages and
transport-specific control messages. The main reason for this behavior
is that I expect transport-specific commands to be executed in the
context of the specific binding (serial, VDM, SMBus). I also hope that
the daemon could be at least partially binding-agnostic.
3. Handling is split between the caller and the library
We could identify control command requests that libmctp (or its
specific binding) is able to fulfill independently from the daemon
(for example Get EID) and leave the implementation of the rest to the
I hope we could find the best solution to implement. Looking forward
to the Monday meeting.
More information about the openbmc