All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: Cam Macdonell <cam@cs.ualberta.ca>
Cc: qemu-devel@nongnu.org, Blue Swirl <blauwirbel@gmail.com>,
	KVM General <kvm@vger.kernel.org>
Subject: Re: [Qemu-devel] Re: [PATCH v6 0/6] Inter-VM Shared Memory Device with migration support
Date: Mon, 14 Jun 2010 10:54:10 -0500	[thread overview]
Message-ID: <4C1650A2.1000202@codemonkey.ws> (raw)
In-Reply-To: <AANLkTikKc3h8PmnvZ_ddn_-jy5piXdT9Fes1GGO71TaV@mail.gmail.com>

On 06/11/2010 05:03 PM, Cam Macdonell wrote:
> Hi Anthony,
>
> Is my implementation of master/peer roles acceptable?

Yes, it looks good.

>    I realize with
> Alex's RAMList changes I may need to modify my patch, but is the
> approach of marking memory non-migratable an acceptable
> implementation?
>    

Please make sure to address some of the CODING_STYLE comments too.

Regards,

Anthony Liguori

> Thanks,
> Cam
>
> On Fri, Jun 4, 2010 at 3:45 PM, Cam Macdonell<cam@cs.ualberta.ca>  wrote:
>    
>> Latest patch for PCI shared memory device that maps a host shared memory object
>> to be shared between guests
>>
>> new in this series
>>     - migration support with 'master' and 'peer' roles for guest to determine
>>       who "owns" memory.  With 'master', the guest has the canonical copy of
>>       the shared memory and will copy it with it on migration.  With 'role=peer',
>>       the guest will not copy the shared memory, but attach to what is on the
>>       destination machine.
>>     - modified phys_ram_dirty array for marking memory as not to be migrated
>>     - add support for non-migrated memory regions
>>
>>     v5:
>>     - fixed segfault for non-server case
>>     - code style fixes
>>     - removed limit on the number of guests
>>     - shared memory server is now in qemu.git/contrib
>>     - made ioeventfd setup function generic
>>     - removed interrupts when guest joined (let application handle it)
>>
>>     v4:
>>     - moved to single Doorbell register and use datamatch to trigger different
>>       VMs rather than one register per eventfd
>>     - remove writing arbitrary values to eventfds.  Only values of 1 are now
>>       written to ensure correct usage
>>
>> Cam Macdonell (6):
>>   Device specification for shared memory PCI device
>>   Adds two new functions for assigning ioeventfd and irqfds.
>>   Change phys_ram_dirty to phys_ram_status
>>   Add support for marking memory to not be migrated.  On migration,
>>     memory is checked for the NO_MIGRATION_FLAG.
>>   Inter-VM shared memory PCI device
>>   the stand-alone shared memory server for inter-VM shared memory
>>
>>   Makefile.target                         |    3 +
>>   arch_init.c                             |   28 +-
>>   contrib/ivshmem-server/Makefile         |   16 +
>>   contrib/ivshmem-server/README           |   30 ++
>>   contrib/ivshmem-server/ivshmem_server.c |  353 +++++++++++++
>>   contrib/ivshmem-server/send_scm.c       |  208 ++++++++
>>   contrib/ivshmem-server/send_scm.h       |   19 +
>>   cpu-all.h                               |   18 +-
>>   cpu-common.h                            |    2 +
>>   docs/specs/ivshmem_device_spec.txt      |   96 ++++
>>   exec.c                                  |   48 ++-
>>   hw/ivshmem.c                            |  852 +++++++++++++++++++++++++++++++
>>   kvm-all.c                               |   32 ++
>>   kvm.h                                   |    1 +
>>   qemu-char.c                             |    6 +
>>   qemu-char.h                             |    3 +
>>   qemu-doc.texi                           |   32 ++
>>   17 files changed, 1710 insertions(+), 37 deletions(-)
>>   create mode 100644 contrib/ivshmem-server/Makefile
>>   create mode 100644 contrib/ivshmem-server/README
>>   create mode 100644 contrib/ivshmem-server/ivshmem_server.c
>>   create mode 100644 contrib/ivshmem-server/send_scm.c
>>   create mode 100644 contrib/ivshmem-server/send_scm.h
>>   create mode 100644 docs/specs/ivshmem_device_spec.txt
>>   create mode 100644 hw/ivshmem.c
>>
>>
>>      
>
>    


