qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 1eb3fc: migration: Fix non-multiple of page s


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 1eb3fc: migration: Fix non-multiple of page size migration
Date: Tue, 23 May 2017 10:05:55 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 1eb3fc0a0b61b5d22adee2a9add3162a6c03a47e
      
https://github.com/qemu/qemu/commit/1eb3fc0a0b61b5d22adee2a9add3162a6c03a47e
  Author: Dr. David Alan Gilbert <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M migration/ram.c

  Log Message:
  -----------
  migration: Fix non-multiple of page size migration

Unfortunately it's legal to create a VM with a RAM size that's
not a multiple of the underlying host page or huge page size.
Recently I'd changed things to always send host sized pages,
and that breaks if we have say a 1025MB guest on 2MB hugepages.

Unfortunately we can't just make that illegal since it would break
migration from/to existing oddly configured VMs.

Symptom: qemu-system-x86_64: Illegal RAM offset 40100000
     as it transmits the fraction of the hugepage after the end
     of the RAMBlock (may also cause a crash on the source
     - possibly due to clearing bits after the bitmap)

Reported-by:  Yumei Huang <address@hidden>
Red Hat bug: https://bugzilla.redhat.com/show_bug.cgi?id=1449037

Signed-off-by: Dr. David Alan Gilbert <address@hidden>
Reviewed-by: Juan Quintela <address@hidden>
Signed-off-by: Juan Quintela <address@hidden>


  Commit: 5d214a92acb38979ee1abd1883a225903cb171b6
      
https://github.com/qemu/qemu/commit/5d214a92acb38979ee1abd1883a225903cb171b6
  Author: Dr. David Alan Gilbert <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M migration/postcopy-ram.c

  Log Message:
  -----------
  postcopy: Require RAMBlocks that are whole pages

It turns out that it's legal to create a VM with RAMBlocks that aren't
a multiple of the pagesize in use; e.g. a 1025M main memory using
2M host pages.  That breaks postcopy's atomic placement of pages,
so disallow it.

Signed-off-by: Dr. David Alan Gilbert <address@hidden>
Reviewed-by: Juan Quintela <address@hidden>
Signed-off-by: Juan Quintela <address@hidden>


  Commit: f4a06d1391acf919da3f4291f2d6a70344d21c66
      
https://github.com/qemu/qemu/commit/f4a06d1391acf919da3f4291f2d6a70344d21c66
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M hmp.c

  Log Message:
  -----------
  hmp: Use visitor api for hmp_migrate_set_parameter()

We only use it for int64 at this point, I am not able to find a way to
parse an int with MiB units.

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>


  Commit: 2833c59b947cf909020c4d6194aac35f383e832b
      
https://github.com/qemu/qemu/commit/2833c59b947cf909020c4d6194aac35f383e832b
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M hmp.c
    M include/migration/block.h
    M include/migration/migration.h
    M migration/migration.c
    M qapi-schema.json

  Log Message:
  -----------
  migration: Create block capability

Create one capability for block migration and one parameter for
incremental block migration.

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Eric Blake <address@hidden>

---

- address all Markus comments
- use Markus and Eric text descriptions
- change logic another time
- improve text messages


  Commit: ce7c817c85e704b2f5dc3a976c7a1c5ce0fd93c2
      
https://github.com/qemu/qemu/commit/ce7c817c85e704b2f5dc3a976c7a1c5ce0fd93c2
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M include/migration/migration.h
    M migration/block.c
    M migration/colo.c
    M migration/migration.c
    M migration/savevm.c

  Log Message:
  -----------
  migration: Remove use of old MigrationParams

We have change in the previous patch to use migration capabilities for
it.  Notice that we continue using the old command line flags from
migrate command from the time being.  Remove the set_params method as
now it is empty.

For savevm, one can't do a:

savevm -b/-i foo

but now one can do:

migrate_set_capability block on
savevm foo

And we can't use block migration. We could disable block capability
unconditionally, but it would not be much better.

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Eric Blake <address@hidden>

---
- Maintain shared/enabled dependency (Xu suggestion)
- Now we maintain the dependency on the setter functions
- improve error messages


  Commit: a0762d9e34404d671bf9241bbd5b67c38953c63a
      
