46b11f0 OvmfPkg/VirtioNetDxe: alloc RxBuf using AllocateSharedPages()

5 files Authored by Brijesh Singh 6 years ago, Committed by lersek 6 years ago,
    OvmfPkg/VirtioNetDxe: alloc RxBuf using AllocateSharedPages()
    
    When device is behind the IOMMU, VirtioNetDxe is required to use the
    device address in bus master operations. RxBuf is allocated using
    AllocatePool() which returns the system physical address.
    
    The patch uses VIRTIO_DEVICE_PROTOCOL.AllocateSharedPages() to allocate
    the RxBuf and map with VirtioMapAllBytesInSharedBuffer() so that we can
    obtain the device address for RxBuf.
    
    Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Cc: Jordan Justen <jordan.l.justen@intel.com>
    Cc: Tom Lendacky <thomas.lendacky@amd.com>
    Cc: Laszlo Ersek <lersek@redhat.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Brijesh Singh <brijesh.singh@amd.com>
    Reviewed-by: Laszlo Ersek <lersek@redhat.com>
    Regression-tested-by: Laszlo Ersek <lersek@redhat.com>
    Tested-by: Laszlo Ersek <lersek@redhat.com>