diff options
author | Hitoshi Mitake <mitake.hitoshi@lab.ntt.co.jp> | 2015-07-18 01:44:24 +0900 |
---|---|---|
committer | Jeff Cody <jcody@redhat.com> | 2015-07-28 00:16:57 -0400 |
commit | 6a55c82cece217ab99ed95a412fa7ddf5d5f257b (patch) | |
tree | 8869b66bc648c170c22adb1323bb7fe31b7d5697 /include/block/qapi.h | |
parent | f8787f8723eaca1be99e3b1873e54de163fffa93 (diff) | |
download | qemu-6a55c82cece217ab99ed95a412fa7ddf5d5f257b.tar.gz qemu-6a55c82cece217ab99ed95a412fa7ddf5d5f257b.tar.bz2 qemu-6a55c82cece217ab99ed95a412fa7ddf5d5f257b.zip |
sheepdog: serialize requests to overwrapping area
Current sheepdog driver only serializes create requests in oid
unit. This mechanism isn't enough for handling requests to
overwrapping area spanning multiple oids, so it can result bugs like
below:
https://bugs.launchpad.net/sheepdog-project/+bug/1456421
This patch adds a new serialization mechanism for the problem. The
difference from the old one is:
1. serialize entire aiocb if their targetting areas overwrap
2. serialize all requests (read, write, and discard), not only creates
This patch also removes the old mechanism because the new one can be
an alternative.
Cc: Kevin Wolf <kwolf@redhat.com>
Cc: Stefan Hajnoczi <stefanha@redhat.com>
Cc: Teruaki Ishizaki <ishizaki.teruaki@lab.ntt.co.jp>
Cc: Vasiliy Tolstov <v.tolstov@selfip.ru>
Signed-off-by: Hitoshi Mitake <mitake.hitoshi@lab.ntt.co.jp>
Tested-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
Signed-off-by: Jeff Cody <jcody@redhat.com>
Diffstat (limited to 'include/block/qapi.h')
0 files changed, 0 insertions, 0 deletions