https://github.com/qemu/qemu/commit/a0762d9e34404d671bf9241bbd5b67c38953c63a
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M include/migration/migration.h
    M include/migration/vmstate.h
    M include/qemu/typedefs.h
    M include/sysemu/sysemu.h
    M migration/colo.c
    M migration/migration.c
    M migration/savevm.c

  Log Message:
  -----------
  migration: Remove old MigrationParams

Not used anymore after moving block migration to use capabilities.

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>
Reviewed-by: zhanghailiang <address@hidden>
Reviewed-by: Peter Xu <address@hidden>


  Commit: ed1701c6a5a7d08f33148c50c4d28799ee0568c4
      
https://github.com/qemu/qemu/commit/ed1701c6a5a7d08f33148c50c4d28799ee0568c4
  Author: Dr. David Alan Gilbert <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M configure
    M include/migration/block.h
    M migration/Makefile.objs
    M migration/migration.c

  Log Message:
  -----------
  block migration: Allow compile time disable

Many users now prefer to use drive_mirror over NBD as an
alternative to the older migrate -b option; drive_mirror is
more complex to setup but gives you more options (e.g. only
migrating some of the disks if some of them are shared).

Allow the large chunk of block migration code to be compiled
out for those who don't use it.

Based on a downstream-patch we've had for a while by Jeff Cody.

Signed-off-by: Dr. David Alan Gilbert <address@hidden>
Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Eric Blake <address@hidden>

--

- When compiled out, allow seting block only with false value (eric)


  Commit: 709e3fe82581f866350ff3be5198ea73cda09f0d
      
https://github.com/qemu/qemu/commit/709e3fe82581f866350ff3be5198ea73cda09f0d
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M include/migration/migration.h
    M migration/ram.c
    M migration/xbzrle.c
    A migration/xbzrle.h
    M tests/test-xbzrle.c

  Log Message:
  -----------
  migration: Create migration/xbzrle.h

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Peter Xu <address@hidden>


  Commit: dd4339c540285b3a0904c631f8174a59d04be767
      
https://github.com/qemu/qemu/commit/dd4339c540285b3a0904c631f8174a59d04be767
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M include/migration/migration.h
    M migration/Makefile.objs
    A migration/channel.c
    A migration/channel.h
    M migration/exec.c
    M migration/fd.c
    M migration/migration.c
    M migration/socket.c
    M migration/tls.c

  Log Message:
  -----------
  migration: Split migration/channel.c for channel operations

Create an include for its exported functions.

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>

---
Add proper header


  Commit: 40014d81f2c7793781c8afa74713d72da10e6f0f
      
https://github.com/qemu/qemu/commit/40014d81f2c7793781c8afa74713d72da10e6f0f
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M include/migration/migration.h
    M include/migration/qemu-file.h
    M migration/channel.c
    M migration/colo.c
    M migration/migration.c
    M migration/qemu-file-channel.c
    A migration/qemu-file-channel.h
    M migration/rdma.c
    M migration/savevm.c
    M tests/test-vmstate.c

  Log Message:
  -----------
  migration: Export qemu-file-channel.c functions in its own file

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>


  Commit: c59be019e9a55737a58af251aae34ebe0799a65b
      
https://github.com/qemu/qemu/commit/c59be019e9a55737a58af251aae34ebe0799a65b
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M include/migration/colo.h
    M migration/colo-comm.c
    M migration/colo.c

  Log Message:
  -----------
  migration: Remove migration.h from colo.h

migration.h is not included in any includes now.

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Peter Xu <address@hidden>


  Commit: 05b98c22f837228a6492e31b2a1e38d59bdb7530
      
https://github.com/qemu/qemu/commit/05b98c22f837228a6492e31b2a1e38d59bdb7530
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    R include/migration/qjson.h
    M migration/qjson.c
    A migration/qjson.h
    M migration/vmstate.c

  Log Message:
  -----------
  migration: Move qjson.h to migration/

It is only used for migration code.

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>


  Commit: 576d1abc205fb1c135a7448df96bc9d47cb360dc
      
https://github.com/qemu/qemu/commit/576d1abc205fb1c135a7448df96bc9d47cb360dc
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M migration/Makefile.objs
    A migration/vmstate-types.c
    M migration/vmstate.c
    M tests/Makefile.include

  Log Message:
  -----------
  migration: Split vmstate-types.c from vmstate.c

