[Qemu-commits] [qemu/qemu] 71b74b: iotests: 163 is not quick

2018-03-27 Thread GitHub
  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 71b74b25444ed3ddfe7b025d059ca882916a4b02
  
https://github.com/qemu/qemu/commit/71b74b25444ed3ddfe7b025d059ca882916a4b02
  Author: Eric Blake 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M tests/qemu-iotests/group

  Log Message:
  ---
  iotests: 163 is not quick

Testing on ext4, most 'quick' qcow2 tests took less than 5 seconds,
but 163 took more than 20.  Let's remove it from the quick set.

Signed-off-by: Eric Blake 
Signed-off-by: Kevin Wolf 


  Commit: cb83d2efe1f591cdc7ff2e8fbc67544155f264d6
  
https://github.com/qemu/qemu/commit/cb83d2efe1f591cdc7ff2e8fbc67544155f264d6
  Author: Fabiano Rosas 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M block/replication.c
M replication.h

  Log Message:
  ---
  block/replication: Remove protocol_name field

The protocol_name field is used when selecting a driver via protocol
syntax (i.e. :). Drivers that are
only selected explicitly (e.g. driver=replication,mode=primary,...)
should not have a protocol_name.

This patch removes the protocol_name field from the brdv_replication
structure so that attempts to invoke this driver using protocol syntax
will fail gracefully:

  $ qemu-img info replication:foo
  qemu-img: Could not open 'replication:': Unknown protocol 'replication'

Buglink: https://bugs.launchpad.net/qemu/+bug/1726733
Signed-off-by: Fabiano Rosas 
Reviewed-by: Max Reitz 
Signed-off-by: Kevin Wolf 


  Commit: 65d2c3e2f64b116f6a25d38cde5919d38f36d26d
  
https://github.com/qemu/qemu/commit/65d2c3e2f64b116f6a25d38cde5919d38f36d26d
  Author: Fabiano Rosas 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M block/quorum.c

  Log Message:
  ---
  block/quorum: Remove protocol-related fields

The quorum driver is not a protocol so it should implement bdrv_open
instead of bdrv_file_open and not provide a protocol_name.

Attempts to invoke this driver using protocol syntax
(i.e. quorum:) will now fail gracefully:

  $ qemu-img info quorum:foo
  qemu-img: Could not open 'quorum:foo': Unknown protocol 'quorum'

Signed-off-by: Fabiano Rosas 
Reviewed-by: Max Reitz 
Reviewed-by: Alberto Garcia 
Signed-off-by: Kevin Wolf 


  Commit: a7328ba55f4535613a54b4ad65a3eb8b1a47cbb7
  
https://github.com/qemu/qemu/commit/a7328ba55f4535613a54b4ad65a3eb8b1a47cbb7
  Author: Fabiano Rosas 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M block/throttle.c

  Log Message:
  ---
  block/throttle: Remove protocol-related fields

The throttle driver is not a protocol so it should implement bdrv_open
instead of bdrv_file_open and not provide a protocol_name.

Attempts to invoke this driver using protocol syntax
(i.e. throttle:) will now fail gracefully:

  $ qemu-img info throttle:foo
  qemu-img: Could not open 'throttle:foo': Unknown protocol 'throttle'

Signed-off-by: Fabiano Rosas 
Reviewed-by: Max Reitz 
Reviewed-by: Alberto Garcia 
Signed-off-by: Kevin Wolf 


  Commit: 8140e786f045a074928070640e20914873aeb396
  
https://github.com/qemu/qemu/commit/8140e786f045a074928070640e20914873aeb396
  Author: Fabiano Rosas 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M block/blkreplay.c

  Log Message:
  ---
  block/blkreplay: Remove protocol-related fields

The blkreplay driver is not a protocol so it should implement bdrv_open
instead of bdrv_file_open and not provide a protocol_name.

Attempts to invoke this driver using protocol syntax
(i.e. blkreplay:) will now fail gracefully:

  $ qemu-img info blkreplay:foo
  qemu-img: Could not open 'blkreplay:foo': Unknown protocol 'blkreplay'

