mbox

[PULL,00/15] Machine queue, 2021-07-07

Message ID 20210707193241.2659335-1-ehabkost@redhat.com
State New
Headers show

Pull-request

https://gitlab.com/ehabkost/qemu.git tags/machine-next-pull-request

Message

Eduardo Habkost July 7, 2021, 7:32 p.m. UTC
The following changes since commit 9aef0954195cc592e86846dbbe7f3c2c5603690a:

  Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into staging (2021-07-06 11:24:58 +0100)

are available in the Git repository at:

  https://gitlab.com/ehabkost/qemu.git tags/machine-next-pull-request

for you to fetch changes up to 4dc87143b9dbc0ae5719b67b4e533c824b239f00:

  vfio: Disable only uncoordinated discards for VFIO_TYPE1 iommus (2021-07-06 18:05:26 -0400)

----------------------------------------------------------------
Machine queue, 2021-07-07

Deprecation:
* Deprecate pmem=on with non-DAX capable backend file
  (Igor Mammedov)

Feature:
* virtio-mem: vfio support (David Hildenbrand)

Cleanup:
* vmbus: Don't make QOM property registration conditional
  (Eduardo Habkost)

----------------------------------------------------------------

David Hildenbrand (13):
  memory: Introduce RamDiscardManager for RAM memory regions
  memory: Helpers to copy/free a MemoryRegionSection
  virtio-mem: Factor out traversing unplugged ranges
  virtio-mem: Don't report errors when ram_block_discard_range() fails
  virtio-mem: Implement RamDiscardManager interface
  vfio: Support for RamDiscardManager in the !vIOMMU case
  vfio: Query and store the maximum number of possible DMA mappings
  vfio: Sanity check maximum number of DMA mappings with
    RamDiscardManager
  vfio: Support for RamDiscardManager in the vIOMMU case
  softmmu/physmem: Don't use atomic operations in
    ram_block_discard_(disable|require)
  softmmu/physmem: Extend ram_block_discard_(require|disable) by two
    discard types
  virtio-mem: Require only coordinated discards
  vfio: Disable only uncoordinated discards for VFIO_TYPE1 iommus

Eduardo Habkost (1):
  vmbus: Don't make QOM property registration conditional

Igor Mammedov (1):
  Deprecate pmem=on with non-DAX capable backend file

 include/exec/memory.h          | 324 +++++++++++++++++++++++++--
 include/hw/vfio/vfio-common.h  |  12 +
 include/hw/virtio/virtio-mem.h |   3 +
 include/migration/vmstate.h    |   1 +
 docs/system/deprecated.rst     |  18 ++
 hw/hyperv/vmbus.c              |  20 +-
 hw/vfio/common.c               | 315 +++++++++++++++++++++++++-
 hw/virtio/virtio-mem.c         | 391 ++++++++++++++++++++++++++++-----
 softmmu/memory.c               |  98 +++++++++
 softmmu/physmem.c              | 108 ++++++---
 util/mmap-alloc.c              |   2 +
 11 files changed, 1168 insertions(+), 124 deletions(-)

Comments

Peter Maydell July 8, 2021, 9:53 a.m. UTC | #1
On Wed, 7 Jul 2021 at 20:32, Eduardo Habkost <ehabkost@redhat.com> wrote:
>
> The following changes since commit 9aef0954195cc592e86846dbbe7f3c2c5603690a:
>
>   Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into staging (2021-07-06 11:24:58 +0100)
>
> are available in the Git repository at:
>
>   https://gitlab.com/ehabkost/qemu.git tags/machine-next-pull-request
>
> for you to fetch changes up to 4dc87143b9dbc0ae5719b67b4e533c824b239f00:
>
>   vfio: Disable only uncoordinated discards for VFIO_TYPE1 iommus (2021-07-06 18:05:26 -0400)
>
> ----------------------------------------------------------------
> Machine queue, 2021-07-07
>
> Deprecation:
> * Deprecate pmem=on with non-DAX capable backend file
>   (Igor Mammedov)
>
> Feature:
> * virtio-mem: vfio support (David Hildenbrand)
>
> Cleanup:
> * vmbus: Don't make QOM property registration conditional
>   (Eduardo Habkost)
>

Hi; this generates warnings in the docs build:

/home/pm/qemu/docs/../include/exec/memory.h:2286: warning: Function
parameter or member 'rdm' not described in
'memory_region_set_ram_discard_manager'
/home/pm/qemu/docs/../include/exec/memory.h:2286: warning: Excess
function parameter 'urn' description in
'memory_region_set_ram_discard_manager'