WARNING: multiple messages have this Message-ID (diff)
From: Anthony Liguori <anthony@codemonkey.ws>
To: Cam Macdonell <cam@cs.ualberta.ca>
Cc: Blue Swirl <blauwirbel@gmail.com>,
	qemu-devel@nongnu.org, KVM General <kvm@vger.kernel.org>
Subject: Re: [Qemu-devel] Re: [PATCH v6 0/6] Inter-VM Shared Memory Device with migration support
Date: Mon, 14 Jun 2010 10:54:10 -0500	[thread overview]
Message-ID: <4C1650A2.1000202@codemonkey.ws> (raw)
In-Reply-To: <AANLkTikKc3h8PmnvZ_ddn_-jy5piXdT9Fes1GGO71TaV@mail.gmail.com>

On 06/11/2010 05:03 PM, Cam Macdonell wrote:
> Hi Anthony,
>
> Is my implementation of master/peer roles acceptable?

Yes, it looks good.

>    I realize with
> Alex's RAMList changes I may need to modify my patch, but is the
> approach of marking memory non-migratable an acceptable
> implementation?
>    

Please make sure to address some of the CODING_STYLE comments too.

Regards,

Anthony Liguori

> Thanks,
> Cam
>
> On Fri, Jun 4, 2010 at 3:45 PM, Cam Macdonell<cam@cs.ualberta.ca>  wrote:
>    
>> Latest patch for PCI shared memory device that maps a host shared memory object
>> to be shared between guests
>>
>> new in this series
>>     - migration support with 'master' and 'peer' roles for guest to determine
>>       who "owns" memory.  With 'master', the guest has the canonical copy of
>>       the shared memory and will copy it with it on migration.  With 'role=peer',
>>       the guest will not copy the shared memory, but attach to what is on the
>>       destination machine.
>>     - modified phys_ram_dirty array for marking memory as not to be migrated
>>     - add support for non-migrated memory regions
>>
>>     v5:
>>     - fixed segfault for non-server case
>>     - code style fixes
>>     - removed limit on the number of guests
>>     - shared memory server is now in qemu.git/contrib
>>     - made ioeventfd setup function generic
>>     - removed interrupts when guest joined (let application handle it)
>>
>>     v4:
>>     - moved to single Doorbell register and use datamatch to trigger different
>>       VMs rather than one register per eventfd
>>     - remove writing arbitrary values to eventfds.  Only values of 1 are now
>>       written to ensure correct usage
>>
>> Cam Macdonell (6):
>>   Device specification for shared memory PCI device
>>   Adds two new functions for assigning ioeventfd and irqfds.
>>   Change phys_ram_dirty to phys_ram_status
>>   Add support for marking memory to not be migrated.  On migration,
>>     memory is checked for the NO_MIGRATION_FLAG.
>>   Inter-VM shared memory PCI device
>>   the stand-alone shared memory server for inter-VM shared memory
>>
>>   Makefile.target                         |    3 +
>>   arch_init.c                             |   28 +-
>>   contrib/ivshmem-server/Makefile         |   16 +
>>   contrib/ivshmem-server/README           |   30 ++
>>   contrib/ivshmem-server/ivshmem_server.c |  353 +++++++++++++
>>   contrib/ivshmem-server/send_scm.c       |  208 ++++++++
>>   contrib/ivshmem-server/send_scm.h       |   19 +
>>   cpu-all.h                               |   18 +-
>>   cpu-common.h                            |    2 +
>>   docs/specs/ivshmem_device_spec.txt      |   96 ++++
>>   exec.c                                  |   48 ++-
>>   hw/ivshmem.c                            |  852 +++++++++++++++++++++++++++++++
>>   kvm-all.c                               |   32 ++
>>   kvm.h                                   |    1 +
>>   qemu-char.c                             |    6 +
>>   qemu-char.h                             |    3 +
>>   qemu-doc.texi                           |   32 ++
>>   17 files changed, 1710 insertions(+), 37 deletions(-)
>>   create mode 100644 contrib/ivshmem-server/Makefile
>>   create mode 100644 contrib/ivshmem-server/README
>>   create mode 100644 contrib/ivshmem-server/ivshmem_server.c
>>   create mode 100644 contrib/ivshmem-server/send_scm.c
>>   create mode 100644 contrib/ivshmem-server/send_scm.h
>>   create mode 100644 docs/specs/ivshmem_device_spec.txt
>>   create mode 100644 hw/ivshmem.c
>>
>>
>>      
>
>    

  reply	other threads:[~2010-06-14 15:54 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-04 21:45 [PATCH v6 0/6] Inter-VM Shared Memory Device with migration support Cam Macdonell
2010-06-04 21:45 ` [Qemu-devel] " Cam Macdonell
2010-06-04 21:45 ` [PATCH v6 1/6] Device specification for shared memory PCI device Cam Macdonell
2010-06-04 21:45   ` [Qemu-devel] " Cam Macdonell
2010-06-04 21:45   ` [PATCH v6 2/6] Add function to assign ioeventfd to MMIO Cam Macdonell
2010-06-04 21:45     ` [Qemu-devel] " Cam Macdonell
2010-06-04 21:45     ` [PATCH v6 3/6] Change phys_ram_dirty to phys_ram_status Cam Macdonell
2010-06-04 21:45       ` [Qemu-devel] " Cam Macdonell
2010-06-04 21:45       ` [PATCH v6 4/6] Add support for marking memory to not be migrated. On migration, memory is checked for the NO_MIGRATION_FLAG Cam Macdonell
2010-06-04 21:45         ` [Qemu-devel] " Cam Macdonell
2010-06-04 21:45         ` [PATCH v6 5/6] Inter-VM shared memory PCI device Cam Macdonell
2010-06-04 21:45           ` [Qemu-devel] " Cam Macdonell
2010-06-04 21:45           ` [PATCH v6 6/6] the stand-alone shared memory server for inter-VM shared memory Cam Macdonell
2010-06-04 21:45             ` [Qemu-devel] " Cam Macdonell
2010-06-04 21:47             ` [PATCH v6] Shared memory uio_pci driver Cam Macdonell
2010-06-04 21:47               ` [Qemu-devel] " Cam Macdonell
2010-06-14 15:53             ` [Qemu-devel] [PATCH v6 6/6] the stand-alone shared memory server for inter-VM shared memory Anthony Liguori
2010-06-14 22:03               ` Cam Macdonell
2010-06-23 13:12               ` Avi Kivity
2010-06-23 21:54                 ` Anthony Liguori
2010-06-05  9:44           ` [Qemu-devel] [PATCH v6 5/6] Inter-VM shared memory PCI device Blue Swirl
2010-06-06 15:02             ` Avi Kivity
2010-06-07 16:41             ` Cam Macdonell
2010-06-09 20:12               ` Blue Swirl
2010-06-14 15:51         ` [Qemu-devel] [PATCH v6 4/6] Add support for marking memory to not be migrated. On migration, memory is checked for the NO_MIGRATION_FLAG Anthony Liguori
2010-06-14 16:08           ` Cam Macdonell
2010-06-14 16:15             ` Anthony Liguori
2010-06-15 16:16               ` [PATCH RFC] Mark a device as non-migratable Cam Macdonell
2010-06-15 16:16                 ` [Qemu-devel] " Cam Macdonell
2010-06-15 16:32                 ` Anthony Liguori
2010-06-15 16:32                   ` [Qemu-devel] " Anthony Liguori
2010-06-15 17:45                   ` Markus Armbruster
2010-06-15 22:26                   ` Cam Macdonell
2010-06-15 22:26                     ` [Qemu-devel] " Cam Macdonell
2010-06-15 22:33                     ` Anthony Liguori
2010-06-16  5:05                       ` Cam Macdonell
2010-06-16 12:34                         ` Anthony Liguori
2010-06-17  4:18                           ` Cam Macdonell
2010-06-11 22:03 ` [PATCH v6 0/6] Inter-VM Shared Memory Device with migration support Cam Macdonell
2010-06-11 22:03   ` [Qemu-devel] " Cam Macdonell
2010-06-14 15:54   ` Anthony Liguori [this message]
2010-06-14 15:54     ` Anthony Liguori

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=4C1650A2.1000202@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=blauwirbel@gmail.com \
    --cc=cam@cs.ualberta.ca \
    --cc=kvm@vger.kernel.org \
    --cc=qemu-devel@nongnu.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.