Signed-off-by: Fabiano Rosas 
Reviewed-by: Pavel Dovgalyuk 
Reviewed-by: Max Reitz 
Signed-off-by: Kevin Wolf 


  Commit: 1e486cf30a3817b9136b333d31e7e77379fd6a90
  
https://github.com/qemu/qemu/commit/1e486cf30a3817b9136b333d31e7e77379fd6a90
  Author: Fabiano Rosas 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M include/block/block_int.h

  Log Message:
  ---
  include/block/block_int: Document protocol related functions

Clarify that:

- for protocols the brdv_file_open function is used instead
of bdrv_open;

- when protocol_name is set, a driver should expect
to be given only a filename and no other options.

Signed-off-by: Fabiano Rosas 
Signed-off-by: Kevin Wolf 


  Commit: 

[Qemu-commits] [qemu/qemu] ebd0e1: target/hppa: Include priv level in user-only iaoq

2018-03-27 Thread GitHub
  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: ebd0e151149a6280ea9f4cd9638aea517bb3238b
  
https://github.com/qemu/qemu/commit/ebd0e151149a6280ea9f4cd9638aea517bb3238b
  Author: Richard Henderson <richard.hender...@linaro.org>
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M target/hppa/cpu.h
M target/hppa/translate.c

  Log Message:
  ---
  target/hppa: Include priv level in user-only iaoq

A recent glibc change relies on the fact that the iaoq must be 3,
and computes an address based on that.  QEMU had been ignoring the
priv level for user-only, which produced an incorrect address.

Reported-by: John David Anglin <dave.ang...@bell.net>
Signed-off-by: Richard Henderson <richard.hender...@linaro.org>


  Commit: 78a0f82bf75190997d5f5d3941903d0b67ada1f3
  
https://github.com/qemu/qemu/commit/78a0f82bf75190997d5f5d3941903d0b67ada1f3
  Author: Peter Maydell <peter.mayd...@linaro.org>
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M target/hppa/cpu.h
M target/hppa/translate.c

  Log Message:
  ---
  Merge remote-tracking branch 'remotes/rth/tags/pull-hppa-20180327' into 
staging

Fix glibc 2.27 for hppa-linux-user

# gpg: Signature made Mon 26 Mar 2018 17:48:19 BST
# gpg:using RSA key 64DF38E8AF7E215F
# gpg: Good signature from "Richard Henderson <richard.hender...@linaro.org>"
# Primary key fingerprint: 7A48 1E78 868B 4DB6 A85A  05C0 64DF 38E8 AF7E 215F

* remotes/rth/tags/pull-hppa-20180327:
  target/hppa: Include priv level in user-only iaoq

Signed-off-by: Peter Maydell <peter.mayd...@linaro.org>


Compare: https://github.com/qemu/qemu/compare/f58d9620aa4a...78a0f82bf751

[Qemu-commits] [qemu/qemu] 83d7c4: scripts/decodetree: Fix insnmask not marked as glo...

2018-03-27 Thread GitHub
  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 83d7c40c92cdfb1cd2d5d31f4539b22dc17fbcce
  
https://github.com/qemu/qemu/commit/83d7c40c92cdfb1cd2d5d31f4539b22dc17fbcce
  Author: Bastian Koppelmann 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M scripts/decodetree.py

  Log Message:
  ---
  scripts/decodetree: Fix insnmask not marked as global in main()

if '-w 16' was given as a cmdline args a local copy of insnmask
is set and not the global one.

Signed-off-by: Peer Adelt 
Signed-off-by: Bastian Koppelmann 
Message-Id: <20180319115846.9662-1-kbast...@mail.uni-paderborn.de>
Reviewed-by: Richard Henderson 
Signed-off-by: Richard Henderson 


  Commit: f58d9620aa4a514b1227074ff56eefd1334a6225
  
https://github.com/qemu/qemu/commit/f58d9620aa4a514b1227074ff56eefd1334a6225
  Author: Peter Maydell 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M scripts/decodetree.py

  Log Message:
  ---
  Merge remote-tracking branch 'remotes/rth/tags/pull-dt-20180326' into staging

Fix a decodetree problem with 16-bit insns

# gpg: Signature made Mon 26 Mar 2018 15:35:04 BST
# gpg:using RSA key 64DF38E8AF7E215F
# gpg: Good signature from "Richard Henderson "
# Primary key fingerprint: 7A48 1E78 868B 4DB6 A85A  05C0 64DF 38E8 AF7E 215F

