On 8/28/25 4:08 PM, Haren Myneni wrote: > The hypervisor signals the OS via a Hypervisor Pipe Event external > interrupt when data is available to be received from the pipe. > Then the OS should call RTAS check-exception and provide the input > Event Mask as defined for the ‘ibm,hvpipe-msg-events’. In response, > check-exception will return an event log containing an Pipe Events > message. This message contains the source ID for which this > message is intended to and the pipe status such as whether the > payload is pending in the hypervisor or pipe to source is closed. > > If there is any user space process waiting in the wait_queue for > the payload from this source ID, wake up that process which can > issue read() to obtain payload with ibm,receive-hvpipe-msg RTAS > or close FD if the pipe to source is closed. > > The hypervisor has one pipe per partition for all sources and it > will not deliver another hvpipe event message until the partition > reads the payload for the previous hvpipe event. So if the source > ID is not found in the source list, issue the dummy > ibm,receive-hvpipe-msg RTAS so that pipe will not blocked. > > Register hvpipe event source interrupt based on entries from > /proc/device-tree//event-sources/ibm,hvpipe-msg-events property. > > Signed-off-by: Haren Myneni <[email protected]> > Reviewed-by: Mahesh Salgaonkar <[email protected]> > Tested-by: Shashank MS <[email protected]> > ---
Reviewed-by: Tyrel Datwyler <[email protected]>
