• N
    rpc: fix propagation of errors from server · 4deed5f3
    Nikolay Shirokovskiy 提交于
    Stream server error is not propagated if thread does not have the buck.
    In case we have the buck we are ok due to the code added in [1].
    
    Let's check for stream error on all paths. Now we don't need
    to raise error in virNetClientCallDispatchStream.
    
    Old code reported error only if the first message in wait
    queue awaits reply. It is odd as depends on wait queue
    situation. For example if we have only TX
    message in queue and in one iteration loop both send the
    message and receive error then thread sending TX message did
    not receive the error. Next if we have RX message (first)
    and TX message (second) in queue and in one iteration
    loop both send the TX message and receive error then
    thread sending TX message received error. In short
    it was inconsistent. Let's report error whenever
    we received it and for every type of message as it makes
    sense to report errors as early as possible.
    
    [1] 16c6e2b4: Fix propagation of RPC errors from streams
    Signed-off-by: NNikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
    4deed5f3
virnetclient.c 63.0 KB