* remotes/rth/tags/pull-dt-20180326:
  scripts/decodetree: Fix insnmask not marked as global in main()

Signed-off-by: Peter Maydell 


Compare: https://github.com/qemu/qemu/compare/62a2b55e8d09...f58d9620aa4a

[Qemu-commits] [qemu/qemu] b1336c: qcow2-bitmap: add qcow2_reopen_bitmaps_rw_hint()

2018-03-27 Thread GitHub
  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: b1336cc2ec87a6593e1167af6e5b2cbd3d31acac
  
https://github.com/qemu/qemu/commit/b1336cc2ec87a6593e1167af6e5b2cbd3d31acac
  Author: Vladimir Sementsov-Ogievskiy 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M block/qcow2-bitmap.c
M block/qcow2.h

  Log Message:
  ---
  qcow2-bitmap: add qcow2_reopen_bitmaps_rw_hint()

Add version of qcow2_reopen_bitmaps_rw, which do the same work but
also return a hint about was header updated or not. This will be
used in the following fix for bitmaps reloading after migration.

Signed-off-by: Vladimir Sementsov-Ogievskiy 
Reviewed-by: John Snow 
Reviewed-by: Max Reitz 
Message-id: 20180320170521.32152-2-vsement...@virtuozzo.com
Signed-off-by: Max Reitz 


  Commit: 2d949dfcefcf12831620549cea8f4e537f9de5f2
  
https://github.com/qemu/qemu/commit/2d949dfcefcf12831620549cea8f4e537f9de5f2
  Author: Vladimir Sementsov-Ogievskiy 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M block/qcow2.c

  Log Message:
  ---
  qcow2: fix bitmaps loading when bitmaps already exist

On reopen with existing bitmaps, instead of loading bitmaps, lets
reopen them if needed. This also fixes bitmaps migration through
shared storage.
Consider the case. Persistent bitmaps are stored on bdrv_inactivate.
Then, on destination process_incoming_migration_bh() calls
bdrv_invalidate_cache_all() which leads to
qcow2_load_autoloading_dirty_bitmaps() which fails if bitmaps are
already loaded on destination start.

Signed-off-by: Vladimir Sementsov-Ogievskiy 
Message-id: 20180320170521.32152-3-vsement...@virtuozzo.com
Signed-off-by: Max Reitz 


  Commit: f7640f0dbc7becbd0927dd3fcf65cdf5a55adf89
  
https://github.com/qemu/qemu/commit/f7640f0dbc7becbd0927dd3fcf65cdf5a55adf89
  Author: Vladimir Sementsov-Ogievskiy 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M tests/qemu-iotests/169
M tests/qemu-iotests/169.out

  Log Message:
  ---
  iotests: enable shared migration cases in 169

Shared migration for dirty bitmaps is fixed by previous patches,
so we can enable the test.

Signed-off-by: Vladimir Sementsov-Ogievskiy 
Message-id: 20180320170521.32152-5-vsement...@virtuozzo.com
Signed-off-by: Max Reitz 


  Commit: a77672ea3d95094a0cb4f974de84fb7353c67cc0
  
https://github.com/qemu/qemu/commit/a77672ea3d95094a0cb4f974de84fb7353c67cc0
  Author: yuchenlin 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M block/vmdk.c

  Log Message:
  ---
  vmdk: return ERROR when cluster sector is larger than vmdk limitation

VMDK has a hard limitation of extent size, which is due to the size of grain
table entry is 32 bits. It means it can only point to a grain located at
offset = 2^32. To avoid writing the user data beyond limitation and record a 
useless offset
in grain table. We should return ERROR here.

Signed-off-by: yuchenlin 
Message-id: 2018032217.28024-1-yuchen...@synology.com
Reviewed-by: Fam Zheng 
Signed-off-by: Max Reitz 


  Commit: bdc408e91b14cedfc29be8ff703408936e575721
  
https://github.com/qemu/qemu/commit/bdc408e91b14cedfc29be8ff703408936e575721
  Author: Peter Maydell 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M block/qcow2-bitmap.c
