[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 1/2] vhost: Don't pass ram device sections
From: |
Michael S. Tsirkin |
Subject: |
Re: [PATCH 1/2] vhost: Don't pass ram device sections |
Date: |
Thu, 9 Jan 2020 07:42:08 -0500 |
On Thu, Jan 09, 2020 at 12:38:07PM +0000, Roman Kagan wrote:
> On Wed, Jan 08, 2020 at 01:53:52PM +0000, Dr. David Alan Gilbert (git) wrote:
> > Don't pass RAM blocks that are marked as ram devices to vhost.
> > There's normally something special about them and they're not
> > normally just shared memory.
>
> Does this something special about them, whatever it is, make them
> automatically ineligible for DMA? Why should vhost ignore them?
> /me goes reading what ram_device memory regions are...
>
> Roman.
Well device RAM can be DMA'd into.
But vhost is a host side of virtio as opposed to a random device, we
know what it's doing, so skipping specific areas that we know are of no
interest to virtio devices for performance/internal implementation
reasons is OK.
>
> > Signed-off-by: Dr. David Alan Gilbert <address@hidden>
> > ---
> > hw/virtio/vhost.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c
> > index 4da0d5a6c5..c81f0be71b 100644
> > --- a/hw/virtio/vhost.c
> > +++ b/hw/virtio/vhost.c
> > @@ -402,6 +402,7 @@ static bool vhost_section(struct vhost_dev *dev,
> > MemoryRegionSection *section)
> > bool log_dirty = memory_region_get_dirty_log_mask(section->mr) &
> > ~(1 << DIRTY_MEMORY_MIGRATION);
> > result = memory_region_is_ram(section->mr) &&
> > + !memory_region_is_ram_device(section->mr) &&
> > !memory_region_is_rom(section->mr);
> >
> > /* Vhost doesn't handle any block which is doing dirty-tracking other
> > --
> > 2.24.1
> >
> >
- [PATCH 0/2] exclude hyperv synic sections from vhost, Dr. David Alan Gilbert (git), 2020/01/08
- [PATCH 1/2] vhost: Don't pass ram device sections, Dr. David Alan Gilbert (git), 2020/01/08
- [PATCH 2/2] hyperv/synic: Allocate as ram_device, Dr. David Alan Gilbert (git), 2020/01/08
- Re: [PATCH 2/2] hyperv/synic: Allocate as ram_device, Michael S. Tsirkin, 2020/01/09
- Re: [PATCH 2/2] hyperv/synic: Allocate as ram_device, Dr. David Alan Gilbert, 2020/01/09
- Re: [PATCH 2/2] hyperv/synic: Allocate as ram_device, Michael S. Tsirkin, 2020/01/09
- Re: [PATCH 2/2] hyperv/synic: Allocate as ram_device, Dr. David Alan Gilbert, 2020/01/09
- Re: [PATCH 2/2] hyperv/synic: Allocate as ram_device, Vitaly Kuznetsov, 2020/01/09
- Re: [PATCH 2/2] hyperv/synic: Allocate as ram_device, Roman Kagan, 2020/01/09
- Re: [PATCH 2/2] hyperv/synic: Allocate as ram_device, Dr. David Alan Gilbert, 2020/01/09
- Re: [PATCH 2/2] hyperv/synic: Allocate as ram_device, Roman Kagan, 2020/01/09
- Re: [PATCH 2/2] hyperv/synic: Allocate as ram_device, Dr. David Alan Gilbert, 2020/01/09