Now one just has the interperter, and the other has the basic types.
Once there, add copyright boilerplate.

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Peter Xu <address@hidden>

--

Use GPL v2 or later.  Detected by David.


  Commit: 82b9d0f06ab23c0c06b0a8c3adac4c39c38db67a
      
https://github.com/qemu/qemu/commit/82b9d0f06ab23c0c06b0a8c3adac4c39c38db67a
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M include/hw/hw.h
    M include/migration/vmstate.h
    M migration/block.c
    M migration/colo.c
    M migration/postcopy-ram.c
    M migration/ram.c
    M tests/test-vmstate.c

  Log Message:
  -----------
  migration: Remove qemu-file.h from vmstate.h

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>

--

minor rearangements due to the rebase


  Commit: 987772d9e704eb251f4a96e045e991f81778fdd4
      
https://github.com/qemu/qemu/commit/987772d9e704eb251f4a96e045e991f81778fdd4
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M include/migration/migration.h
    M migration/block.c
    M migration/colo-comm.c
    M migration/migration.c
    M migration/ram.c

  Log Message:
  -----------
  migration: Remove vmstate.h from migration.h

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>

---

Minor rearrangements due to rebase


  Commit: 68ba3b07436396733f7313c81956410af6d17083
      
https://github.com/qemu/qemu/commit/68ba3b07436396733f7313c81956410af6d17083
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M block/qed.c
    M hw/i386/pc_q35.c
    M hw/virtio/vhost-user.c
    M hw/virtio/vhost-vsock.c
    M hw/virtio/virtio.c
    M monitor.c

  Log Message:
  -----------
  migration: migration.h was not needed

This files don't use any function from migration.h, so drop it.

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>
Reviewed-by: Peter Xu <address@hidden>


  Commit: 51180423a226adbd80d64bf75b8522256b1266f1
      
https://github.com/qemu/qemu/commit/51180423a226adbd80d64bf75b8522256b1266f1
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M exec.c
    A include/exec/target_page.h
    M include/sysemu/sysemu.h
    M migration/migration.c
    M migration/postcopy-ram.c
    M migration/savevm.c

  Log Message:
  -----------
  exec: Create include for target_page_size()

That is the only function that we need from exec.c, and having to
include the whole sysemu.h for this.

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>

---

/me leans to be less sloppy with copyright notices
thanks Dave


  Commit: 46d702b106d20beda2fcd0f96ddc44855ba262b3
      
https://github.com/qemu/qemu/commit/46d702b106d20beda2fcd0f96ddc44855ba262b3
  Author: Juan Quintela <address@hidden>
  Date:   2017-05-18 (Thu, 18 May 2017)

  Changed paths:
    M Makefile.target
    M exec.c
    M include/exec/target_page.h
    M migration/Makefile.objs
    M migration/savevm.c

  Log Message:
  -----------
  migration: Make savevm.c target independent

It only needed TARGET_PAGE_SIZE/BITS/BITS_MIN values, so just export
them from exec.h

Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Peter Xu <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>


  Commit: 371ec54e9f8415cd74af45acdcf67b413f50cce5
      
https://github.com/qemu/qemu/commit/371ec54e9f8415cd74af45acdcf67b413f50cce5
  Author: Gerd Hoffmann <address@hidden>
  Date:   2017-05-19 (Fri, 19 May 2017)

  Changed paths:
    M ui/Makefile.objs
    M vl.c

  Log Message:
  -----------
  ui: egl-headless requires dmabuf support

Reported-by: Thomas Huth <address@hidden>
Signed-off-by: Gerd Hoffmann <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-id: address@hidden


  Commit: ca89f72092bdb42e077f2f64f417edad009ce0ef
      
https://github.com/qemu/qemu/commit/ca89f72092bdb42e077f2f64f417edad009ce0ef
  Author: Eduardo Habkost <address@hidden>
  Date:   2017-05-19 (Fri, 19 May 2017)

  Changed paths:
    M arch_init.c
    M hw/audio/Makefile.objs
    A hw/audio/soundhw.c
    M hw/ppc/prep.c
    M include/hw/audio/audio.h
    M include/sysemu/arch_init.h
    M vl.c

  Log Message:
  -----------
  audio: Move arch_init audio code to hw/audio/soundhw.c