M block/qcow2.c
M block/qcow2.h
M block/vmdk.c
M tests/qemu-iotests/169
M tests/qemu-iotests/169.out

  Log Message:
  ---
  Merge remote-tracking branch 'remotes/maxreitz/tags/pull-block-2018-03-26' 
into staging

A fix for dirty bitmap migration through shared storage, and a VMDK
patch keeping us from creating too large extents.

# gpg: Signature made Mon 26 Mar 2018 21:17:05 BST
# gpg:using RSA key F407DB0061D5CF40
# gpg: Good signature from "Max Reitz "
# Primary key fingerprint: 91BE B60A 30DB 3E88 57D1  1829 F407 DB00 61D5 CF40

* remotes/maxreitz/tags/pull-block-2018-03-26:
  vmdk: return ERROR when cluster sector is larger than vmdk limitation
  iotests: enable shared migration cases in 169
  qcow2: fix bitmaps loading when bitmaps already exist
  qcow2-bitmap: add qcow2_reopen_bitmaps_rw_hint()

Signed-off-by: Peter Maydell 


Compare: https://github.com/qemu/qemu/compare/78a0f82bf751...bdc408e91b14

[Qemu-commits] [qemu/qemu] dda244: target/xtensa: add .inc. to non-top level source f...

2018-03-27 Thread GitHub
  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: dda2441b2bc6844eb4900bf4a7db83157dcd6c3c
  
https://github.com/qemu/qemu/commit/dda2441b2bc6844eb4900bf4a7db83157dcd6c3c
  Author: Max Filippov 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M target/xtensa/core-dc232b.c
R target/xtensa/core-dc232b/gdb-config.c
A target/xtensa/core-dc232b/gdb-config.inc.c
R target/xtensa/core-dc232b/xtensa-modules.c
A target/xtensa/core-dc232b/xtensa-modules.inc.c
M target/xtensa/core-dc233c.c
R target/xtensa/core-dc233c/gdb-config.c
A target/xtensa/core-dc233c/gdb-config.inc.c
R target/xtensa/core-dc233c/xtensa-modules.c
A target/xtensa/core-dc233c/xtensa-modules.inc.c
M target/xtensa/core-de212.c
R target/xtensa/core-de212/gdb-config.c
A target/xtensa/core-de212/gdb-config.inc.c
R target/xtensa/core-de212/xtensa-modules.c
A target/xtensa/core-de212/xtensa-modules.inc.c
M target/xtensa/core-fsf.c
R target/xtensa/core-fsf/xtensa-modules.c
A target/xtensa/core-fsf/xtensa-modules.inc.c
M target/xtensa/core-sample_controller.c
R target/xtensa/core-sample_controller/gdb-config.c
A target/xtensa/core-sample_controller/gdb-config.inc.c
R target/xtensa/core-sample_controller/xtensa-modules.c
A target/xtensa/core-sample_controller/xtensa-modules.inc.c
M target/xtensa/import_core.sh

  Log Message:
  ---
  target/xtensa: add .inc. to non-top level source file names

Fix definitions of existing cores and core importing script to follow
the rule of naming non-top level source files.

Reviewed-by: Eric Blake 
Reviewed-by: Philippe Mathieu-Daudé 
Signed-off-by: Max Filippov 


  Commit: 2745c3bbf36266994fe0a72cacc2117e6bf4
  
https://github.com/qemu/qemu/commit/2745c3bbf36266994fe0a72cacc2117e6bf4
  Author: Max Filippov 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M target/xtensa/import_core.sh

  Log Message:
  ---
  target/xtensa/import_core.sh: fix #include 

Change #include  to #include "xtensa-isa.h" in imported
files to make references to local files consistent.

Reviewed-by: Eric Blake 
Reviewed-by: Philippe Mathieu-Daudé 
Signed-off-by: Max Filippov 


  Commit: 12ab0b33f152b0b69f013082236d5954c5cf5207
  
https://github.com/qemu/qemu/commit/12ab0b33f152b0b69f013082236d5954c5cf5207
  Author: Max Filippov 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
R linux-user/xtensa/syscall.h

  Log Message:
  ---
  linux-user/xtensa: remove stray syscall.h

