On 16/07/2025 06:42, Hardik Garg wrote: >>>>> What is a connection ID and why it cannot be inferred from existing >>>>> system API? > >>> The connection-id determines which hypervisor communication channel the >>> guest should use to talk to the VMBus host. Reading from DeviceTree allows >>> platforms to specify their preferred communication channel, making it more >>> flexible (I will add this detail in the commit message). Presently, this > >>> We don't add properties to make things flexible. > > You're right. I should have explained better. The connection ID is a hardware > configuration detail that defines which specific VMBus channel is used for > host-guest communication. This value is configured by the host and passed to > the guest through the host's device tree. Different hypervisor versions and > configurations may require different channels, and this needs to be specified > by the platform.
Host is supposed to have multiple guests, so this feels like you are going to prepare for each guest different DTS with different connection ID. This feels like poor design. DTS is supposed to be relatively static configuration, not runtime choice vmguestid+1. The guest cannot access other configuration channels, can it? If it can, it would mean it can eavesdrop on other guests? So obviously it cannot. Therefore from guest point of view this is completely redundant. Guest cannot use any other value, thus guest should not configure it. The guest has only one channel and uses only this one which gets to right place to the host. Best regards, Krzysztof