qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 5d5550: raw-win32: Fix write request error ha


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 5d5550: raw-win32: Fix write request error handling
Date: Fri, 02 Oct 2015 08:30:06 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 5d555030ba10ef3be12cd75a121a7cd5f6ef9bd2
      
https://github.com/qemu/qemu/commit/5d555030ba10ef3be12cd75a121a7cd5f6ef9bd2
  Author: Kevin Wolf <address@hidden>
  Date:   2015-10-02 (Fri, 02 Oct 2015)

  Changed paths:
    M block/raw-win32.c

  Log Message:
  -----------
  raw-win32: Fix write request error handling

aio_worker() wrote the return code to the wrong variable.

Signed-off-by: Kevin Wolf <address@hidden>
Tested-by: Guangmu Zhu <address@hidden>
Reviewed-by: Eric Blake <address@hidden>


  Commit: 552bb52c4bf199ae9c038570187749b93c91310a
      
https://github.com/qemu/qemu/commit/552bb52c4bf199ae9c038570187749b93c91310a
  Author: Eric Blake <address@hidden>
  Date:   2015-10-02 (Fri, 02 Oct 2015)

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

  Log Message:
  -----------
  tests: Fix test 049 fallout from improved HMP error messages

Commit 50b7b000 improved HMP error messages, but forgot to update
qemu-iotests to match.

Reported-by: Kevin Wolf <address@hidden>
Signed-off-by: Eric Blake <address@hidden>
Reviewed-by: John Snow <address@hidden>
Reviewed-by: Alberto Garcia <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: bb3c801df7ed454b663312326bc29c8b9c2e4de6
      
https://github.com/qemu/qemu/commit/bb3c801df7ed454b663312326bc29c8b9c2e4de6
  Author: Max Reitz <address@hidden>
  Date:   2015-10-02 (Fri, 02 Oct 2015)

  Changed paths:
    M tests/qemu-iotests/128

  Log Message:
  -----------
  iotests: Fix test 128 for password-less sudo

As of 934659c460d46c948cf348822fda1d38556ed9a4, $QEMU_IO is generally no
longer a program name, and therefore "sudo -n $QEMU_IO" will no longer
work.

Fix this by copying the qemu-io invocation function from common.config,
making it use $sudo for invoking $QEMU_IO_PROG, and then use that
function instead of $QEMU_IO.

Reported-by: Fam Zheng <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 99b7e7756780cec03fe5175db0f53b2fffa9426b
      
https://github.com/qemu/qemu/commit/99b7e7756780cec03fe5175db0f53b2fffa9426b
  Author: Alberto Garcia <address@hidden>
  Date:   2015-10-02 (Fri, 02 Oct 2015)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: disable I/O limits at the beginning of bdrv_close()

Disabling I/O limits from a BDS also drains all pending throttled
requests, so it should be done at the beginning of bdrv_close() with
the rest of the bdrv_drain() calls before the BlockDriver is closed.

Signed-off-by: Alberto Garcia <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 73ba05d936e82fe01b2b2cf987bf3aecb4792af5
      
https://github.com/qemu/qemu/commit/73ba05d936e82fe01b2b2cf987bf3aecb4792af5
  Author: Richard W.M. Jones <address@hidden>
  Date:   2015-10-02 (Fri, 02 Oct 2015)

  Changed paths:
    M block/raw-posix.c

  Log Message:
  -----------
  block/raw-posix: Open file descriptor O_RDWR to work around glibc 
posix_fallocate emulation issue.

  https://bugzilla.redhat.com/show_bug.cgi?id=1265196

The following command fails on an NFS mountpoint:

  $ qemu-img create -f qcow2 -o preallocation=falloc disk.img 262144
  Formatting 'disk.img', fmt=qcow2 size=262144 encryption=off 
cluster_size=65536 preallocation='falloc' lazy_refcounts=off
  qemu-img: disk.img: Could not preallocate data for the new file: Bad file 
descriptor

The reason turns out to be because NFS doesn't support the
posix_fallocate call.  glibc emulates it instead.  However glibc's
emulation involves using the pread(2) syscall.  The pread syscall
fails with EBADF if the file descriptor is opened without the read
open-flag (ie. open (..., O_WRONLY)).

I contacted glibc upstream about this, and their response is here:

  https://bugzilla.redhat.com/show_bug.cgi?id=1265196#c9

There are two possible fixes: Use Linux fallocate directly, or (this
fix) work around the problem in qemu by opening the file with O_RDWR
instead of O_WRONLY.

Signed-off-by: Richard W.M. Jones <address@hidden>
BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1265196
Reviewed-by: Jeff Cody <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 37dd86a44cc4298f58ac370e0190b069469b6d25
      
https://github.com/qemu/qemu/commit/37dd86a44cc4298f58ac370e0190b069469b6d25
  Author: Peter Maydell <address@hidden>
  Date:   2015-10-02 (Fri, 02 Oct 2015)

  Changed paths:
    M block.c
    M block/raw-posix.c
    M block/raw-win32.c
    M tests/qemu-iotests/049.out
    M tests/qemu-iotests/128

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging

Block layer patches

# gpg: Signature made Fri 02 Oct 2015 12:49:13 BST using RSA key ID C88F2FD6
# gpg: Good signature from "Kevin Wolf <address@hidden>"

* remotes/kevin/tags/for-upstream:
  block/raw-posix: Open file descriptor O_RDWR to work around glibc 
posix_fallocate emulation issue.
  block: disable I/O limits at the beginning of bdrv_close()
  iotests: Fix test 128 for password-less sudo
  tests: Fix test 049 fallout from improved HMP error messages
  raw-win32: Fix write request error handling

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/ff770b07f34d...37dd86a44cc4

reply via email to

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