Reviewed-by: Peter Maydell 
Signed-off-by: Max Filippov 


  Commit: d0ce7e9cfc8eda113f872b608fe4a3dd7662997e
  
https://github.com/qemu/qemu/commit/d0ce7e9cfc8eda113f872b608fe4a3dd7662997e
  Author: Max Filippov 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M target/xtensa/core-dc232b.c
M tests/tcg/xtensa/Makefile

  Log Message:
  ---
  target/xtensa: fix timers test

The value of CCOUNT special register is calculated as time elapsed
since CCOUNT == 0 multiplied by the core frequency. In icount mode time
increment between consecutive instructions that don't involve time
warps is constant, but unless the result of multiplication of this
constant by the core frequency is a whole number the CCOUNT increment
between these instructions may not be constant. E.g. with icount=7 each
instruction takes 128ns, with core clock of 10MHz CCOUNT values for
consecutive instructions are:

  502: (128 * 502 * 1000) / 10 = 642.56
  503: (128 * 503 * 1000) / 10 = 643.84
  504: (128 * 504 * 1000) / 10 = 645.12

I.e.the CCOUNT increments depend on the absolute time. This results in
varying CCOUNT differences for consecutive instructions in tests that
involve time warps and don't set CCOUNT explicitly.

Change frequency of the core used in tests so that clock cycle takes
exactly 64ns. Change icount power used in tests to 6, so that each
instruction takes exactly 1 clock cycle. With these changes CCOUNT
increments only depend on the number of executed instructions and that's
what timer tests expect, so they work correctly.

Longer story:
  http://lists.nongnu.org/archive/html/qemu-devel/2018-03/msg04326.html

Cc: Pavel Dovgaluk 
Cc: Philippe Mathieu-Daudé 
Reviewed-by: Philippe Mathieu-Daudé 
Signed-off-by: Max Filippov 


  Commit: 62d0289662746585239fbbf6a8d548f37f5fe6a8
  
https://github.com/qemu/qemu/commit/62d0289662746585239fbbf6a8d548f37f5fe6a8
  Author: Peter Maydell 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
R linux-user/xtensa/syscall.h
M 

[Qemu-commits] [qemu/qemu] caeadb: ide: fix invalid TRIM range abortion for macio

2018-03-27 Thread GitHub
  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: caeadbc8ba4227f56957203fff0e4058eeb5f1b0
  
https://github.com/qemu/qemu/commit/caeadbc8ba4227f56957203fff0e4058eeb5f1b0
  Author: Anton Nefedov 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M hw/ide/core.c

  Log Message:
  ---
  ide: fix invalid TRIM range abortion for macio

commit 947858b0 "ide: abort TRIM operation for invalid range"
is incorrect for macio; just ide_dma_error() without doing a callback
is not enough for that errorpath.

Instead, pass -EINVAL to the callback and handle it there
(see related motivation for read/write in 58ac32113).

It will however catch possible EINVAL from the block layer too.

Signed-off-by: Anton Nefedov 
Tested-by: Mark Cave-Ayland 
Message-id: 1520010495-58172-1-git-send-email-anton.nefe...@virtuozzo.com
Signed-off-by: John Snow 


  Commit: eb69953ecb1cbe7b4c4093a97a4dab3daa315d4e
  
https://github.com/qemu/qemu/commit/eb69953ecb1cbe7b4c4093a97a4dab3daa315d4e
  Author: Mark Cave-Ayland 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M hw/ide/macio.c

  Log Message:
  ---
  macio: fix NULL pointer dereference when issuing IDE trim

Commit ef0e64a983 "ide: pass IDEState to trim AIO callback" changed the
IDE trim callback from using a BlockBackend to an IDEState but forgot to update
the dma_blk_io() call in hw/ide/macio.c accordingly.

Without this fix qemu-system-ppc segfaults when issuing an IDE trim command on
any of the PPC Mac machines (easily triggered by running the Debian installer).

Reported-by: Howard Spoelstra 
Signed-off-by: Mark Cave-Ayland 
Reviewed-by: Anton Nefedov 
Message-id: 20180223184700.28854-1-mark.cave-ayl...@ilande.co.uk
Signed-off-by: John Snow 


  Commit: dfe732fb68ef9195517f4f380a477d58a054edc1
  
