[lkml]   [2009]   [Aug]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [Alacrityvm-devel] [PATCH v3 3/6] vbus: add a "vbus-proxy" bus model for vbus_driver objects
    On 08/19/2009 12:26 AM, Avi Kivity wrote:
    >> Off the top of my head, I would think that transporting userspace
    >> addresses in the ring (for copy_(to|from)_user()) vs. physical addresses
    >> (for DMAEngine) might be a problem. Pinning userspace pages into memory
    >> for DMA is a bit of a pain, though it is possible.
    > Oh, the ring doesn't transport userspace addresses. It transports
    > guest addresses, and it's up to vhost to do something with them.
    > Currently vhost supports two translation modes:
    > 1. virtio address == host virtual address (using copy_to_user)
    > 2. virtio address == offsetted host virtual address (using copy_to_user)
    > The latter mode is used for kvm guests (with multiple offsets,
    > skipping some details).
    > I think you need to add a third mode, virtio address == host physical
    > address (using dma engine). Once you do that, and wire up the
    > signalling, things should work.

    You don't need in fact a third mode. You can mmap the x86 address space
    into your ppc userspace and use the second mode. All you need then is
    the dma engine glue and byte swapping.

    I have a truly marvellous patch that fixes the bug which this
    signature is too narrow to contain.

     \ /
      Last update: 2009-08-19 00:09    [W:0.036 / U:0.752 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site