• Vitaly Kuznetsov's avatar
    hv_utils: Set the maximum packet size for VSS driver to the length of the receive buffer · 1707cfa1
    Vitaly Kuznetsov authored
    [ Upstream commit 9d68cd91 ]
    
    Commit adae1e93 ("Drivers: hv: vmbus: Copy packets sent by Hyper-V out
    of the ring buffer") introduced a notion of maximum packet size and for
    KVM and FCOPY drivers set it to the length of the receive buffer. VSS
    driver wasn't updated, this means that the maximum packet size is now
    VMBUS_DEFAULT_MAX_PKT_SIZE (4k). Apparently, this is not enough. I'm
    observing a packet of 6304 bytes which is being truncated to 4096. When
    VSS driver tries to read next packet from ring buffer it starts from the
    wrong offset and receives garbage.
    
    Set the maximum packet size to 'HV_HYP_PAGE_SIZE * 2' in VSS driver. This
    matches the length of the receive buffer and is in line with other utils
    drivers.
    
    Fixes: adae1e93
    
     ("Drivers: hv: vmbus: Copy packets sent by Hyper-V out of the ring buffer")
    Signed-off-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
    Reviewed-by: Michael Kell...
    1707cfa1
hv_snapshot.c 11.7 KB