https://github.com/qemu/qemu/commit/dfe732fb68ef9195517f4f380a477d58a054edc1
  Author: Peter Maydell 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M hw/ide/core.c
M hw/ide/macio.c

  Log Message:
  ---
  Merge remote-tracking branch 'remotes/jnsnow/tags/ide-pull-request' into 
staging

# gpg: Signature made Tue 27 Mar 2018 05:56:19 BST
# gpg:using RSA key 7DEF8106AAFC390E
# gpg: Good signature from "John Snow (John Huston) "
# Primary key fingerprint: FAEB 9711 A12C F475 812F  18F2 88A9 064D 1835 61EB
#  Subkey fingerprint: F9B7 ABDB BCAC DF95 BE76  CBD0 7DEF 8106 AAFC 390E

* remotes/jnsnow/tags/ide-pull-request:
  macio: fix NULL pointer dereference when issuing IDE trim
  ide: fix invalid TRIM range abortion for macio

Signed-off-by: Peter Maydell 


Compare: https://github.com/qemu/qemu/compare/62d028966274...dfe732fb68ef

[Qemu-commits] [qemu/qemu] 67a741: queue: add QSIMPLEQ_PREPEND()

2018-03-27 Thread GitHub
  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 67a74148d8828f611fc5a7a23277b8eceb4c9430
  
https://github.com/qemu/qemu/commit/67a74148d8828f611fc5a7a23277b8eceb4c9430
  Author: Stefan Hajnoczi 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M include/qemu/queue.h

  Log Message:
  ---
  queue: add QSIMPLEQ_PREPEND()

QSIMPLEQ_CONCAT(a, b) joins a = a + b.  The new QSIMPLEQ_PREPEND(a, b)
API joins a = b + a.

Signed-off-by: Stefan Hajnoczi 
Reviewed-by: Paolo Bonzini 
Message-id: 20180322152834.12656-2-stefa...@redhat.com
Signed-off-by: Stefan Hajnoczi 


  Commit: c40a2545700e9ad2ef67d5972484bbee4c83b2a6
  
https://github.com/qemu/qemu/commit/c40a2545700e9ad2ef67d5972484bbee4c83b2a6
  Author: Stefan Hajnoczi 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M block/io.c
M include/qemu/coroutine_int.h
M util/qemu-coroutine-lock.c
M util/qemu-coroutine.c

  Log Message:
  ---
  coroutine: avoid co_queue_wakeup recursion

qemu_aio_coroutine_enter() is (indirectly) called recursively when
processing co_queue_wakeup.  This can lead to stack exhaustion.

This patch rewrites co_queue_wakeup in an iterative fashion (instead of
recursive) with bounded memory usage to prevent stack exhaustion.

qemu_co_queue_run_restart() is inlined into qemu_aio_coroutine_enter()
and the qemu_coroutine_enter() call is turned into a loop to avoid
recursion.

There is one change that is worth mentioning:  Previously, when
coroutine A queued coroutine B, qemu_co_queue_run_restart() entered
coroutine B from coroutine A.  If A was terminating then it would still
stay alive until B yielded.  After this patch B is entered by A's parent
so that a A can be deleted immediately if it is terminating.

It is safe to make this change since B could never interact with A if it
was terminating anyway.

Signed-off-by: Stefan Hajnoczi 
Reviewed-by: Paolo Bonzini 
Message-id: 20180322152834.12656-3-stefa...@redhat.com
Signed-off-by: Stefan Hajnoczi 


  Commit: 35111583aa03c1a918a3f68858ef86eb161c7c06
  
https://github.com/qemu/qemu/commit/35111583aa03c1a918a3f68858ef86eb161c7c06
  Author: Stefan Hajnoczi 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M tests/test-aio.c

  Log Message:
  ---
  coroutine: add test-aio coroutine queue chaining test case

Check that two coroutines can queue each other repeatedly without
hitting stack exhaustion.

Switch to qemu_init_main_loop() in main() because coroutines use
qemu_get_aio_context() - they don't know about test-aio's ctx variable.

Signed-off-by: Stefan Hajnoczi 
Reviewed-by: Paolo Bonzini 
Message-id: 20180322152834.12656-4-stefa...@redhat.com
Signed-off-by: Stefan Hajnoczi 


  Commit: f5a53faad4bfbf1b86012a13055d2a1a774a42b6
  