There's no reason to keep the soundhw table in arch_init.c. Move
that code to a new hw/audio/soundhw.c file.

While moving the code, trivial coding style issues were fixed.

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 4c565674a2af027fba977bea8ab1bdf440d0cf63
      
https://github.com/qemu/qemu/commit/4c565674a2af027fba977bea8ab1bdf440d0cf63
  Author: Eduardo Habkost <address@hidden>
  Date:   2017-05-19 (Fri, 19 May 2017)

  Changed paths:
    M hw/audio/soundhw.c
    M hw/ppc/prep.c
    M include/hw/audio/audio.h
    M vl.c

  Log Message:
  -----------
  audio: Rename audio_init() to soundhw_init()

To make it consistent with the remaining soundhw.c functions and
avoid confusion with the audio_init() function in audio/audio.c,
rename audio_init() to soundhw_init().

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 8a824e4d74213a2da39323304f949c5b4243e1fb
      
https://github.com/qemu/qemu/commit/8a824e4d74213a2da39323304f949c5b4243e1fb
  Author: Eduardo Habkost <address@hidden>
  Date:   2017-05-19 (Fri, 19 May 2017)

  Changed paths:
    M arch_init.c
    M hw/audio/ac97.c
    M hw/audio/adlib.c
    M hw/audio/cs4231a.c
    M hw/audio/es1370.c
    M hw/audio/gus.c
    M hw/audio/intel-hda.c
    M hw/audio/pcspk.c
    M hw/audio/sb16.c
    M hw/audio/soundhw.c
    M hw/ppc/prep.c
    R include/hw/audio/audio.h
    A include/hw/audio/soundhw.h
    M vl.c

  Log Message:
  -----------
  audio: Rename hw/audio/audio.h to hw/audio/soundhw.h

All the functions in hw/audio/audio.h are called "soundhw_*()"
and live in hw/audio/audiohw.c. Rename the header file for
consistency.

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Reviewed-by: Hervé Poussineau <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 14c1f7deb43ec0e1a7f2eabfe652bfad1124392d
      
https://github.com/qemu/qemu/commit/14c1f7deb43ec0e1a7f2eabfe652bfad1124392d
  Author: Stefan Hajnoczi <address@hidden>
  Date:   2017-05-19 (Fri, 19 May 2017)

  Changed paths:
    M Makefile.target
    M block/qed.c
    M configure
    M exec.c
    M hmp.c
    M hw/i386/pc_q35.c
    M hw/virtio/vhost-user.c
    M hw/virtio/vhost-vsock.c
    M hw/virtio/virtio.c
    A include/exec/target_page.h
    M include/hw/hw.h
    M include/migration/block.h
    M include/migration/colo.h
    M include/migration/migration.h
    M include/migration/qemu-file.h
    R include/migration/qjson.h
    M include/migration/vmstate.h
    M include/qemu/typedefs.h
    M include/sysemu/sysemu.h
    M migration/Makefile.objs
    M migration/block.c
    A migration/channel.c
    A migration/channel.h
    M migration/colo-comm.c
    M migration/colo.c
    M migration/exec.c
    M migration/fd.c
    M migration/migration.c
    M migration/postcopy-ram.c
    M migration/qemu-file-channel.c
    A migration/qemu-file-channel.h
    M migration/qjson.c
    A migration/qjson.h
    M migration/ram.c
    M migration/rdma.c
    M migration/savevm.c
    M migration/socket.c
    M migration/tls.c
    A migration/vmstate-types.c
    M migration/vmstate.c
    M migration/xbzrle.c
    A migration/xbzrle.h
    M monitor.c
    M qapi-schema.json
    M tests/Makefile.include
    M tests/test-vmstate.c
    M tests/test-xbzrle.c

  Log Message:
  -----------
  Merge remote-tracking branch 'quintela/tags/migration/20170518' into staging

migration/next for 20170518

# gpg: Signature made Thu 18 May 2017 06:23:26 PM BST
# gpg:                using RSA key 0xF487EF185872D723
# gpg: Good signature from "Juan Quintela <address@hidden>"
# gpg:                 aka "Juan Quintela <address@hidden>"
# Primary key fingerprint: 1899 FF8E DEBF 58CC EE03  4B82 F487 EF18 5872 D723

