diff options
author | Anthony Liguori <anthony@codemonkey.ws> | 2013-09-23 11:53:05 -0500 |
---|---|---|
committer | Anthony Liguori <anthony@codemonkey.ws> | 2013-09-23 11:53:05 -0500 |
commit | 16121fa39e1ec17308162af4de5c5f6c01c1cce1 (patch) | |
tree | e51c28fbcfca41313aa3fd9e9e052be54c69b99c /util | |
parent | 2e6ae666c8ccaa7fd26d7102c5c9bed24dc02b1d (diff) | |
parent | ef5bc96268ceec64769617dc53b0ac3a20ff351c (diff) |
Merge remote-tracking branch 'stefanha/block' into staging
# By Stefan Hajnoczi (4) and others
# Via Stefan Hajnoczi
* stefanha/block:
virtio-blk: do not relay a previous driver's WCE configuration to the current
blockdev: do not default cache.no-flush to true
block: don't lose data from last incomplete sector
qcow2: Correct snapshots size for overlap check
coroutine: fix /perf/nesting coroutine benchmark
coroutine: add qemu_coroutine_yield benchmark
qemu-timer: do not take the lock in timer_pending
qemu-timer: make qemu_timer_mod_ns() and qemu_timer_del() thread-safe
qemu-timer: drop outdated signal safety comments
osdep: warn if open(O_DIRECT) on fails with EINVAL
libcacard: link against qemu-error.o for error_report()
Message-id: 1379698931-946-1-git-send-email-stefanha@redhat.com
Diffstat (limited to 'util')
-rw-r--r-- | util/osdep.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/util/osdep.c b/util/osdep.c index 685c8ae889..62072b4be3 100644 --- a/util/osdep.c +++ b/util/osdep.c @@ -207,6 +207,13 @@ int qemu_open(const char *name, int flags, ...) } #endif +#ifdef O_DIRECT + if (ret == -1 && errno == EINVAL && (flags & O_DIRECT)) { + error_report("file system may not support O_DIRECT"); + errno = EINVAL; /* in case it was clobbered */ + } +#endif /* O_DIRECT */ + return ret; } |