https://github.com/qemu/qemu/commit/f5a53faad4bfbf1b86012a13055d2a1a774a42b6
  Author: Stefan Hajnoczi 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M MAINTAINERS

  Log Message:
  ---
  MAINTAINERS: add include/block/aio-wait.h

The include/block/aio-wait.h header file was added by commit
7719f3c968c59e1bcda7e177679dc765b59e578f ("block: extract
AIO_WAIT_WHILE() from BlockDriverState") without updating MAINTAINERS.

Signed-off-by: Stefan Hajnoczi 
Reviewed-by: Eric Blake 
Message-id: 20180312132204.23683-1-stefa...@redhat.com
Signed-off-by: Stefan Hajnoczi 


  Commit: 6cf38cbf2961c57bd85022cf9adf7ef85dae0f02
  
https://github.com/qemu/qemu/commit/6cf38cbf2961c57bd85022cf9adf7ef85dae0f02
  Author: Peter Maydell 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M MAINTAINERS
M block/io.c
M include/qemu/coroutine_int.h
M include/qemu/queue.h
M tests/test-aio.c
M util/qemu-coroutine-lock.c
M util/qemu-coroutine.c

  Log Message:
  ---
  Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into 
staging

# gpg: Signature made Tue 27 Mar 2018 15:41:11 BST
# gpg:using RSA key 9CA4ABB381AB73C8
# gpg: Good signature from "Stefan Hajnoczi "
# gpg: aka "Stefan Hajnoczi "
# Primary key fingerprint: 8695 A8BF D3F9 7CDA AC35  775A 9CA4 ABB3 81AB 73C8

* remotes/stefanha/tags/block-pull-request:
  MAINTAINERS: add include/block/aio-wait.h
  coroutine: add test-aio coroutine queue chaining test case
  coroutine: avoid co_queue_wakeup recursion
  queue: add QSIMPLEQ_PREPEND()

Signed-off-by: Peter Maydell 


Compare: https://github.com/qemu/qemu/compare/dfe732fb68ef...6cf38cbf2961

[Qemu-commits] [qemu/qemu] 1bb982: gdbstub: send a termination packet instead of cras...

2018-03-27 Thread GitHub
  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 1bb982b8fc2f98246d47c83833c20bf858d649f4
  
https://github.com/qemu/qemu/commit/1bb982b8fc2f98246d47c83833c20bf858d649f4
  Author: KONRAD Frederic 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M gdbstub.c
M include/exec/gdbstub.h
M vl.c

  Log Message:
  ---
  gdbstub: send a termination packet instead of crashing gdb

Since the commit:
commit 4486e89c219c0d1b9bd8dfa0b1dd5b0d51ff2268
Author: Stefan Hajnoczi 
Date:   Wed Mar 7 14:42:05 2018 +

vl: introduce vm_shutdown()

GDB crashes when qemu exits (at least on sparc-softmmu):
Remote communication error.  Target disconnected.: Connection reset by peer.
Quitting: putpkt: write failed: Broken pipe.

So send a packet to exit GDB before we exit QEMU:
[Inferior 1 (Thread 0) exited normally]

Reviewed-by: Philippe Mathieu-Daudé 
Reviewed-by: Stefan Hajnoczi 
Signed-off-by: KONRAD Frederic 
Message-id: 1521538773-30802-1-git-send-email-frederic.kon...@adacore.com
Signed-off-by: Peter Maydell 




[Qemu-commits] [qemu/qemu]

2018-03-27 Thread GitHub
  Branch: refs/tags/v2.12.0-rc1
  Home:   https://github.com/qemu/qemu


[Qemu-commits] [qemu/qemu] fa3704: Update version for v2.12.0-rc1 release

2018-03-27 Thread GitHub
  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: fa3704d87720d7049d483ff669b9e2ff991e7658
  
https://github.com/qemu/qemu/commit/fa3704d87720d7049d483ff669b9e2ff991e7658
  Author: Peter Maydell 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M VERSION

  Log Message:
  ---
  Update version for v2.12.0-rc1 release

Signed-off-by: Peter Maydell