qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: David Hildenbrand <david@redhat.com>
To: Tony Krowiak <akrowiak@linux.ibm.com>, qemu-devel@nongnu.org
Cc: Eric Farman <farman@linux.ibm.com>,
	Alex Williamson <alex.williamson@redhat.com>,
	Eduardo Habkost <ehabkost@redhat.com>,
	kvm@vger.kernel.org, "Michael S . Tsirkin" <mst@redhat.com>,
	Pierre Morel <pmorel@linux.ibm.com>,
	Cornelia Huck <cohuck@redhat.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	qemu-s390x@nongnu.org, Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <rth@twiddle.net>
Subject: Re: [PATCH v4 02/21] vfio: Convert to ram_block_discard_disable()
Date: Wed, 10 Jun 2020 16:13:38 +0200	[thread overview]
Message-ID: <56d20632-cab6-5768-ce9f-96f6587e4c2f@redhat.com> (raw)
In-Reply-To: <8c71bfda-e958-56f8-ddaf-6a831fff2bc6@linux.ibm.com>

On 10.06.20 15:04, Tony Krowiak wrote:
> 
> 
> On 6/10/20 7:54 AM, David Hildenbrand wrote:
>> VFIO is (except devices without a physical IOMMU or some mediated devices)
>> incompatible with discarding of RAM. The kernel will pin basically all VM
>> memory. Let's convert to ram_block_discard_disable(), which can now
>> fail, in contrast to qemu_balloon_inhibit().
>>
>> Leave "x-balloon-allowed" named as it is for now.
>>
>> Cc: Cornelia Huck <cohuck@redhat.com>
>> Cc: Alex Williamson <alex.williamson@redhat.com>
>> Cc: Christian Borntraeger <borntraeger@de.ibm.com>
>> Cc: Tony Krowiak <akrowiak@linux.ibm.com>
>> Cc: Halil Pasic <pasic@linux.ibm.com>
>> Cc: Pierre Morel <pmorel@linux.ibm.com>
>> Cc: Eric Farman <farman@linux.ibm.com>
>> Signed-off-by: David Hildenbrand <david@redhat.com>
> 
> See my two minor comments, other than that:
> Reviewed-by: Tony Krowiak <akrowiak@linux.ibm.com>
> 
>> ---
>>   hw/vfio/ap.c                  | 10 +++----
>>   hw/vfio/ccw.c                 | 11 ++++----
>>   hw/vfio/common.c              | 53 +++++++++++++++++++----------------
>>   hw/vfio/pci.c                 |  6 ++--
>>   include/hw/vfio/vfio-common.h |  4 +--
>>   5 files changed, 45 insertions(+), 39 deletions(-)
>>
>> diff --git a/hw/vfio/ap.c b/hw/vfio/ap.c
>> index 95564c17ed..d0b1bc7581 100644
>> --- a/hw/vfio/ap.c
>> +++ b/hw/vfio/ap.c
>> @@ -105,12 +105,12 @@ static void vfio_ap_realize(DeviceState *dev, Error **errp)
>>       vapdev->vdev.dev = dev;
>>   
>>       /*
>> -     * vfio-ap devices operate in a way compatible with
>> -     * memory ballooning, as no pages are pinned in the host.
>> -     * This needs to be set before vfio_get_device() for vfio common to
>> -     * handle the balloon inhibitor.
>> +     * vfio-ap devices operate in a way compatible discarding of memory in
> 
> s/compatible discarding/compatible with discarding/?

Very right!

[...]
>> diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c
>> index 342dd6b912..c33c11b7e4 100644
>> --- a/hw/vfio/pci.c
>> +++ b/hw/vfio/pci.c
>> @@ -2796,7 +2796,7 @@ static void vfio_realize(PCIDevice *pdev, Error **errp)
>>       }
>>   
>>       /*
>> -     * Mediated devices *might* operate compatibly with memory ballooning, but
>> +     * Mediated devices *might* operate compatibly with discarding of RAM, but
>>        * we cannot know for certain, it depends on whether the mdev vendor driver
>>        * stays in sync with the active working set of the guest driver.  Prevent
>>        * the x-balloon-allowed option unless this is minimally an mdev device.
>> @@ -2809,7 +2809,7 @@ static void vfio_realize(PCIDevice *pdev, Error **errp)
>>   
>>       trace_vfio_mdev(vdev->vbasedev.name, is_mdev);
>>   
>> -    if (vdev->vbasedev.balloon_allowed && !is_mdev) {
>> +    if (vdev->vbasedev.ram_block_discard_allowed && !is_mdev) {
>>           error_setg(errp, "x-balloon-allowed only potentially compatible "
>>                      "with mdev devices");
> 
> Should this error message be changed?

I didn't rename the property ("x-balloon-allowed"), so the error message
is still correct.

Thanks!

-- 
Thanks,

David / dhildenb



  reply	other threads:[~2020-06-10 14:14 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-10 11:53 [PATCH v4 00/21] virtio-mem: Paravirtualized memory hot(un)plug David Hildenbrand
2020-06-10 11:53 ` [PATCH v4 01/21] exec: Introduce ram_block_discard_(disable|require)() David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 02/21] vfio: Convert to ram_block_discard_disable() David Hildenbrand
2020-06-10 13:04   ` Tony Krowiak
2020-06-10 14:13     ` David Hildenbrand [this message]
2020-06-16 11:15   ` Cornelia Huck
2020-06-10 11:54 ` [PATCH v4 03/21] accel/kvm: " David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 04/21] s390x/pv: " David Hildenbrand
2020-06-16 11:17   ` Cornelia Huck
2020-06-10 11:54 ` [PATCH v4 05/21] virtio-balloon: Rip out qemu_balloon_inhibit() David Hildenbrand
2020-06-16 10:56   ` Dr. David Alan Gilbert
2020-06-24 15:32   ` Michael S. Tsirkin
2020-06-10 11:54 ` [PATCH v4 06/21] target/i386: sev: Use ram_block_discard_disable() David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 07/21] migration/rdma: " David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 08/21] migration/colo: " David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 09/21] linux-headers: update to contain virtio-mem David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 10/21] virtio-mem: Paravirtualized memory hot(un)plug David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 11/21] virtio-pci: Proxy for virtio-mem David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 12/21] MAINTAINERS: Add myself as virtio-mem maintainer David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 13/21] hmp: Handle virtio-mem when printing memory device info David Hildenbrand
2020-06-17 17:53   ` Dr. David Alan Gilbert
2020-06-17 17:54   ` Dr. David Alan Gilbert
2020-06-10 11:54 ` [PATCH v4 14/21] numa: Handle virtio-mem in NUMA stats David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 15/21] pc: Support for virtio-mem-pci David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 16/21] virtio-mem: Allow notifiers for size changes David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 17/21] virtio-pci: Send qapi events when the virtio-mem " David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 18/21] virtio-mem: Migration sanity checks David Hildenbrand
2020-06-17 17:59   ` Dr. David Alan Gilbert
2020-06-18 10:39     ` David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 19/21] virtio-mem: Add trace events David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 20/21] virtio-mem: Exclude unplugged memory during migration David Hildenbrand
2020-06-10 11:54 ` [PATCH v4 21/21] numa: Auto-enable NUMA when any memory devices are possible David Hildenbrand
2020-06-24 15:33 ` [PATCH v4 00/21] virtio-mem: Paravirtualized memory hot(un)plug Michael S. Tsirkin
2020-06-24 15:40   ` David Hildenbrand

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56d20632-cab6-5768-ce9f-96f6587e4c2f@redhat.com \
    --to=david@redhat.com \
    --cc=akrowiak@linux.ibm.com \
    --cc=alex.williamson@redhat.com \
    --cc=borntraeger@de.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=farman@linux.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=mst@redhat.com \
    --cc=pasic@linux.ibm.com \
    --cc=pbonzini@redhat.com \
    --cc=pmorel@linux.ibm.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=rth@twiddle.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).