* quintela/tags/migration/20170518:
  migration: Make savevm.c target independent
  exec: Create include for target_page_size()
  migration: migration.h was not needed
  migration: Remove vmstate.h from migration.h
  migration: Remove qemu-file.h from vmstate.h
  migration: Split vmstate-types.c from vmstate.c
  migration: Move qjson.h to migration/
  migration: Remove migration.h from colo.h
  migration: Export qemu-file-channel.c functions in its own file
  migration: Split migration/channel.c for channel operations
  migration: Create migration/xbzrle.h
  block migration: Allow compile time disable
  migration: Remove old MigrationParams
  migration: Remove use of old MigrationParams
  migration: Create block capability
  hmp: Use visitor api for hmp_migrate_set_parameter()
  postcopy: Require RAMBlocks that are whole pages
  migration: Fix non-multiple of page size migration

Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: a4657d4b918f9a7c655620c90d135fe34e7293ee
      
https://github.com/qemu/qemu/commit/a4657d4b918f9a7c655620c90d135fe34e7293ee
  Author: Stefan Hajnoczi <address@hidden>
  Date:   2017-05-19 (Fri, 19 May 2017)

  Changed paths:
    M ui/Makefile.objs
    M vl.c

  Log Message:
  -----------
  Merge remote-tracking branch 'kraxel/tags/pull-ui-20170519-1' into staging

ui: egl-headless requires dmabuf support

# gpg: Signature made Fri 19 May 2017 09:46:40 AM BST
# gpg:                using RSA key 0x4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <address@hidden>"
# gpg:                 aka "Gerd Hoffmann <address@hidden>"
# gpg:                 aka "Gerd Hoffmann (private) <address@hidden>"
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* kraxel/tags/pull-ui-20170519-1:
  ui: egl-headless requires dmabuf support

Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: 415c3824836d3b65a5796a81b17fccd1ad575ff8
      
https://github.com/qemu/qemu/commit/415c3824836d3b65a5796a81b17fccd1ad575ff8
  Author: Mark Cave-Ayland <address@hidden>
  Date:   2017-05-19 (Fri, 19 May 2017)

  Changed paths:
    M pc-bios/openbios-ppc
    M pc-bios/openbios-sparc32
    M pc-bios/openbios-sparc64
    M roms/openbios

  Log Message:
  -----------
  Update OpenBIOS images to 3ebaaa2 built from submodule.

Signed-off-by: Mark Cave-Ayland <address@hidden>


  Commit: 0bb8cacd958631655441ec1c2f7cd9644076b1ac
      
https://github.com/qemu/qemu/commit/0bb8cacd958631655441ec1c2f7cd9644076b1ac
  Author: Stefan Hajnoczi <address@hidden>
  Date:   2017-05-19 (Fri, 19 May 2017)

  Changed paths:
    M arch_init.c
    M hw/audio/Makefile.objs
    M hw/audio/ac97.c
    M hw/audio/adlib.c
    M hw/audio/cs4231a.c
    M hw/audio/es1370.c
    M hw/audio/gus.c
    M hw/audio/intel-hda.c
    M hw/audio/pcspk.c
    M hw/audio/sb16.c
    A hw/audio/soundhw.c
    M hw/ppc/prep.c
    R include/hw/audio/audio.h
    A include/hw/audio/soundhw.h
    M include/sysemu/arch_init.h
    M vl.c

  Log Message:
  -----------
  Merge remote-tracking branch 'kraxel/tags/pull-audio-20170519-1' into staging

audio: move & rename soundhw init code.

# gpg: Signature made Fri 19 May 2017 12:22:51 PM BST
# gpg:                using RSA key 0x4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <address@hidden>"
# gpg:                 aka "Gerd Hoffmann <address@hidden>"
# gpg:                 aka "Gerd Hoffmann (private) <address@hidden>"
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* kraxel/tags/pull-audio-20170519-1:
  audio: Rename hw/audio/audio.h to hw/audio/soundhw.h
  audio: Rename audio_init() to soundhw_init()
  audio: Move arch_init audio code to hw/audio/soundhw.c

Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: 730a6e875b137f74109cc93560a3f643d7ad8263
      
