[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] c53cb4: block: eliminate BDRV_REQ_NO_SERIALIS
From: |
Peter Maydell |
Subject: |
[Qemu-commits] [qemu/qemu] c53cb4: block: eliminate BDRV_REQ_NO_SERIALISING |
Date: |
Fri, 31 Jan 2020 03:45:12 -0800 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: c53cb427695214a9cb53e8ace4307c91a6b6e406
https://github.com/qemu/qemu/commit/c53cb427695214a9cb53e8ace4307c91a6b6e406
Author: Paolo Bonzini <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M block/io.c
M include/block/block.h
Log Message:
-----------
block: eliminate BDRV_REQ_NO_SERIALISING
It is unused since commit 00e30f0 ("block/backup: use backup-top instead
of write notifiers", 2019-10-01), drop it to simplify the code.
While at it, drop redundant assertions on flags.
Signed-off-by: Paolo Bonzini <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: 18fbd0dec7e05183d7fef636155cd9b3e2ac5013
https://github.com/qemu/qemu/commit/18fbd0dec7e05183d7fef636155cd9b3e2ac5013
Author: Paolo Bonzini <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M block/file-posix.c
M block/io.c
M include/block/block_int.h
Log Message:
-----------
block/io: wait for serialising requests when a request becomes serialising
Marking without waiting would not result in actual serialising behavior.
Thus, make a call bdrv_mark_request_serialising sufficient for
serialisation to happen.
Signed-off-by: Paolo Bonzini <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: 3ba0e1a00cf3c09bfa3980ce98439dc73707039d
https://github.com/qemu/qemu/commit/3ba0e1a00cf3c09bfa3980ce98439dc73707039d
Author: Paolo Bonzini <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M block/io.c
Log Message:
-----------
block/io: take bs->reqs_lock in bdrv_mark_request_serialising
bdrv_mark_request_serialising is writing the overlap_offset and
overlap_bytes fields of BdrvTrackedRequest. Take bs->reqs_lock
for the whole duration of it, and not just when waiting for
serialising requests, so that tracked_request_overlaps does not
look at a half-updated request.
The new code does not unlock/relock around retries. This is unnecessary
because a retry is always preceded by a CoQueue wait, which already
releases and reacquires bs->reqs_lock.
Reported-by: Peter Lieven <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: c10dd8565defdb14695580c9369b20f4544e65a2
https://github.com/qemu/qemu/commit/c10dd8565defdb14695580c9369b20f4544e65a2
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M configure
Log Message:
-----------
configure: permit use of io_uring
Signed-off-by: Aarushi Mehta <address@hidden>
Reviewed-by: Maxim Levitsky <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: f14beaecaf019b60a890d3c5439619fa0c5d59ce
https://github.com/qemu/qemu/commit/f14beaecaf019b60a890d3c5439619fa0c5d59ce
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M qapi/block-core.json
Log Message:
-----------
qapi/block-core: add option for io_uring
Since io_uring is the actual name of the Linux API, we use it as enum
value even though the QAPI schema conventions would prefer io-uring.
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Markus Armbruster <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: 4c34ee366dbd0cf586827c3af505c2084541aa57
https://github.com/qemu/qemu/commit/4c34ee366dbd0cf586827c3af505c2084541aa57
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M include/block/block.h
Log Message:
-----------
block/block: add BDRV flag for io_uring
Signed-off-by: Aarushi Mehta <address@hidden>
Reviewed-by: Maxim Levitsky <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: 6663a0a33764613bfa0bcac5cc7a6f14bd04ee34
https://github.com/qemu/qemu/commit/6663a0a33764613bfa0bcac5cc7a6f14bd04ee34
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M MAINTAINERS
M block/Makefile.objs
A block/io_uring.c
M include/block/aio.h
M include/block/raw-aio.h
Log Message:
-----------
block/io_uring: implements interfaces for io_uring
Aborts when sqe fails to be set as sqes cannot be returned to the
ring. Adds slow path for short reads for older kernels
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: 06a47ef57c3baa9b06006cd424afe89bbaf162b5
https://github.com/qemu/qemu/commit/06a47ef57c3baa9b06006cd424afe89bbaf162b5
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M MAINTAINERS
M stubs/Makefile.objs
A stubs/io_uring.c
Log Message:
-----------
stubs: add stubs for io_uring interface
Follow linux-aio.o and stub out the block/io_uring.o APIs that will be
missing when a binary is linked with obj-util-y but without
block-util-y (e.g. vhost-user-gpu).
For example, the stubs are necessary so that a binary using util/async.o
from obj-util-y for qemu_bh_new() links successfully. In this case
block/io_uring.o from block-util-y isn't needed and we can avoid
dragging in the block layer by linking the stubs instead. The stub
functions never get called.
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: fcb7a4a4e8ae8938e86a669dd9c276ee98aa4203
https://github.com/qemu/qemu/commit/fcb7a4a4e8ae8938e86a669dd9c276ee98aa4203
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M util/async.c
Log Message:
-----------
util/async: add aio interfaces for io_uring
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: f80f267373fd3170584da9d229ac07d4f26b7e16
https://github.com/qemu/qemu/commit/f80f267373fd3170584da9d229ac07d4f26b7e16
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M block.c
M blockdev.c
M include/block/block.h
Log Message:
-----------
blockdev: adds bdrv_parse_aio to use io_uring
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: c64475106909b7f53c31949657e6909b856e0ad4
https://github.com/qemu/qemu/commit/c64475106909b7f53c31949657e6909b856e0ad4
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M block/file-posix.c
Log Message:
-----------
block/file-posix.c: extend to use io_uring
Signed-off-by: Aarushi Mehta <address@hidden>
Reviewed-by: Maxim Levitsky <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: d803f59050847c5dfddc84298cb3b64042921c47
https://github.com/qemu/qemu/commit/d803f59050847c5dfddc84298cb3b64042921c47
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M block/io_uring.c
M block/trace-events
Log Message:
-----------
block: add trace events for io_uring
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: daffeb027b9396b2e60842649e8f141e465e1d19
https://github.com/qemu/qemu/commit/daffeb027b9396b2e60842649e8f141e465e1d19
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M block/io_uring.c
Log Message:
-----------
block/io_uring: adds userspace completion polling
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: 1c5a2aecead5c914d9880c8d9b01ec8d43c8f73e
https://github.com/qemu/qemu/commit/1c5a2aecead5c914d9880c8d9b01ec8d43c8f73e
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M qemu-io.c
Log Message:
-----------
qemu-io: adds option to use aio engine
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: cdd267749a3ab787e8b03f1971d1c7c147c8a47c
https://github.com/qemu/qemu/commit/cdd267749a3ab787e8b03f1971d1c7c147c8a47c
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M qemu-img-cmds.hx
M qemu-img.c
M qemu-img.texi
Log Message:
-----------
qemu-img: adds option to use aio engine for benchmarking
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: 7680274da1357c559373c2e14e13f3a5bf4fa100
https://github.com/qemu/qemu/commit/7680274da1357c559373c2e14e13f3a5bf4fa100
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M docs/interop/qemu-nbd.rst
M qemu-nbd.c
Log Message:
-----------
qemu-nbd: adds option for aio engines
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Eric Blake <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: 7156ca4888fae02ced9dd83342d06ded0de420c6
https://github.com/qemu/qemu/commit/7156ca4888fae02ced9dd83342d06ded0de420c6
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M tests/qemu-iotests/check
M tests/qemu-iotests/common.rc
M tests/qemu-iotests/iotests.py
Log Message:
-----------
tests/qemu-iotests: enable testing with aio options
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: 8dff69b9415b4287e900358744b732195e1ab2e2
https://github.com/qemu/qemu/commit/8dff69b9415b4287e900358744b732195e1ab2e2
Author: Aarushi Mehta <address@hidden>
Date: 2020-01-30 (Thu, 30 Jan 2020)
Changed paths:
M tests/qemu-iotests/028
M tests/qemu-iotests/058
M tests/qemu-iotests/089
M tests/qemu-iotests/091
M tests/qemu-iotests/109
M tests/qemu-iotests/147
M tests/qemu-iotests/181
M tests/qemu-iotests/183
M tests/qemu-iotests/185
M tests/qemu-iotests/200
M tests/qemu-iotests/201
Log Message:
-----------
tests/qemu-iotests: use AIOMODE with various tests
Signed-off-by: Aarushi Mehta <address@hidden>
Acked-by: Stefano Garzarella <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
Commit: adcd6e93b9519f7fe421d543e3aa646895b32e1a
https://github.com/qemu/qemu/commit/adcd6e93b9519f7fe421d543e3aa646895b32e1a
Author: Peter Maydell <address@hidden>
Date: 2020-01-31 (Fri, 31 Jan 2020)
Changed paths:
M MAINTAINERS
M block.c
M block/Makefile.objs
M block/file-posix.c
M block/io.c
A block/io_uring.c
M block/trace-events
M blockdev.c
M configure
M docs/interop/qemu-nbd.rst
M include/block/aio.h
M include/block/block.h
M include/block/block_int.h
M include/block/raw-aio.h
M qapi/block-core.json
M qemu-img-cmds.hx
M qemu-img.c
M qemu-img.texi
M qemu-io.c
M qemu-nbd.c
M stubs/Makefile.objs
A stubs/io_uring.c
M tests/qemu-iotests/028
M tests/qemu-iotests/058
M tests/qemu-iotests/089
M tests/qemu-iotests/091
M tests/qemu-iotests/109
M tests/qemu-iotests/147
M tests/qemu-iotests/181
M tests/qemu-iotests/183
M tests/qemu-iotests/185
M tests/qemu-iotests/200
M tests/qemu-iotests/201
M tests/qemu-iotests/check
M tests/qemu-iotests/common.rc
M tests/qemu-iotests/iotests.py
M util/async.c
Log Message:
-----------
Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into
staging
Pull request
# gpg: Signature made Thu 30 Jan 2020 21:31:02 GMT
# gpg: using RSA key 8695A8BFD3F97CDAAC35775A9CA4ABB381AB73C8
# gpg: Good signature from "Stefan Hajnoczi <address@hidden>" [full]
# gpg: aka "Stefan Hajnoczi <address@hidden>" [full]
# Primary key fingerprint: 8695 A8BF D3F9 7CDA AC35 775A 9CA4 ABB3 81AB 73C8
* remotes/stefanha/tags/block-pull-request:
tests/qemu-iotests: use AIOMODE with various tests
tests/qemu-iotests: enable testing with aio options
qemu-nbd: adds option for aio engines
qemu-img: adds option to use aio engine for benchmarking
qemu-io: adds option to use aio engine
block/io_uring: adds userspace completion polling
block: add trace events for io_uring
block/file-posix.c: extend to use io_uring
blockdev: adds bdrv_parse_aio to use io_uring
util/async: add aio interfaces for io_uring
stubs: add stubs for io_uring interface
block/io_uring: implements interfaces for io_uring
block/block: add BDRV flag for io_uring
qapi/block-core: add option for io_uring
configure: permit use of io_uring
block/io: take bs->reqs_lock in bdrv_mark_request_serialising
block/io: wait for serialising requests when a request becomes serialising
block: eliminate BDRV_REQ_NO_SERIALISING
Signed-off-by: Peter Maydell <address@hidden>
Compare: https://github.com/qemu/qemu/compare/928173659d6e...adcd6e93b951
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] c53cb4: block: eliminate BDRV_REQ_NO_SERIALISING,
Peter Maydell <=