This seems to be because the function prototype for this
function says it takes parameters 'mr' and 'rdm', but the
doc comment documents 'mr' and 'urn'.

thanks
-- PMM
David Hildenbrand July 8, 2021, 1:03 p.m. UTC | #2
On 08.07.21 11:53, Peter Maydell wrote:
> On Wed, 7 Jul 2021 at 20:32, Eduardo Habkost <ehabkost@redhat.com> wrote:
>>
>> The following changes since commit 9aef0954195cc592e86846dbbe7f3c2c5603690a:
>>
>>    Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into staging (2021-07-06 11:24:58 +0100)
>>
>> are available in the Git repository at:
>>
>>    https://gitlab.com/ehabkost/qemu.git tags/machine-next-pull-request
>>
>> for you to fetch changes up to 4dc87143b9dbc0ae5719b67b4e533c824b239f00:
>>
>>    vfio: Disable only uncoordinated discards for VFIO_TYPE1 iommus (2021-07-06 18:05:26 -0400)
>>
>> ----------------------------------------------------------------
>> Machine queue, 2021-07-07
>>
>> Deprecation:
>> * Deprecate pmem=on with non-DAX capable backend file
>>    (Igor Mammedov)
>>
>> Feature:
>> * virtio-mem: vfio support (David Hildenbrand)
>>
>> Cleanup:
>> * vmbus: Don't make QOM property registration conditional
>>    (Eduardo Habkost)
>>
> 
> Hi; this generates warnings in the docs build:
> 
> /home/pm/qemu/docs/../include/exec/memory.h:2286: warning: Function
> parameter or member 'rdm' not described in
> 'memory_region_set_ram_discard_manager'
> /home/pm/qemu/docs/../include/exec/memory.h:2286: warning: Excess
> function parameter 'urn' description in
> 'memory_region_set_ram_discard_manager'
> 
> This seems to be because the function prototype for this
> function says it takes parameters 'mr' and 'rdm', but the
> doc comment documents 'mr' and 'urn'.

That should be easy to fix

diff --git a/include/exec/memory.h b/include/exec/memory.h
index 87357a724a..c3d417d317 100644
--- a/include/exec/memory.h
+++ b/include/exec/memory.h
@@ -2280,7 +2280,7 @@ static inline bool 
memory_region_has_ram_discard_manager(MemoryRegion *mr)
   * #RamDiscardManager assigned.
   *
   * @mr: the #MemoryRegion
- * @urn: #RamDiscardManager to set
+ * @rdm: #RamDiscardManager to set
   */
  void memory_region_set_ram_discard_manager(MemoryRegion *mr,
                                             RamDiscardManager *rdm);


(don't ask me how I ended up with urn instead of rdm)
Eduardo Habkost July 8, 2021, 3:32 p.m. UTC | #3
On Thu, Jul 8, 2021 at 5:53 AM Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On Wed, 7 Jul 2021 at 20:32, Eduardo Habkost <ehabkost@redhat.com> wrote:
> >
> > The following changes since commit 9aef0954195cc592e86846dbbe7f3c2c5603690a:
> >
> >   Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into staging (2021-07-06 11:24:58 +0100)
> >
> > are available in the Git repository at:
> >
> >   https://gitlab.com/ehabkost/qemu.git tags/machine-next-pull-request
> >
> > for you to fetch changes up to 4dc87143b9dbc0ae5719b67b4e533c824b239f00:
> >
> >   vfio: Disable only uncoordinated discards for VFIO_TYPE1 iommus (2021-07-06 18:05:26 -0400)
> >
> > ----------------------------------------------------------------
> > Machine queue, 2021-07-07
> >
> > Deprecation:
> > * Deprecate pmem=on with non-DAX capable backend file
> >   (Igor Mammedov)
> >
> > Feature:
> > * virtio-mem: vfio support (David Hildenbrand)
> >
> > Cleanup:
> > * vmbus: Don't make QOM property registration conditional
> >   (Eduardo Habkost)
> >
>
> Hi; this generates warnings in the docs build:
>
> /home/pm/qemu/docs/../include/exec/memory.h:2286: warning: Function
> parameter or member 'rdm' not described in
> 'memory_region_set_ram_discard_manager'
> /home/pm/qemu/docs/../include/exec/memory.h:2286: warning: Excess
> function parameter 'urn' description in
> 'memory_region_set_ram_discard_manager'
>
> This seems to be because the function prototype for this
> function says it takes parameters 'mr' and 'rdm', but the
> doc comment documents 'mr' and 'urn'.

Sorry, I will apply David's fixup and resubmit.

It worries me that this is not being detected by our GitLab CI jobs.
Is anybody working to fix that?

--
Eduardo