https://github.com/qemu/qemu/commit/730a6e875b137f74109cc93560a3f643d7ad8263
  Author: Stefan Hajnoczi <address@hidden>
  Date:   2017-05-22 (Mon, 22 May 2017)

  Changed paths:
    M pc-bios/openbios-ppc
    M pc-bios/openbios-sparc32
    M pc-bios/openbios-sparc64
    M roms/openbios

  Log Message:
  -----------
  Merge remote-tracking branch 'mcayland/tags/qemu-openbios-signed' into staging

Update OpenBIOS images

# gpg: Signature made Fri 19 May 2017 05:05:54 PM BST
# gpg:                using RSA key 0x5BC2C56FAE0F321F
# gpg: Good signature from "Mark Cave-Ayland <address@hidden>"
# Primary key fingerprint: CC62 1AB9 8E82 200D 915C  C9C4 5BC2 C56F AE0F 321F

* mcayland/tags/qemu-openbios-signed:
  Update OpenBIOS images to 3ebaaa2 built from submodule.

Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: 4348300e751df1cd24810fb5f699f1f85bbc2849
      
https://github.com/qemu/qemu/commit/4348300e751df1cd24810fb5f699f1f85bbc2849
  Author: Thomas Huth <address@hidden>
  Date:   2017-05-23 (Tue, 23 May 2017)

  Changed paths:
    M net/Makefile.objs
    R net/tap-aix.c
    R net/tap-haiku.c
    A net/tap-stub.c

  Log Message:
  -----------
  net/tap: Replace tap-haiku.c and tap-aix.c by a generic tap-stub.c

The files tap-haiku.c and tap-aix.c are identical (except one line
of error message). We should avoid such code duplication, so replace
these by a generic tap-stub.c file instead.

Signed-off-by: Thomas Huth <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Signed-off-by: Jason Wang <address@hidden>


  Commit: f5ab20a4682959f06efe0787950a6c48a3e6f8fa
      
https://github.com/qemu/qemu/commit/f5ab20a4682959f06efe0787950a6c48a3e6f8fa
  Author: Thomas Huth <address@hidden>
  Date:   2017-05-23 (Tue, 23 May 2017)

  Changed paths:
    M net/dump.c

  Log Message:
  -----------
  net/dump: Issue a warning for the deprecated "-net dump"

Network dumping should be done with "-object filter-dump" nowadays.
Using "-net dump" via the VLAN mechanism is considered as deprecated
and might be removed in a future release. So warn the users now
to inform them to user the filter-dump method instead.

Signed-off-by: Thomas Huth <address@hidden>
Signed-off-by: Jason Wang <address@hidden>


  Commit: f989c30cf834ba8625e98b808eac30e4e7ec5008
      
https://github.com/qemu/qemu/commit/f989c30cf834ba8625e98b808eac30e4e7ec5008
  Author: Yunjian Wang <address@hidden>
  Date:   2017-05-23 (Tue, 23 May 2017)

  Changed paths:
    M hw/net/virtio-net.c

  Log Message:
  -----------
  virtio-net: fix wild pointer when remove virtio-net queues

The tx_bh or tx_timer will free in virtio_net_del_queue() function, when
removing virtio-net queues if the guest doesn't support multiqueue. But
it might be still referenced by virtio_net_set_status(), which needs to
be set NULL. And also the tx_waiting needs to be set zero to prevent
virtio_net_set_status() accessing tx_bh or tx_timer.

Cc: address@hidden
Signed-off-by: Yunjian Wang <address@hidden>
Signed-off-by: Jason Wang <address@hidden>


  Commit: f583dca9ad2adb9797da56ad8d859ed50eeae536
      
https://github.com/qemu/qemu/commit/f583dca9ad2adb9797da56ad8d859ed50eeae536
  Author: Zhang Chen <address@hidden>
  Date:   2017-05-23 (Tue, 23 May 2017)

  Changed paths:
    M net/colo-compare.c
    M net/trace-events

  Log Message:
  -----------
  COLO-compare: Improve tcp compare trace event readability

Because of previous patch's trace arguments over the limit
of UST backend, so I rewrite the patch.

Signed-off-by: Zhang Chen <address@hidden>
Signed-off-by: Jason Wang <address@hidden>


  Commit: 559964a1ada14dc2d5066f445a2ef1c8389f7d6c
      
