Benoît Canet 1ba4b6a553 block: Prevent coroutine stack overflow when recursing in bdrv_open_backing_file.
In 1.7.1 qcow2_create2 reopen the file for flushing without the BDRV_O_NO_BACKING
flags.

As a consequence the code would recursively open the whole backing chain.

These three stack arrays would pile up through the recursion and lead to a coroutine
stack overflow.

Convert these array to malloced buffers in order to streamline the coroutine
footprint.

Symptoms where freezes or segfaults on production machines while taking QMP externals
snapshots. The overflow disturbed coroutine switching.

[Resolved conflicts on qemu.git/master since the patch was against v1.7.1
--Stefan]

Signed-off-by: Benoit Canet <benoit.canet@gmail.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2014-04-25 18:05:05 +02:00
2014-04-23 10:28:14 +02:00
2013-04-18 13:50:53 +02:00
2014-04-25 12:22:37 +01:00
2014-04-25 12:22:37 +01:00
2013-08-07 12:48:00 -05:00
2014-03-25 14:09:50 +01:00
2014-04-24 15:24:52 +01:00
2014-03-28 13:46:29 +00:00
2012-09-07 09:02:44 +03:00
2014-03-12 17:26:32 +01:00
2013-09-05 09:40:31 -05:00
2013-10-11 09:34:56 -07:00
2008-10-12 17:54:42 +00:00
2014-03-19 19:47:15 +01:00
2013-07-23 02:41:31 +02:00
2013-02-21 16:17:31 -06:00
2013-08-12 09:15:12 -05:00
2014-04-07 10:50:30 +02:00
2014-03-13 14:42:24 +01:00
2013-09-03 12:25:55 +02:00
2014-03-27 15:19:00 +05:30
2014-02-21 21:02:23 +01:00
2014-03-13 14:34:16 +00:00
2014-02-25 14:30:28 +01:00
2014-04-18 10:33:36 +04:00
2014-03-27 15:19:00 +05:30
2014-04-22 13:47:46 +02:00
2014-04-22 12:00:20 +02:00
2014-04-22 12:00:20 +02:00
2013-12-04 15:19:00 +01:00
2014-04-18 10:33:36 +04:00
2014-03-05 03:06:24 +01:00
2013-10-11 09:34:56 -07:00
2014-03-27 15:19:00 +05:30
2014-02-17 11:57:23 -05:00
2014-04-23 10:28:14 +02:00
2014-04-17 20:39:32 +01:00
2013-10-11 09:34:56 -07:00
2014-03-27 15:19:00 +05:30
2013-04-08 18:13:10 +02:00

Read the documentation in qemu-doc.html or on http://wiki.qemu-project.org

- QEMU team
Description
No description provided
Readme 418 MiB
Languages
Rust 68.8%
C 26.3%
C++ 3%
Python 0.9%
Shell 0.5%
Other 0.3%