Merge remote-tracking branch 'kwolf/for-anthony' into staging

* kwolf/for-anthony:
  qemu-img: Fix segmentation fault
  qcow2: Don't ignore failure to clear autoclear flags
  coroutine: Fix setup of sigaltstack coroutines
This commit is contained in:
Anthony Liguori 2012-05-14 12:45:01 -05:00
commit 9cc31772bf
3 changed files with 8 additions and 3 deletions

View File

@ -300,7 +300,10 @@ static int qcow2_open(BlockDriverState *bs, int flags)
if (!bs->read_only && s->autoclear_features != 0) {
s->autoclear_features = 0;
qcow2_update_header(bs);
ret = qcow2_update_header(bs);
if (ret < 0) {
goto fail;
}
}
/* Check support for various header values */

View File

@ -226,7 +226,7 @@ static Coroutine *coroutine_new(void)
* called.
*/
coTS->tr_called = 0;
kill(getpid(), SIGUSR2);
pthread_kill(pthread_self(), SIGUSR2);
sigfillset(&sigs);
sigdelset(&sigs, SIGUSR2);
while (!coTS->tr_called) {

View File

@ -712,6 +712,9 @@ static int img_convert(int argc, char **argv)
out_filename = argv[argc - 1];
/* Initialize before goto out */
qemu_progress_init(progress, 2.0);
if (options && !strcmp(options, "?")) {
ret = print_block_option_help(out_filename, out_fmt);
goto out;
@ -724,7 +727,6 @@ static int img_convert(int argc, char **argv)
goto out;
}
qemu_progress_init(progress, 2.0);
qemu_progress_print(0, 100);
bs = g_malloc0(bs_n * sizeof(BlockDriverState *));