https://github.com/qemu/qemu/commit/559964a1ada14dc2d5066f445a2ef1c8389f7d6c
  Author: Thomas Huth <address@hidden>
  Date:   2017-05-23 (Tue, 23 May 2017)

  Changed paths:
    M hmp-commands.hx
    M net/net.c

  Log Message:
  -----------
  hmp / net: Mark host_net_add/remove as deprecated

The netdev_add and netdev_del commands should be used nowadays instead.

Signed-off-by: Thomas Huth <address@hidden>
Signed-off-by: Jason Wang <address@hidden>


  Commit: e2f840163854ee5f666bc07db77bd88ac25b45bc
      
https://github.com/qemu/qemu/commit/e2f840163854ee5f666bc07db77bd88ac25b45bc
  Author: Zhang Chen <address@hidden>
  Date:   2017-05-23 (Tue, 23 May 2017)

  Changed paths:
    M net/filter-mirror.c

  Log Message:
  -----------
  net/filter-mirror.c: Remove duplicate check code.

The s->outdev have checked in filter_mirror_set_outdev().

Signed-off-by: Zhang Chen <address@hidden>
Signed-off-by: Jason Wang <address@hidden>


  Commit: e05dc4cf56d70225fc76225a3fd7df9f7b8ca5f9
      
https://github.com/qemu/qemu/commit/e05dc4cf56d70225fc76225a3fd7df9f7b8ca5f9
  Author: Zhang Chen <address@hidden>
  Date:   2017-05-23 (Tue, 23 May 2017)

  Changed paths:
    M net/filter-mirror.c

  Log Message:
  -----------
  net/filter-mirror.c: Rename filter_mirror_send() and fix codestyle

Because filter_mirror_receive_iov() and filter_redirector_receive_iov()
both use the filter_mirror_send() to send packet, so I change
filter_mirror_send() to filter_send() that looks more common.
And fix some codestyle.

Signed-off-by: Zhang Chen <address@hidden>
Signed-off-by: Jason Wang <address@hidden>


  Commit: 61fcc16af660058264bf7f5e8cd480bc4e5bd19c
      
https://github.com/qemu/qemu/commit/61fcc16af660058264bf7f5e8cd480bc4e5bd19c
  Author: Zhang Chen <address@hidden>
  Date:   2017-05-23 (Tue, 23 May 2017)

  Changed paths:
    M qemu-options.hx

  Log Message:
  -----------
  net/filter-rewriter: Remove unused option in filter-rewriter

Signed-off-by: Zhang Chen <address@hidden>
Signed-off-by: Jason Wang <address@hidden>


  Commit: 82342e91b60a4a078811df4e1a545e57abffa11d
      
https://github.com/qemu/qemu/commit/82342e91b60a4a078811df4e1a545e57abffa11d
  Author: Sameeh Jubran <address@hidden>
  Date:   2017-05-23 (Tue, 23 May 2017)

  Changed paths:
    M hw/net/e1000e_core.c

  Log Message:
  -----------
  e1000e: Fix ICR "Other" causes clear logic

