1
The following changes since commit 285278ca785f5fa9a570927e1c0958a2ca2b2150:
1
The following changes since commit 3521ade3510eb5cefb2e27a101667f25dad89935:
2
2
3
Merge remote-tracking branch 'remotes/famz/tags/testing-pull-request' into staging (2018-10-27 19:55:08 +0100)
3
Merge remote-tracking branch 'remotes/thuth-gitlab/tags/pull-request-2021-07-29' into staging (2021-07-29 13:17:20 +0100)
4
4
5
are available in the Git repository at:
5
are available in the Git repository at:
6
6
7
git://github.com/stefanha/qemu.git tags/block-pull-request
7
https://gitlab.com/stefanha/qemu.git tags/block-pull-request
8
8
9
for you to fetch changes up to bd54b11062c4baa7d2e4efadcf71b8cfd55311fd:
9
for you to fetch changes up to cc8eecd7f105a1dff5876adeb238a14696061a4a:
10
10
11
nvdimm: Add docs hint for Linux driver name (2018-10-29 13:35:22 +0000)
11
MAINTAINERS: Added myself as a reviewer for the NVMe Block Driver (2021-07-29 17:17:34 +0100)
12
12
13
----------------------------------------------------------------
13
----------------------------------------------------------------
14
Pull request
14
Pull request
15
15
16
No changelog entries necessary, just small tweaks.
16
The main fix here is for io_uring. Spurious -EAGAIN errors can happen and the
17
request needs to be resubmitted.
18
19
The MAINTAINERS changes carry no risk and we might as well include them in QEMU
20
6.1.
17
21
18
----------------------------------------------------------------
22
----------------------------------------------------------------
19
23
20
Kees Cook (1):
24
Fabian Ebner (1):
21
nvdimm: Add docs hint for Linux driver name
25
block/io_uring: resubmit when result is -EAGAIN
22
26
23
Li Qiang (1):
27
Philippe Mathieu-Daudé (1):
24
util: aio-posix: fix a typo
28
MAINTAINERS: Added myself as a reviewer for the NVMe Block Driver
25
29
26
docs/nvdimm.txt | 5 +++--
30
Stefano Garzarella (1):
27
util/aio-posix.c | 2 +-
31
MAINTAINERS: add Stefano Garzarella as io_uring reviewer
28
2 files changed, 4 insertions(+), 3 deletions(-)
32
33
MAINTAINERS | 2 ++
34
block/io_uring.c | 16 +++++++++++++++-
35
2 files changed, 17 insertions(+), 1 deletion(-)
29
36
30
--
37
--
31
2.17.2
38
2.31.1
32
39
33
diff view generated by jsdifflib
New patch
1
From: Stefano Garzarella <sgarzare@redhat.com>
1
2
3
I've been working with io_uring for a while so I'd like to help
4
with reviews.
5
6
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
7
Message-Id: <20210728131515.131045-1-sgarzare@redhat.com>
8
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
9
---
10
MAINTAINERS | 1 +
11
1 file changed, 1 insertion(+)
12
13
diff --git a/MAINTAINERS b/MAINTAINERS
14
index XXXXXXX..XXXXXXX 100644
15
--- a/MAINTAINERS
16
+++ b/MAINTAINERS
17
@@ -XXX,XX +XXX,XX @@ Linux io_uring
18
M: Aarushi Mehta <mehta.aaru20@gmail.com>
19
M: Julia Suvorova <jusual@redhat.com>
20
M: Stefan Hajnoczi <stefanha@redhat.com>
21
+R: Stefano Garzarella <sgarzare@redhat.com>
22
L: qemu-block@nongnu.org
23
S: Maintained
24
F: block/io_uring.c
25
--
26
2.31.1
27
diff view generated by jsdifflib
1
From: Kees Cook <keescook@chromium.org>
1
From: Fabian Ebner <f.ebner@proxmox.com>
2
2
3
I spent way too much time trying to figure out why the emulated NVDIMM
3
Linux SCSI can throw spurious -EAGAIN in some corner cases in its
4
was missing under Linux. In an effort to help others who might be looking
4
completion path, which will end up being the result in the completed
5
for these kinds of things in the future, include a hint.
5
io_uring request.
6
6
7
Signed-off-by: Kees Cook <keescook@chromium.org>
7
Resubmitting such requests should allow block jobs to complete, even
8
Message-id: 20181018201351.GA25286@beast
8
if such spurious errors are encountered.
9
10
Co-authored-by: Stefan Hajnoczi <stefanha@gmail.com>
11
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
12
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
13
Message-id: 20210729091029.65369-1-f.ebner@proxmox.com
9
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
14
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
10
---
15
---
11
docs/nvdimm.txt | 5 +++--
16
block/io_uring.c | 16 +++++++++++++++-
12
1 file changed, 3 insertions(+), 2 deletions(-)
17
1 file changed, 15 insertions(+), 1 deletion(-)
13
18
14
diff --git a/docs/nvdimm.txt b/docs/nvdimm.txt
19
diff --git a/block/io_uring.c b/block/io_uring.c
15
index XXXXXXX..XXXXXXX 100644
20
index XXXXXXX..XXXXXXX 100644
16
--- a/docs/nvdimm.txt
21
--- a/block/io_uring.c
17
+++ b/docs/nvdimm.txt
22
+++ b/block/io_uring.c
18
@@ -XXX,XX +XXX,XX @@ Multiple vNVDIMM devices can be created if multiple pairs of "-object"
23
@@ -XXX,XX +XXX,XX @@ static void luring_process_completions(LuringState *s)
19
and "-device" are provided.
24
total_bytes = ret + luringcb->total_read;
20
25
21
For above command line options, if the guest OS has the proper NVDIMM
26
if (ret < 0) {
22
-driver, it should be able to detect a NVDIMM device which is in the
27
- if (ret == -EINTR) {
23
-persistent memory mode and whose size is $NVDIMM_SIZE.
28
+ /*
24
+driver (e.g. "CONFIG_ACPI_NFIT=y" under Linux), it should be able to
29
+ * Only writev/readv/fsync requests on regular files or host block
25
+detect a NVDIMM device which is in the persistent memory mode and whose
30
+ * devices are submitted. Therefore -EAGAIN is not expected but it's
26
+size is $NVDIMM_SIZE.
31
+ * known to happen sometimes with Linux SCSI. Submit again and hope
27
32
+ * the request completes successfully.
28
Note:
33
+ *
29
34
+ * For more information, see:
35
+ * https://lore.kernel.org/io-uring/20210727165811.284510-3-axboe@kernel.dk/T/#u
36
+ *
37
+ * If the code is changed to submit other types of requests in the
38
+ * future, then this workaround may need to be extended to deal with
39
+ * genuine -EAGAIN results that should not be resubmitted
40
+ * immediately.
41
+ */
42
+ if (ret == -EINTR || ret == -EAGAIN) {
43
luring_resubmit(s, luringcb);
44
continue;
45
}
30
--
46
--
31
2.17.2
47
2.31.1
32
48
33
diff view generated by jsdifflib
1
From: Li Qiang <liq3ea@gmail.com>
1
From: Philippe Mathieu-Daudé <philmd@redhat.com>
2
2
3
Cc: qemu-trivial@nongnu.org
3
I'm interested in following the activity around the NVMe bdrv.
4
Signed-off-by: Li Qiang <liq3ea@gmail.com>
4
5
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
5
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
6
Reviewed-by: Fam Zheng <famz@redhat.com>
6
Message-id: 20210728183340.2018313-1-philmd@redhat.com
7
Message-id: 1538964972-3223-1-git-send-email-liq3ea@gmail.com
8
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
7
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
9
---
8
---
10
util/aio-posix.c | 2 +-
9
MAINTAINERS | 1 +
11
1 file changed, 1 insertion(+), 1 deletion(-)
10
1 file changed, 1 insertion(+)
12
11
13
diff --git a/util/aio-posix.c b/util/aio-posix.c
12
diff --git a/MAINTAINERS b/MAINTAINERS
14
index XXXXXXX..XXXXXXX 100644
13
index XXXXXXX..XXXXXXX 100644
15
--- a/util/aio-posix.c
14
--- a/MAINTAINERS
16
+++ b/util/aio-posix.c
15
+++ b/MAINTAINERS
17
@@ -XXX,XX +XXX,XX @@ struct AioHandler
16
@@ -XXX,XX +XXX,XX @@ F: block/null.c
18
17
NVMe Block Driver
19
#ifdef CONFIG_EPOLL_CREATE1
18
M: Stefan Hajnoczi <stefanha@redhat.com>
20
19
R: Fam Zheng <fam@euphon.net>
21
-/* The fd number threashold to switch to epoll */
20
+R: Philippe Mathieu-Daudé <philmd@redhat.com>
22
+/* The fd number threshold to switch to epoll */
21
L: qemu-block@nongnu.org
23
#define EPOLL_ENABLE_THRESHOLD 64
22
S: Supported
24
23
F: block/nvme*
25
static void aio_epoll_disable(AioContext *ctx)
26
--
24
--
27
2.17.2
25
2.31.1
28
26
29
diff view generated by jsdifflib