This commit fixes a bug which causes the guest to hang. The bug was
observed upon a "receive overrun" (bit #6 of the ICR register)
interrupt which could be triggered post migration in a heavy traffic
environment. Even though the "receive overrun" bit (#6) is masked out
by the IMS register (refer to the log below) the driver still receives
an interrupt as the "receive overrun" bit (#6) causes the "Other" -
bit #24 of the ICR register - bit to be set as documented below. The
driver handles the interrupt and clears the "Other" bit (#24) but
doesn't clear the "receive overrun" bit (#6) which leads to an
infinite loop. Apparently the Windows driver expects that the "receive
overrun" bit and other ones - documented below - to be cleared when
the "Other" bit (#24) is cleared.

So to sum that up:
1. Bit #6 of the ICR register is set by heavy traffic
2. As a results of setting bit #6, bit #24 is set
3. The driver receives an interrupt for bit 24 (it doesn't receieve an
   interrupt for bit #6 as it is masked out by IMS)
4. The driver handles and clears the interrupt of bit #24
5. Bit #6 is still set.
6. 2 happens all over again

The Interrupt Cause Read - ICR register:

The ICR has the "Other" bit - bit #24 - that is set when one or more
of the following ICR register's bits are set:

LSC - bit #2, RXO - bit #6, MDAC - bit #9, SRPD - bit #16, ACK - bit
#17, MNG - bit #18

This bug can occur with any of these bits depending on the driver's
behaviour and the way it configures the device. However, trying to
reproduce it with any bit other than RX0 is challenging and came to
failure as the drivers don't implement most of these bits, trying to
reproduce it with LSC (Link Status Change - bit #2) bit didn't succeed
too as it seems that Windows handles this bit differently.

Log sample of the storm:

address@hidden:e1000e_irq_pending_interrupts ICR PENDING: 0x1000000 (ICR: 
0x815000c2, IMS: 0x1a00004)
address@hidden:e1000e_irq_pending_interrupts ICR PENDING: 0x0 (ICR: 0x815000c2, 
IMS: 0xa00004)
address@hidden:e1000e_irq_pending_interrupts ICR PENDING: 0x0 (ICR: 0x815000c2, 
IMS: 0xa00004)
address@hidden:e1000e_irq_pending_interrupts ICR PENDING: 0x0 (ICR: 0x815000c2, 
IMS: 0xa00004)
address@hidden:e1000e_irq_pending_interrupts ICR PENDING: 0x0 (ICR: 0x815000c2, 
IMS: 0xa00004)
address@hidden:e1000e_irq_pending_interrupts ICR PENDING: 0x0 (ICR: 0x815000c2, 
IMS: 0xa00004)
address@hidden:e1000e_irq_pending_interrupts ICR PENDING: 0x0 (ICR: 0x815000c2, 
IMS: 0xa00004)
address@hidden:e1000e_irq_pending_interrupts ICR PENDING: 0x1000000 (ICR: 
0x815000c2, IMS: 0x1a00004)

* This bug behaviour wasn't observed with the Linux driver.

This commit solves:
https://bugzilla.redhat.com/show_bug.cgi?id=1447935
https://bugzilla.redhat.com/show_bug.cgi?id=1449490

Cc: address@hidden
Signed-off-by: Sameeh Jubran <address@hidden>
Signed-off-by: Jason Wang <address@hidden>


  Commit: 9964e96dc9999cf7f7c936ee854a795415d19b60
      
https://github.com/qemu/qemu/commit/9964e96dc9999cf7f7c936ee854a795415d19b60
  Author: Stefan Hajnoczi <address@hidden>
  Date:   2017-05-23 (Tue, 23 May 2017)

  Changed paths:
    M hmp-commands.hx
    M hw/net/e1000e_core.c
    M hw/net/virtio-net.c
    M net/Makefile.objs
    M net/colo-compare.c
    M net/dump.c
    M net/filter-mirror.c
    M net/net.c
    R net/tap-aix.c
    R net/tap-haiku.c
    A net/tap-stub.c
    M net/trace-events
    M qemu-options.hx

  Log Message:
  -----------
  Merge remote-tracking branch 'jasowang/tags/net-pull-request' into staging

# gpg: Signature made Tue 23 May 2017 03:27:37 AM BST
# gpg:                using RSA key 0xEF04965B398D6211
# gpg: Good signature from "Jason Wang (Jason Wang on RedHat) <address@hidden>"
# Primary key fingerprint: 215D 46F4 8246 689E C77F  3562 EF04 965B 398D 6211

* jasowang/tags/net-pull-request:
  e1000e: Fix ICR "Other" causes clear logic
  net/filter-rewriter: Remove unused option in filter-rewriter
  net/filter-mirror.c: Rename filter_mirror_send() and fix codestyle
  net/filter-mirror.c: Remove duplicate check code.
  hmp / net: Mark host_net_add/remove as deprecated
  COLO-compare: Improve tcp compare trace event readability
  virtio-net: fix wild pointer when remove virtio-net queues
  net/dump: Issue a warning for the deprecated "-net dump"
  net/tap: Replace tap-haiku.c and tap-aix.c by a generic tap-stub.c

Signed-off-by: Stefan Hajnoczi <address@hidden>


Compare: https://github.com/qemu/qemu/compare/56821559f0ba...9964e96dc999

reply via email to

[Prev in Thread] Current Thread [Next in Thread]