* [PULL 0/3] Block patches
@ 2025-05-08 14:22 Stefan Hajnoczi
2025-05-08 14:22 ` [PULL 1/3] util: Add functions for s390x mmio read/write Stefan Hajnoczi
` (3 more replies)
0 siblings, 4 replies; 29+ messages in thread
From: Stefan Hajnoczi @ 2025-05-08 14:22 UTC (permalink / raw)
To: qemu-devel
Cc: Stefan Hajnoczi, Kevin Wolf, Fam Zheng, Hanna Reitz, qemu-block,
qemu-s390x, Thomas Huth, Philippe Mathieu-Daudé
The following changes since commit 57b6f8d07f1478375f85a4593a207e936c63ff59:
Merge tag 'pull-target-arm-20250506' of https://git.linaro.org/people/pmaydell/qemu-arm into staging (2025-05-07 14:28:20 -0400)
are available in the Git repository at:
https://gitlab.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to 624379be3a8136db420ec3a3fee36fe91e9f789e:
block/nvme: Use host PCI MMIO API (2025-05-08 10:21:10 -0400)
----------------------------------------------------------------
Pull request
Farhan Ali's s390x host PCI support for the block/nvme.c driver.
----------------------------------------------------------------
Farhan Ali (3):
util: Add functions for s390x mmio read/write
include: Add a header to define host PCI MMIO functions
block/nvme: Use host PCI MMIO API
include/qemu/host-pci-mmio.h | 136 +++++++++++++++++++++++++++++++
include/qemu/s390x_pci_mmio.h | 24 ++++++
block/nvme.c | 41 +++++-----
util/s390x_pci_mmio.c | 146 ++++++++++++++++++++++++++++++++++
util/meson.build | 2 +
5 files changed, 331 insertions(+), 18 deletions(-)
create mode 100644 include/qemu/host-pci-mmio.h
create mode 100644 include/qemu/s390x_pci_mmio.h
create mode 100644 util/s390x_pci_mmio.c
--
2.49.0
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 1/3] util: Add functions for s390x mmio read/write
2025-05-08 14:22 [PULL 0/3] Block patches Stefan Hajnoczi
@ 2025-05-08 14:22 ` Stefan Hajnoczi
2025-05-08 14:22 ` [PULL 2/3] include: Add a header to define host PCI MMIO functions Stefan Hajnoczi
` (2 subsequent siblings)
3 siblings, 0 replies; 29+ messages in thread
From: Stefan Hajnoczi @ 2025-05-08 14:22 UTC (permalink / raw)
To: qemu-devel
Cc: Stefan Hajnoczi, Kevin Wolf, Fam Zheng, Hanna Reitz, qemu-block,
qemu-s390x, Thomas Huth, Philippe Mathieu-Daudé, Farhan Ali,
Niklas Schnelle
From: Farhan Ali <alifm@linux.ibm.com>
Starting with z15 (or newer) we can execute mmio
instructions from userspace. On older platforms
where we don't have these instructions available
we can fallback to using system calls to access
the PCI mapped resources.
This patch adds helper functions for mmio reads
and writes for s390x.
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Niklas Schnelle <schnelle@linux.ibm.com>
Signed-off-by: Farhan Ali <alifm@linux.ibm.com>
Acked-by: Thomas Huth <thuth@redhat.com>
Message-id: 20250430185012.2303-2-alifm@linux.ibm.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
include/qemu/s390x_pci_mmio.h | 24 ++++++
util/s390x_pci_mmio.c | 146 ++++++++++++++++++++++++++++++++++
util/meson.build | 2 +
3 files changed, 172 insertions(+)
create mode 100644 include/qemu/s390x_pci_mmio.h
create mode 100644 util/s390x_pci_mmio.c
diff --git a/include/qemu/s390x_pci_mmio.h b/include/qemu/s390x_pci_mmio.h
new file mode 100644
index 0000000000..c5f63ecefa
--- /dev/null
+++ b/include/qemu/s390x_pci_mmio.h
@@ -0,0 +1,24 @@
+/*
+ * s390x PCI MMIO definitions
+ *
+ * Copyright 2025 IBM Corp.
+ * Author(s): Farhan Ali <alifm@linux.ibm.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+#ifndef S390X_PCI_MMIO_H
+#define S390X_PCI_MMIO_H
+
+#ifdef __s390x__
+uint8_t s390x_pci_mmio_read_8(const void *ioaddr);
+uint16_t s390x_pci_mmio_read_16(const void *ioaddr);
+uint32_t s390x_pci_mmio_read_32(const void *ioaddr);
+uint64_t s390x_pci_mmio_read_64(const void *ioaddr);
+
+void s390x_pci_mmio_write_8(void *ioaddr, uint8_t val);
+void s390x_pci_mmio_write_16(void *ioaddr, uint16_t val);
+void s390x_pci_mmio_write_32(void *ioaddr, uint32_t val);
+void s390x_pci_mmio_write_64(void *ioaddr, uint64_t val);
+#endif /* __s390x__ */
+
+#endif /* S390X_PCI_MMIO_H */
diff --git a/util/s390x_pci_mmio.c b/util/s390x_pci_mmio.c
new file mode 100644
index 0000000000..5ab24fa474
--- /dev/null
+++ b/util/s390x_pci_mmio.c
@@ -0,0 +1,146 @@
+/*
+ * s390x PCI MMIO definitions
+ *
+ * Copyright 2025 IBM Corp.
+ * Author(s): Farhan Ali <alifm@linux.ibm.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+#include "qemu/osdep.h"
+#include <sys/syscall.h>
+#include "qemu/s390x_pci_mmio.h"
+#include "elf.h"
+
+union register_pair {
+ unsigned __int128 pair;
+ struct {
+ uint64_t even;
+ uint64_t odd;
+ };
+};
+
+static bool is_mio_supported;
+
+static __attribute__((constructor)) void check_is_mio_supported(void)
+{
+ is_mio_supported = !!(qemu_getauxval(AT_HWCAP) & HWCAP_S390_PCI_MIO);
+}
+
+static uint64_t s390x_pcilgi(const void *ioaddr, size_t len)
+{
+ union register_pair ioaddr_len = { .even = (uint64_t)ioaddr,
+ .odd = len };
+ uint64_t val;
+ int cc;
+
+ asm volatile(
+ /* pcilgi */
+ ".insn rre,0xb9d60000,%[val],%[ioaddr_len]\n"
+ "ipm %[cc]\n"
+ "srl %[cc],28\n"
+ : [cc] "=d"(cc), [val] "=d"(val),
+ [ioaddr_len] "+d"(ioaddr_len.pair) :: "cc");
+
+ if (cc) {
+ val = -1ULL;
+ }
+
+ return val;
+}
+
+static void s390x_pcistgi(void *ioaddr, uint64_t val, size_t len)
+{
+ union register_pair ioaddr_len = {.even = (uint64_t)ioaddr, .odd = len};
+
+ asm volatile (
+ /* pcistgi */
+ ".insn rre,0xb9d40000,%[val],%[ioaddr_len]\n"
+ : [ioaddr_len] "+d" (ioaddr_len.pair)
+ : [val] "d" (val)
+ : "cc", "memory");
+}
+
+uint8_t s390x_pci_mmio_read_8(const void *ioaddr)
+{
+ uint8_t val = 0;
+
+ if (is_mio_supported) {
+ val = s390x_pcilgi(ioaddr, sizeof(val));
+ } else {
+ syscall(__NR_s390_pci_mmio_read, ioaddr, &val, sizeof(val));
+ }
+ return val;
+}
+
+uint16_t s390x_pci_mmio_read_16(const void *ioaddr)
+{
+ uint16_t val = 0;
+
+ if (is_mio_supported) {
+ val = s390x_pcilgi(ioaddr, sizeof(val));
+ } else {
+ syscall(__NR_s390_pci_mmio_read, ioaddr, &val, sizeof(val));
+ }
+ return val;
+}
+
+uint32_t s390x_pci_mmio_read_32(const void *ioaddr)
+{
+ uint32_t val = 0;
+
+ if (is_mio_supported) {
+ val = s390x_pcilgi(ioaddr, sizeof(val));
+ } else {
+ syscall(__NR_s390_pci_mmio_read, ioaddr, &val, sizeof(val));
+ }
+ return val;
+}
+
+uint64_t s390x_pci_mmio_read_64(const void *ioaddr)
+{
+ uint64_t val = 0;
+
+ if (is_mio_supported) {
+ val = s390x_pcilgi(ioaddr, sizeof(val));
+ } else {
+ syscall(__NR_s390_pci_mmio_read, ioaddr, &val, sizeof(val));
+ }
+ return val;
+}
+
+void s390x_pci_mmio_write_8(void *ioaddr, uint8_t val)
+{
+ if (is_mio_supported) {
+ s390x_pcistgi(ioaddr, val, sizeof(val));
+ } else {
+ syscall(__NR_s390_pci_mmio_write, ioaddr, &val, sizeof(val));
+ }
+}
+
+void s390x_pci_mmio_write_16(void *ioaddr, uint16_t val)
+{
+ if (is_mio_supported) {
+ s390x_pcistgi(ioaddr, val, sizeof(val));
+ } else {
+ syscall(__NR_s390_pci_mmio_write, ioaddr, &val, sizeof(val));
+ }
+}
+
+void s390x_pci_mmio_write_32(void *ioaddr, uint32_t val)
+{
+ if (is_mio_supported) {
+ s390x_pcistgi(ioaddr, val, sizeof(val));
+ } else {
+ syscall(__NR_s390_pci_mmio_write, ioaddr, &val, sizeof(val));
+ }
+}
+
+void s390x_pci_mmio_write_64(void *ioaddr, uint64_t val)
+{
+ if (is_mio_supported) {
+ s390x_pcistgi(ioaddr, val, sizeof(val));
+ } else {
+ syscall(__NR_s390_pci_mmio_write, ioaddr, &val, sizeof(val));
+ }
+}
diff --git a/util/meson.build b/util/meson.build
index 780b5977a8..acb21592f9 100644
--- a/util/meson.build
+++ b/util/meson.build
@@ -131,4 +131,6 @@ elif cpu in ['ppc', 'ppc64']
util_ss.add(files('cpuinfo-ppc.c'))
elif cpu in ['riscv32', 'riscv64']
util_ss.add(files('cpuinfo-riscv.c'))
+elif cpu == 's390x'
+ util_ss.add(files('s390x_pci_mmio.c'))
endif
--
2.49.0
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [PULL 2/3] include: Add a header to define host PCI MMIO functions
2025-05-08 14:22 [PULL 0/3] Block patches Stefan Hajnoczi
2025-05-08 14:22 ` [PULL 1/3] util: Add functions for s390x mmio read/write Stefan Hajnoczi
@ 2025-05-08 14:22 ` Stefan Hajnoczi
2025-05-08 14:22 ` [PULL 3/3] block/nvme: Use host PCI MMIO API Stefan Hajnoczi
2025-05-10 18:36 ` [PULL 0/3] Block patches Stefan Hajnoczi
3 siblings, 0 replies; 29+ messages in thread
From: Stefan Hajnoczi @ 2025-05-08 14:22 UTC (permalink / raw)
To: qemu-devel
Cc: Stefan Hajnoczi, Kevin Wolf, Fam Zheng, Hanna Reitz, qemu-block,
qemu-s390x, Thomas Huth, Philippe Mathieu-Daudé, Farhan Ali
From: Farhan Ali <alifm@linux.ibm.com>
Add a generic API for host PCI MMIO reads/writes
(e.g. Linux VFIO BAR accesses). The functions access
little endian memory and returns the result in
host cpu endianness.
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Farhan Ali <alifm@linux.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-id: 20250430185012.2303-3-alifm@linux.ibm.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
include/qemu/host-pci-mmio.h | 136 +++++++++++++++++++++++++++++++++++
1 file changed, 136 insertions(+)
create mode 100644 include/qemu/host-pci-mmio.h
diff --git a/include/qemu/host-pci-mmio.h b/include/qemu/host-pci-mmio.h
new file mode 100644
index 0000000000..a8ed9938ac
--- /dev/null
+++ b/include/qemu/host-pci-mmio.h
@@ -0,0 +1,136 @@
+/*
+ * API for host PCI MMIO accesses (e.g. Linux VFIO BARs)
+ *
+ * Copyright 2025 IBM Corp.
+ * Author(s): Farhan Ali <alifm@linux.ibm.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+#ifndef HOST_PCI_MMIO_H
+#define HOST_PCI_MMIO_H
+
+#include "qemu/bswap.h"
+#include "qemu/s390x_pci_mmio.h"
+
+static inline uint8_t host_pci_ldub_p(const void *ioaddr)
+{
+ uint8_t ret = 0;
+#ifdef __s390x__
+ ret = s390x_pci_mmio_read_8(ioaddr);
+#else
+ ret = ldub_p(ioaddr);
+#endif
+
+ return ret;
+}
+
+static inline uint16_t host_pci_lduw_le_p(const void *ioaddr)
+{
+ uint16_t ret = 0;
+#ifdef __s390x__
+ ret = le16_to_cpu(s390x_pci_mmio_read_16(ioaddr));
+#else
+ ret = lduw_le_p(ioaddr);
+#endif
+
+ return ret;
+}
+
+static inline uint32_t host_pci_ldl_le_p(const void *ioaddr)
+{
+ uint32_t ret = 0;
+#ifdef __s390x__
+ ret = le32_to_cpu(s390x_pci_mmio_read_32(ioaddr));
+#else
+ ret = ldl_le_p(ioaddr);
+#endif
+
+ return ret;
+}
+
+static inline uint64_t host_pci_ldq_le_p(const void *ioaddr)
+{
+ uint64_t ret = 0;
+#ifdef __s390x__
+ ret = le64_to_cpu(s390x_pci_mmio_read_64(ioaddr));
+#else
+ ret = ldq_le_p(ioaddr);
+#endif
+
+ return ret;
+}
+
+static inline void host_pci_stb_p(void *ioaddr, uint8_t val)
+{
+#ifdef __s390x__
+ s390x_pci_mmio_write_8(ioaddr, val);
+#else
+ stb_p(ioaddr, val);
+#endif
+}
+
+static inline void host_pci_stw_le_p(void *ioaddr, uint16_t val)
+{
+#ifdef __s390x__
+ s390x_pci_mmio_write_16(ioaddr, cpu_to_le16(val));
+#else
+ stw_le_p(ioaddr, val);
+#endif
+}
+
+static inline void host_pci_stl_le_p(void *ioaddr, uint32_t val)
+{
+#ifdef __s390x__
+ s390x_pci_mmio_write_32(ioaddr, cpu_to_le32(val));
+#else
+ stl_le_p(ioaddr, val);
+#endif
+}
+
+static inline void host_pci_stq_le_p(void *ioaddr, uint64_t val)
+{
+#ifdef __s390x__
+ s390x_pci_mmio_write_64(ioaddr, cpu_to_le64(val));
+#else
+ stq_le_p(ioaddr, val);
+#endif
+}
+
+static inline uint64_t host_pci_ldn_le_p(const void *ioaddr, int sz)
+{
+ switch (sz) {
+ case 1:
+ return host_pci_ldub_p(ioaddr);
+ case 2:
+ return host_pci_lduw_le_p(ioaddr);
+ case 4:
+ return host_pci_ldl_le_p(ioaddr);
+ case 8:
+ return host_pci_ldq_le_p(ioaddr);
+ default:
+ g_assert_not_reached();
+ }
+}
+
+static inline void host_pci_stn_le_p(void *ioaddr, int sz, uint64_t v)
+{
+ switch (sz) {
+ case 1:
+ host_pci_stb_p(ioaddr, v);
+ break;
+ case 2:
+ host_pci_stw_le_p(ioaddr, v);
+ break;
+ case 4:
+ host_pci_stl_le_p(ioaddr, v);
+ break;
+ case 8:
+ host_pci_stq_le_p(ioaddr, v);
+ break;
+ default:
+ g_assert_not_reached();
+ }
+}
+
+#endif
--
2.49.0
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [PULL 3/3] block/nvme: Use host PCI MMIO API
2025-05-08 14:22 [PULL 0/3] Block patches Stefan Hajnoczi
2025-05-08 14:22 ` [PULL 1/3] util: Add functions for s390x mmio read/write Stefan Hajnoczi
2025-05-08 14:22 ` [PULL 2/3] include: Add a header to define host PCI MMIO functions Stefan Hajnoczi
@ 2025-05-08 14:22 ` Stefan Hajnoczi
2025-05-10 18:36 ` [PULL 0/3] Block patches Stefan Hajnoczi
3 siblings, 0 replies; 29+ messages in thread
From: Stefan Hajnoczi @ 2025-05-08 14:22 UTC (permalink / raw)
To: qemu-devel
Cc: Stefan Hajnoczi, Kevin Wolf, Fam Zheng, Hanna Reitz, qemu-block,
qemu-s390x, Thomas Huth, Philippe Mathieu-Daudé, Farhan Ali
From: Farhan Ali <alifm@linux.ibm.com>
Use the host PCI MMIO functions to read/write
to NVMe registers, rather than directly accessing
them.
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Farhan Ali <alifm@linux.ibm.com>
Message-id: 20250430185012.2303-4-alifm@linux.ibm.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
block/nvme.c | 41 +++++++++++++++++++++++------------------
1 file changed, 23 insertions(+), 18 deletions(-)
diff --git a/block/nvme.c b/block/nvme.c
index bbf7c23dcd..8df53ee4ca 100644
--- a/block/nvme.c
+++ b/block/nvme.c
@@ -18,6 +18,7 @@
#include "qobject/qstring.h"
#include "qemu/defer-call.h"
#include "qemu/error-report.h"
+#include "qemu/host-pci-mmio.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/cutils.h"
@@ -60,7 +61,7 @@ typedef struct {
uint8_t *queue;
uint64_t iova;
/* Hardware MMIO register */
- volatile uint32_t *doorbell;
+ uint32_t *doorbell;
} NVMeQueue;
typedef struct {
@@ -100,7 +101,7 @@ struct BDRVNVMeState {
QEMUVFIOState *vfio;
void *bar0_wo_map;
/* Memory mapped registers */
- volatile struct {
+ struct {
uint32_t sq_tail;
uint32_t cq_head;
} *doorbells;
@@ -292,7 +293,7 @@ static void nvme_kick(NVMeQueuePair *q)
assert(!(q->sq.tail & 0xFF00));
/* Fence the write to submission queue entry before notifying the device. */
smp_wmb();
- *q->sq.doorbell = cpu_to_le32(q->sq.tail);
+ host_pci_stl_le_p(q->sq.doorbell, q->sq.tail);
q->inflight += q->need_kick;
q->need_kick = 0;
}
@@ -441,7 +442,7 @@ static bool nvme_process_completion(NVMeQueuePair *q)
if (progress) {
/* Notify the device so it can post more completions. */
smp_mb_release();
- *q->cq.doorbell = cpu_to_le32(q->cq.head);
+ host_pci_stl_le_p(q->cq.doorbell, q->cq.head);
nvme_wake_free_req_locked(q);
}
@@ -460,7 +461,7 @@ static void nvme_process_completion_bh(void *opaque)
* so notify the device that it has space to fill in more completions now.
*/
smp_mb_release();
- *q->cq.doorbell = cpu_to_le32(q->cq.head);
+ host_pci_stl_le_p(q->cq.doorbell, q->cq.head);
nvme_wake_free_req_locked(q);
nvme_process_completion(q);
@@ -749,9 +750,10 @@ static int nvme_init(BlockDriverState *bs, const char *device, int namespace,
int ret;
uint64_t cap;
uint32_t ver;
+ uint32_t cc;
uint64_t timeout_ms;
uint64_t deadline, now;
- volatile NvmeBar *regs = NULL;
+ NvmeBar *regs = NULL;
qemu_co_mutex_init(&s->dma_map_lock);
qemu_co_queue_init(&s->dma_flush_queue);
@@ -779,7 +781,7 @@ static int nvme_init(BlockDriverState *bs, const char *device, int namespace,
/* Perform initialize sequence as described in NVMe spec "7.6.1
* Initialization". */
- cap = le64_to_cpu(regs->cap);
+ cap = host_pci_ldq_le_p(®s->cap);
trace_nvme_controller_capability_raw(cap);
trace_nvme_controller_capability("Maximum Queue Entries Supported",
1 + NVME_CAP_MQES(cap));
@@ -805,16 +807,17 @@ static int nvme_init(BlockDriverState *bs, const char *device, int namespace,
bs->bl.request_alignment = s->page_size;
timeout_ms = MIN(500 * NVME_CAP_TO(cap), 30000);
- ver = le32_to_cpu(regs->vs);
+ ver = host_pci_ldl_le_p(®s->vs);
trace_nvme_controller_spec_version(extract32(ver, 16, 16),
extract32(ver, 8, 8),
extract32(ver, 0, 8));
/* Reset device to get a clean state. */
- regs->cc = cpu_to_le32(le32_to_cpu(regs->cc) & 0xFE);
+ cc = host_pci_ldl_le_p(®s->cc);
+ host_pci_stl_le_p(®s->cc, cc & 0xFE);
/* Wait for CSTS.RDY = 0. */
deadline = qemu_clock_get_ns(QEMU_CLOCK_REALTIME) + timeout_ms * SCALE_MS;
- while (NVME_CSTS_RDY(le32_to_cpu(regs->csts))) {
+ while (NVME_CSTS_RDY(host_pci_ldl_le_p(®s->csts))) {
if (qemu_clock_get_ns(QEMU_CLOCK_REALTIME) > deadline) {
error_setg(errp, "Timeout while waiting for device to reset (%"
PRId64 " ms)",
@@ -843,19 +846,21 @@ static int nvme_init(BlockDriverState *bs, const char *device, int namespace,
s->queues[INDEX_ADMIN] = q;
s->queue_count = 1;
QEMU_BUILD_BUG_ON((NVME_QUEUE_SIZE - 1) & 0xF000);
- regs->aqa = cpu_to_le32(((NVME_QUEUE_SIZE - 1) << AQA_ACQS_SHIFT) |
- ((NVME_QUEUE_SIZE - 1) << AQA_ASQS_SHIFT));
- regs->asq = cpu_to_le64(q->sq.iova);
- regs->acq = cpu_to_le64(q->cq.iova);
+ host_pci_stl_le_p(®s->aqa,
+ ((NVME_QUEUE_SIZE - 1) << AQA_ACQS_SHIFT) |
+ ((NVME_QUEUE_SIZE - 1) << AQA_ASQS_SHIFT));
+ host_pci_stq_le_p(®s->asq, q->sq.iova);
+ host_pci_stq_le_p(®s->acq, q->cq.iova);
/* After setting up all control registers we can enable device now. */
- regs->cc = cpu_to_le32((ctz32(NVME_CQ_ENTRY_BYTES) << CC_IOCQES_SHIFT) |
- (ctz32(NVME_SQ_ENTRY_BYTES) << CC_IOSQES_SHIFT) |
- CC_EN_MASK);
+ host_pci_stl_le_p(®s->cc,
+ (ctz32(NVME_CQ_ENTRY_BYTES) << CC_IOCQES_SHIFT) |
+ (ctz32(NVME_SQ_ENTRY_BYTES) << CC_IOSQES_SHIFT) |
+ CC_EN_MASK);
/* Wait for CSTS.RDY = 1. */
now = qemu_clock_get_ns(QEMU_CLOCK_REALTIME);
deadline = now + timeout_ms * SCALE_MS;
- while (!NVME_CSTS_RDY(le32_to_cpu(regs->csts))) {
+ while (!NVME_CSTS_RDY(host_pci_ldl_le_p(®s->csts))) {
if (qemu_clock_get_ns(QEMU_CLOCK_REALTIME) > deadline) {
error_setg(errp, "Timeout while waiting for device to start (%"
PRId64 " ms)",
--
2.49.0
^ permalink raw reply related [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2025-05-08 14:22 [PULL 0/3] Block patches Stefan Hajnoczi
` (2 preceding siblings ...)
2025-05-08 14:22 ` [PULL 3/3] block/nvme: Use host PCI MMIO API Stefan Hajnoczi
@ 2025-05-10 18:36 ` Stefan Hajnoczi
3 siblings, 0 replies; 29+ messages in thread
From: Stefan Hajnoczi @ 2025-05-10 18:36 UTC (permalink / raw)
To: Stefan Hajnoczi
Cc: qemu-devel, Stefan Hajnoczi, Kevin Wolf, Fam Zheng, Hanna Reitz,
qemu-block, qemu-s390x, Thomas Huth, Philippe Mathieu-Daudé
[-- Attachment #1: Type: text/plain, Size: 116 bytes --]
Applied, thanks.
Please update the changelog at https://wiki.qemu.org/ChangeLog/10.1 for any user-visible changes.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 0/3] Block patches
@ 2023-11-06 17:10 Hanna Czenczek
2023-11-07 3:03 ` Stefan Hajnoczi
0 siblings, 1 reply; 29+ messages in thread
From: Hanna Czenczek @ 2023-11-06 17:10 UTC (permalink / raw)
To: qemu-block; +Cc: qemu-devel, Hanna Czenczek
The following changes since commit 3e01f1147a16ca566694b97eafc941d62fa1e8d8:
Merge tag 'pull-sp-20231105' of https://gitlab.com/rth7680/qemu into staging (2023-11-06 09:34:22 +0800)
are available in the Git repository at:
https://gitlab.com/hreitz/qemu.git tags/pull-block-2023-11-06
for you to fetch changes up to ad4feaca61d76fecad784e6d5e7bae40d0411c46:
file-posix: fix over-writing of returning zone_append offset (2023-11-06 16:15:07 +0100)
----------------------------------------------------------------
Block patches:
- One patch to make qcow2's discard-no-unref option do better what it is
supposed to do (i.e. prevent fragmentation)
- Two fixes for zoned requests
----------------------------------------------------------------
Jean-Louis Dupond (1):
qcow2: keep reference on zeroize with discard-no-unref enabled
Naohiro Aota (1):
file-posix: fix over-writing of returning zone_append offset
Sam Li (1):
block/file-posix: fix update_zones_wp() caller
qapi/block-core.json | 24 ++++++++++++++----------
block/file-posix.c | 23 ++++++++++++-----------
block/qcow2-cluster.c | 22 ++++++++++++++++++----
qemu-options.hx | 10 +++++++---
4 files changed, 51 insertions(+), 28 deletions(-)
--
2.41.0
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 0/3] Block patches
@ 2023-01-23 20:04 Stefan Hajnoczi
2023-01-24 12:24 ` Peter Maydell
0 siblings, 1 reply; 29+ messages in thread
From: Stefan Hajnoczi @ 2023-01-23 20:04 UTC (permalink / raw)
To: qemu-devel
Cc: Hanna Reitz, Michael S. Tsirkin, Kevin Wolf, Stefan Hajnoczi,
Fam Zheng, qemu-block, Paolo Bonzini
The following changes since commit 00b1faea41d283e931256aa78aa975a369ec3ae6:
Merge tag 'pull-target-arm-20230123' of https://git.linaro.org/people/pmaydell/qemu-arm into staging (2023-01-23 13:40:28 +0000)
are available in the Git repository at:
https://gitlab.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to 4f01a9bb0461e8c11ee0c94d90a504cb7d580a85:
block/blkio: Fix inclusion of required headers (2023-01-23 15:02:07 -0500)
----------------------------------------------------------------
Pull request
----------------------------------------------------------------
Chao Gao (1):
util/aio: Defer disabling poll mode as long as possible
Peter Krempa (1):
block/blkio: Fix inclusion of required headers
Stefan Hajnoczi (1):
virtio-blk: simplify virtio_blk_dma_restart_cb()
include/hw/virtio/virtio-blk.h | 2 --
block/blkio.c | 2 ++
hw/block/dataplane/virtio-blk.c | 17 +++++-------
hw/block/virtio-blk.c | 46 ++++++++++++++-------------------
util/aio-posix.c | 21 ++++++++++-----
5 files changed, 43 insertions(+), 45 deletions(-)
--
2.39.0
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2023-01-23 20:04 Stefan Hajnoczi
@ 2023-01-24 12:24 ` Peter Maydell
0 siblings, 0 replies; 29+ messages in thread
From: Peter Maydell @ 2023-01-24 12:24 UTC (permalink / raw)
To: Stefan Hajnoczi
Cc: qemu-devel, Hanna Reitz, Michael S. Tsirkin, Kevin Wolf,
Fam Zheng, qemu-block, Paolo Bonzini
On Mon, 23 Jan 2023 at 20:04, Stefan Hajnoczi <stefanha@redhat.com> wrote:
>
> The following changes since commit 00b1faea41d283e931256aa78aa975a369ec3ae6:
>
> Merge tag 'pull-target-arm-20230123' of https://git.linaro.org/people/pmaydell/qemu-arm into staging (2023-01-23 13:40:28 +0000)
>
> are available in the Git repository at:
>
> https://gitlab.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 4f01a9bb0461e8c11ee0c94d90a504cb7d580a85:
>
> block/blkio: Fix inclusion of required headers (2023-01-23 15:02:07 -0500)
>
> ----------------------------------------------------------------
> Pull request
>
> ----------------------------------------------------------------
>
Applied, thanks.
Please update the changelog at https://wiki.qemu.org/ChangeLog/8.0
for any user-visible changes.
-- PMM
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 0/3] Block patches
@ 2022-10-31 18:51 Stefan Hajnoczi
2022-11-01 20:04 ` Stefan Hajnoczi
0 siblings, 1 reply; 29+ messages in thread
From: Stefan Hajnoczi @ 2022-10-31 18:51 UTC (permalink / raw)
To: qemu-devel
Cc: Eric Blake, Hanna Reitz, Stefan Hajnoczi, Markus Armbruster,
qemu-block, Kevin Wolf
The following changes since commit 7208429223963c405c62fa2611398f1aa8033593:
Merge tag 'mem-2022-10-28' of https://github.com/davidhildenbrand/qemu into staging (2022-10-30 18:31:59 -0400)
are available in the Git repository at:
https://gitlab.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to 6c32fc0df9cd901add75618c831fb26a9eb742cb:
block/blkio: Make driver nvme-io_uring take a "path" instead of a "filename" (2022-10-31 14:35:14 -0400)
----------------------------------------------------------------
Pull request
Note that we're still discussing "block/blkio: Make driver nvme-io_uring take a
"path" instead of a "filename"". I have sent the pull request now so everything
is ready for the soft freeze tomorrow if we decide to go ahead with the patch.
----------------------------------------------------------------
Alberto Faria (3):
block/blkio: Add virtio-blk-vfio-pci BlockDriver
block/blkio: Tolerate device size changes
block/blkio: Make driver nvme-io_uring take a "path" instead of a
"filename"
qapi/block-core.json | 22 +++++++++++++++++++--
block/blkio.c | 47 ++++++++++++++++++++++++++++++++++++++++----
2 files changed, 63 insertions(+), 6 deletions(-)
--
2.38.1
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2022-10-31 18:51 Stefan Hajnoczi
@ 2022-11-01 20:04 ` Stefan Hajnoczi
0 siblings, 0 replies; 29+ messages in thread
From: Stefan Hajnoczi @ 2022-11-01 20:04 UTC (permalink / raw)
To: Stefan Hajnoczi
Cc: qemu-devel, Eric Blake, Hanna Reitz, Stefan Hajnoczi,
Markus Armbruster, qemu-block, Kevin Wolf
[-- Attachment #1: Type: text/plain, Size: 115 bytes --]
Applied, thanks.
Please update the changelog at https://wiki.qemu.org/ChangeLog/7.2 for any user-visible changes.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 0/3] Block patches
@ 2022-05-05 8:42 Stefan Hajnoczi
2022-05-05 16:29 ` Richard Henderson
0 siblings, 1 reply; 29+ messages in thread
From: Stefan Hajnoczi @ 2022-05-05 8:42 UTC (permalink / raw)
To: qemu-devel; +Cc: qemu-block, Richard Henderson, Stefan Hajnoczi
The following changes since commit 9cf289af47bcfae5c75de37d8e5d6fd23705322c:
Merge tag 'qga-pull-request' of gitlab.com:marcandre.lureau/qemu into staging (2022-05-04 03:42:49 -0700)
are available in the Git repository at:
https://gitlab.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to bef2e050d6a7feb865854c65570c496ac5a8cf53:
util/event-loop-base: Introduce options to set the thread pool size (2022-05-04 17:02:19 +0100)
----------------------------------------------------------------
Pull request
Add new thread-pool-min/thread-pool-max parameters to control the thread pool
used for async I/O.
----------------------------------------------------------------
Nicolas Saenz Julienne (3):
Introduce event-loop-base abstract class
util/main-loop: Introduce the main loop into QOM
util/event-loop-base: Introduce options to set the thread pool size
qapi/qom.json | 43 ++++++++--
meson.build | 26 +++---
include/block/aio.h | 10 +++
include/block/thread-pool.h | 3 +
include/qemu/main-loop.h | 10 +++
include/sysemu/event-loop-base.h | 41 +++++++++
include/sysemu/iothread.h | 6 +-
event-loop-base.c | 140 +++++++++++++++++++++++++++++++
iothread.c | 68 +++++----------
util/aio-posix.c | 1 +
util/async.c | 20 +++++
util/main-loop.c | 65 ++++++++++++++
util/thread-pool.c | 55 +++++++++++-
13 files changed, 419 insertions(+), 69 deletions(-)
create mode 100644 include/sysemu/event-loop-base.h
create mode 100644 event-loop-base.c
--
2.35.1
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2022-05-05 8:42 Stefan Hajnoczi
@ 2022-05-05 16:29 ` Richard Henderson
2022-05-09 10:34 ` Stefan Hajnoczi
0 siblings, 1 reply; 29+ messages in thread
From: Richard Henderson @ 2022-05-05 16:29 UTC (permalink / raw)
To: Stefan Hajnoczi, qemu-devel; +Cc: qemu-block
On 5/5/22 03:42, Stefan Hajnoczi wrote:
> The following changes since commit 9cf289af47bcfae5c75de37d8e5d6fd23705322c:
>
> Merge tag 'qga-pull-request' of gitlab.com:marcandre.lureau/qemu into staging (2022-05-04 03:42:49 -0700)
>
> are available in the Git repository at:
>
> https://gitlab.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to bef2e050d6a7feb865854c65570c496ac5a8cf53:
>
> util/event-loop-base: Introduce options to set the thread pool size (2022-05-04 17:02:19 +0100)
>
> ----------------------------------------------------------------
> Pull request
>
> Add new thread-pool-min/thread-pool-max parameters to control the thread pool
> used for async I/O.
>
> ----------------------------------------------------------------
>
> Nicolas Saenz Julienne (3):
> Introduce event-loop-base abstract class
> util/main-loop: Introduce the main loop into QOM
> util/event-loop-base: Introduce options to set the thread pool size
>
> qapi/qom.json | 43 ++++++++--
> meson.build | 26 +++---
> include/block/aio.h | 10 +++
> include/block/thread-pool.h | 3 +
> include/qemu/main-loop.h | 10 +++
> include/sysemu/event-loop-base.h | 41 +++++++++
> include/sysemu/iothread.h | 6 +-
> event-loop-base.c | 140 +++++++++++++++++++++++++++++++
> iothread.c | 68 +++++----------
> util/aio-posix.c | 1 +
> util/async.c | 20 +++++
> util/main-loop.c | 65 ++++++++++++++
> util/thread-pool.c | 55 +++++++++++-
> 13 files changed, 419 insertions(+), 69 deletions(-)
> create mode 100644 include/sysemu/event-loop-base.h
> create mode 100644 event-loop-base.c
>
This appears to introduce a new error on msys2-64bit:
14/85 qemu:unit / test-aio ERROR 2.14s
exit status 3
>>> MALLOC_PERTURB_=82 G_TEST_SRCDIR=C:/GitLab-Runner/builds/qemu-project/qemu/tests/unit
G_TEST_BUILDDIR=C:/GitLab-Runner/builds/qemu-project/qemu/build/tests/unit
C:/GitLab-Runner/builds/qemu-project/qemu/build/tests/unit/test-aio.exe --tap -k
------------------------------------- 8< -------------------------------------
stderr:
(test program exited with status code 3)
https://gitlab.com/qemu-project/qemu/-/jobs/2418935125
Are you in a position to test this yourself locally?
r~
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2022-05-05 16:29 ` Richard Henderson
@ 2022-05-09 10:34 ` Stefan Hajnoczi
2022-05-09 12:45 ` Stefan Hajnoczi
0 siblings, 1 reply; 29+ messages in thread
From: Stefan Hajnoczi @ 2022-05-09 10:34 UTC (permalink / raw)
To: Richard Henderson, Nicolas Saenz Julienne
Cc: Stefan Hajnoczi, qemu-devel, qemu block
On Thu, 5 May 2022 at 17:43, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> On 5/5/22 03:42, Stefan Hajnoczi wrote:
> > The following changes since commit 9cf289af47bcfae5c75de37d8e5d6fd23705322c:
> >
> > Merge tag 'qga-pull-request' of gitlab.com:marcandre.lureau/qemu into staging (2022-05-04 03:42:49 -0700)
> >
> > are available in the Git repository at:
> >
> > https://gitlab.com/stefanha/qemu.git tags/block-pull-request
> >
> > for you to fetch changes up to bef2e050d6a7feb865854c65570c496ac5a8cf53:
> >
> > util/event-loop-base: Introduce options to set the thread pool size (2022-05-04 17:02:19 +0100)
> >
> > ----------------------------------------------------------------
> > Pull request
> >
> > Add new thread-pool-min/thread-pool-max parameters to control the thread pool
> > used for async I/O.
> >
> > ----------------------------------------------------------------
> >
> > Nicolas Saenz Julienne (3):
> > Introduce event-loop-base abstract class
> > util/main-loop: Introduce the main loop into QOM
> > util/event-loop-base: Introduce options to set the thread pool size
> >
> > qapi/qom.json | 43 ++++++++--
> > meson.build | 26 +++---
> > include/block/aio.h | 10 +++
> > include/block/thread-pool.h | 3 +
> > include/qemu/main-loop.h | 10 +++
> > include/sysemu/event-loop-base.h | 41 +++++++++
> > include/sysemu/iothread.h | 6 +-
> > event-loop-base.c | 140 +++++++++++++++++++++++++++++++
> > iothread.c | 68 +++++----------
> > util/aio-posix.c | 1 +
> > util/async.c | 20 +++++
> > util/main-loop.c | 65 ++++++++++++++
> > util/thread-pool.c | 55 +++++++++++-
> > 13 files changed, 419 insertions(+), 69 deletions(-)
> > create mode 100644 include/sysemu/event-loop-base.h
> > create mode 100644 event-loop-base.c
> >
>
> This appears to introduce a new error on msys2-64bit:
>
>
> 14/85 qemu:unit / test-aio ERROR 2.14s
> exit status 3
> >>> MALLOC_PERTURB_=82 G_TEST_SRCDIR=C:/GitLab-Runner/builds/qemu-project/qemu/tests/unit
> G_TEST_BUILDDIR=C:/GitLab-Runner/builds/qemu-project/qemu/build/tests/unit
> C:/GitLab-Runner/builds/qemu-project/qemu/build/tests/unit/test-aio.exe --tap -k
> ------------------------------------- 8< -------------------------------------
> stderr:
> (test program exited with status code 3)
>
> https://gitlab.com/qemu-project/qemu/-/jobs/2418935125
>
> Are you in a position to test this yourself locally?
I haven't reproduced it yet but will dig a bit more.
test-aio.exe succeeds under Wine:
# random seed: R02S572ad8b9cfeac92bb23a64678114e66d
1..29
# Start of aio tests
ok 1 /aio/acquire
ok 2 /aio/external-client
# Start of bh tests
ok 3 /aio/bh/schedule
ok 4 /aio/bh/schedule10
ok 5 /aio/bh/cancel
ok 6 /aio/bh/delete
ok 7 /aio/bh/flush
# Start of callback-delete tests
ok 8 /aio/bh/callback-delete/one
ok 9 /aio/bh/callback-delete/many
# End of callback-delete tests
# End of bh tests
# Start of event tests
ok 10 /aio/event/add-remove
ok 11 /aio/event/wait
ok 12 /aio/event/flush
# Start of wait tests
ok 13 /aio/event/wait/no-flush-cb
# End of wait tests
# End of event tests
# Start of timer tests
ok 14 /aio/timer/schedule
# End of timer tests
# Start of coroutine tests
ok 15 /aio/coroutine/queue-chaining
ok 16 /aio/coroutine/worker-thread-co-enter
# End of coroutine tests
# End of aio tests
# Start of aio-gsource tests
ok 17 /aio-gsource/flush
# Start of bh tests
ok 18 /aio-gsource/bh/schedule
ok 19 /aio-gsource/bh/schedule10
ok 20 /aio-gsource/bh/cancel
ok 21 /aio-gsource/bh/delete
ok 22 /aio-gsource/bh/flush
# Start of callback-delete tests
ok 23 /aio-gsource/bh/callback-delete/one
ok 24 /aio-gsource/bh/callback-delete/many
# End of callback-delete tests
# End of bh tests
# Start of event tests
ok 25 /aio-gsource/event/add-remove
ok 26 /aio-gsource/event/wait
ok 27 /aio-gsource/event/flush
# Start of wait tests
ok 28 /aio-gsource/event/wait/no-flush-cb
# End of wait tests
# End of event tests
# Start of timer tests
ok 29 /aio-gsource/timer/schedule
# End of timer tests
# End of aio-gsource tests
Stefan
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2022-05-09 10:34 ` Stefan Hajnoczi
@ 2022-05-09 12:45 ` Stefan Hajnoczi
0 siblings, 0 replies; 29+ messages in thread
From: Stefan Hajnoczi @ 2022-05-09 12:45 UTC (permalink / raw)
To: Richard Henderson, Nicolas Saenz Julienne
Cc: Stefan Hajnoczi, qemu-devel, qemu block
It looks like a race condition in the test case. The failed test case
(tests/unit/test-aio.c:test_timer_schedule()) assumes the process will
be scheduled in a timely manner. A timer is scheduled for 750 ms and
the test waits for 1 second before running the event loop. At that
point a callback schedules the timer another 750 ms in the future. The
problem is that the exact sequence of event loop (aio_poll())
invocations can be unexpected on a heavily loaded CI runner leading to
spurious test failures.
I re-ran the job and it passed:
https://gitlab.com/qemu-project/qemu/-/jobs/2430529496
I also ran it locally under Wine and didn't see a failure.
FWIW I'm about to send another block pull request and it will include
these patches again. Feel free to wait for the next pull request.
Stefan
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 0/3] Block patches
@ 2022-04-25 8:48 Stefan Hajnoczi
2022-04-25 20:35 ` Richard Henderson
0 siblings, 1 reply; 29+ messages in thread
From: Stefan Hajnoczi @ 2022-04-25 8:48 UTC (permalink / raw)
To: qemu-devel; +Cc: Peter Maydell, Stefan Hajnoczi, qemu-block
The following changes since commit 9c125d17e9402c232c46610802e5931b3639d77b:
Merge tag 'pull-tcg-20220420' of https://gitlab.com/rth7680/qemu into staging (2022-04-20 16:43:11 -0700)
are available in the Git repository at:
https://gitlab.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to d45c83328feab2e4083991693160f0a417cfd9b0:
virtiofsd: Add docs/helper for killpriv_v2/no_killpriv_v2 option (2022-04-21 12:05:15 +0200)
----------------------------------------------------------------
Pull request
Small contrib/vhost-user-blk, contrib/vhost-user-scsi, and tools/virtiofsd
improvements.
----------------------------------------------------------------
Liu Yiding (1):
virtiofsd: Add docs/helper for killpriv_v2/no_killpriv_v2 option
Sakshi Kaushik (1):
Implements Backend Program conventions for vhost-user-scsi
Stefan Hajnoczi (1):
contrib/vhost-user-blk: add missing GOptionEntry NULL terminator
docs/tools/virtiofsd.rst | 5 ++
contrib/vhost-user-blk/vhost-user-blk.c | 3 +-
contrib/vhost-user-scsi/vhost-user-scsi.c | 77 +++++++++++++++--------
tools/virtiofsd/helper.c | 3 +
4 files changed, 62 insertions(+), 26 deletions(-)
--
2.35.1
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2022-04-25 8:48 Stefan Hajnoczi
@ 2022-04-25 20:35 ` Richard Henderson
0 siblings, 0 replies; 29+ messages in thread
From: Richard Henderson @ 2022-04-25 20:35 UTC (permalink / raw)
To: Stefan Hajnoczi, qemu-devel; +Cc: Peter Maydell, qemu-block
On 4/25/22 01:48, Stefan Hajnoczi wrote:
> The following changes since commit 9c125d17e9402c232c46610802e5931b3639d77b:
>
> Merge tag 'pull-tcg-20220420' of https://gitlab.com/rth7680/qemu into staging (2022-04-20 16:43:11 -0700)
>
> are available in the Git repository at:
>
> https://gitlab.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to d45c83328feab2e4083991693160f0a417cfd9b0:
>
> virtiofsd: Add docs/helper for killpriv_v2/no_killpriv_v2 option (2022-04-21 12:05:15 +0200)
>
> ----------------------------------------------------------------
> Pull request
>
> Small contrib/vhost-user-blk, contrib/vhost-user-scsi, and tools/virtiofsd
> improvements.
Applied, thanks. Please update https://wiki.qemu.org/ChangeLog/7.1 as appropriate.
r~
>
> ----------------------------------------------------------------
>
> Liu Yiding (1):
> virtiofsd: Add docs/helper for killpriv_v2/no_killpriv_v2 option
>
> Sakshi Kaushik (1):
> Implements Backend Program conventions for vhost-user-scsi
>
> Stefan Hajnoczi (1):
> contrib/vhost-user-blk: add missing GOptionEntry NULL terminator
>
> docs/tools/virtiofsd.rst | 5 ++
> contrib/vhost-user-blk/vhost-user-blk.c | 3 +-
> contrib/vhost-user-scsi/vhost-user-scsi.c | 77 +++++++++++++++--------
> tools/virtiofsd/helper.c | 3 +
> 4 files changed, 62 insertions(+), 26 deletions(-)
>
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 0/3] Block patches
@ 2022-02-14 17:15 Stefan Hajnoczi
2022-02-15 22:40 ` Peter Maydell
0 siblings, 1 reply; 29+ messages in thread
From: Stefan Hajnoczi @ 2022-02-14 17:15 UTC (permalink / raw)
To: qemu-devel, Peter Maydell
Cc: Kevin Wolf, qemu-block, Michael S. Tsirkin, libvir-list,
Dr. David Alan Gilbert, virtio-fs, Hanna Reitz, Stefan Hajnoczi
The following changes since commit cc5ce8b8b6be83e5fe3b668dbd061ad97c534e3f:
Merge remote-tracking branch 'remotes/legoater/tags/pull-ppc-20220210' into staging (2022-02-13 20:33:28 +0000)
are available in the Git repository at:
https://gitlab.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to 4c41c69e05fe28c0f95f8abd2ebf407e95a4f04b:
util: adjust coroutine pool size to virtio block queue (2022-02-14 17:11:25 +0000)
----------------------------------------------------------------
Pull request
This contains coroutine poll size scaling, virtiofsd rseq seccomp for new glibc
versions, and the QEMU C virtiofsd deprecation notice.
----------------------------------------------------------------
Christian Ehrhardt (1):
tools/virtiofsd: Add rseq syscall to the seccomp allowlist
Dr. David Alan Gilbert (1):
Deprecate C virtiofsd
Hiroki Narukawa (1):
util: adjust coroutine pool size to virtio block queue
docs/about/deprecated.rst | 17 +++++++++++++++++
include/qemu/coroutine.h | 10 ++++++++++
hw/block/virtio-blk.c | 5 +++++
tools/virtiofsd/passthrough_seccomp.c | 3 +++
util/qemu-coroutine.c | 20 ++++++++++++++++----
5 files changed, 51 insertions(+), 4 deletions(-)
--
2.34.1
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2022-02-14 17:15 Stefan Hajnoczi
@ 2022-02-15 22:40 ` Peter Maydell
0 siblings, 0 replies; 29+ messages in thread
From: Peter Maydell @ 2022-02-15 22:40 UTC (permalink / raw)
To: Stefan Hajnoczi
Cc: Kevin Wolf, qemu-block, Michael S. Tsirkin, libvir-list,
qemu-devel, Dr. David Alan Gilbert, virtio-fs, Hanna Reitz
On Mon, 14 Feb 2022 at 17:44, Stefan Hajnoczi <stefanha@redhat.com> wrote:
>
> The following changes since commit cc5ce8b8b6be83e5fe3b668dbd061ad97c534e3f:
>
> Merge remote-tracking branch 'remotes/legoater/tags/pull-ppc-20220210' into staging (2022-02-13 20:33:28 +0000)
>
> are available in the Git repository at:
>
> https://gitlab.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 4c41c69e05fe28c0f95f8abd2ebf407e95a4f04b:
>
> util: adjust coroutine pool size to virtio block queue (2022-02-14 17:11:25 +0000)
>
> ----------------------------------------------------------------
> Pull request
>
> This contains coroutine poll size scaling, virtiofsd rseq seccomp for new glibc
> versions, and the QEMU C virtiofsd deprecation notice.
>
> ----------------------------------------------------------------
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
thanks
-- PMM
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 0/3] Block patches
@ 2021-12-22 16:52 Hanna Reitz
2021-12-23 2:33 ` Richard Henderson
0 siblings, 1 reply; 29+ messages in thread
From: Hanna Reitz @ 2021-12-22 16:52 UTC (permalink / raw)
To: qemu-block; +Cc: Kevin Wolf, Hanna Reitz, Richard Henderson, qemu-devel
The following changes since commit 8c5f94cd4182753959c8be8de415120dc879d8f0:
Merge tag 'pull-loong-20211221-2' of https://gitlab.com/rth7680/qemu into staging (2021-12-21 13:30:35 -0800)
are available in the Git repository at:
https://gitlab.com/hreitz/qemu.git tags/pull-block-2021-12-22
for you to fetch changes up to 722f87df2545b308aec49b459b028f0802b4fd9e:
iotests: check: multiprocessing support (2021-12-22 16:29:48 +0100)
----------------------------------------------------------------
Block patches:
- Added support to the iotests for running tests in several parallel
jobs (using the new -j parameter)
----------------------------------------------------------------
Vladimir Sementsov-Ogievskiy (3):
iotests/testrunner.py: add doc string for run_test()
iotests/testrunner.py: move updating last_elapsed to run_tests
iotests: check: multiprocessing support
tests/qemu-iotests/check | 4 +-
tests/qemu-iotests/testrunner.py | 86 ++++++++++++++++++++++++++++----
2 files changed, 80 insertions(+), 10 deletions(-)
--
2.33.1
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2021-12-22 16:52 Hanna Reitz
@ 2021-12-23 2:33 ` Richard Henderson
0 siblings, 0 replies; 29+ messages in thread
From: Richard Henderson @ 2021-12-23 2:33 UTC (permalink / raw)
To: Hanna Reitz, qemu-block; +Cc: Kevin Wolf, qemu-devel
On 12/22/21 8:52 AM, Hanna Reitz wrote:
> The following changes since commit 8c5f94cd4182753959c8be8de415120dc879d8f0:
>
> Merge tag 'pull-loong-20211221-2' of https://gitlab.com/rth7680/qemu into staging (2021-12-21 13:30:35 -0800)
>
> are available in the Git repository at:
>
> https://gitlab.com/hreitz/qemu.git tags/pull-block-2021-12-22
>
> for you to fetch changes up to 722f87df2545b308aec49b459b028f0802b4fd9e:
>
> iotests: check: multiprocessing support (2021-12-22 16:29:48 +0100)
>
> ----------------------------------------------------------------
> Block patches:
> - Added support to the iotests for running tests in several parallel
> jobs (using the new -j parameter)
>
> ----------------------------------------------------------------
> Vladimir Sementsov-Ogievskiy (3):
> iotests/testrunner.py: add doc string for run_test()
> iotests/testrunner.py: move updating last_elapsed to run_tests
> iotests: check: multiprocessing support
>
> tests/qemu-iotests/check | 4 +-
> tests/qemu-iotests/testrunner.py | 86 ++++++++++++++++++++++++++++----
> 2 files changed, 80 insertions(+), 10 deletions(-)
Applied, thanks.
r~
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 0/3] Block patches
@ 2021-11-23 15:59 Hanna Reitz
2021-11-23 17:58 ` Richard Henderson
0 siblings, 1 reply; 29+ messages in thread
From: Hanna Reitz @ 2021-11-23 15:59 UTC (permalink / raw)
To: qemu-block
Cc: Kevin Wolf, Peter Maydell, Hanna Reitz, Richard Henderson,
qemu-devel
The following changes since commit 73e0f70e097b7c92a5ce16ee35b53afe119b20d7:
Merge tag 'pull-lu-20211123' of https://gitlab.com/rth7680/qemu into staging (2021-11-23 11:33:14 +0100)
are available in the Git repository at:
https://gitlab.com/hreitz/qemu.git tags/pull-block-2021-11-23
for you to fetch changes up to 4dd218fd0717ed3cddb69c01eeb9da630107d89d:
iotests/149: Skip on unsupported ciphers (2021-11-23 15:39:12 +0100)
----------------------------------------------------------------
Block patches for 6.2-rc2:
- Fix memory leak in vvfat when vvfat_open() fails
- iotest fixes for the gnutls crypto backend
----------------------------------------------------------------
Daniella Lee (1):
block/vvfat.c fix leak when failure occurs
Hanna Reitz (2):
iotests: Use aes-128-cbc
iotests/149: Skip on unsupported ciphers
block/vvfat.c | 16 ++++++++++++----
tests/qemu-iotests/149 | 23 ++++++++++++++++++-----
tests/qemu-iotests/206 | 4 ++--
tests/qemu-iotests/206.out | 6 +++---
tests/qemu-iotests/210 | 4 ++--
tests/qemu-iotests/210.out | 6 +++---
6 files changed, 40 insertions(+), 19 deletions(-)
--
2.33.1
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2021-11-23 15:59 Hanna Reitz
@ 2021-11-23 17:58 ` Richard Henderson
0 siblings, 0 replies; 29+ messages in thread
From: Richard Henderson @ 2021-11-23 17:58 UTC (permalink / raw)
To: Hanna Reitz, qemu-block; +Cc: Kevin Wolf, Peter Maydell, qemu-devel
On 11/23/21 4:59 PM, Hanna Reitz wrote:
> The following changes since commit 73e0f70e097b7c92a5ce16ee35b53afe119b20d7:
>
> Merge tag 'pull-lu-20211123' of https://gitlab.com/rth7680/qemu into staging (2021-11-23 11:33:14 +0100)
>
> are available in the Git repository at:
>
> https://gitlab.com/hreitz/qemu.git tags/pull-block-2021-11-23
>
> for you to fetch changes up to 4dd218fd0717ed3cddb69c01eeb9da630107d89d:
>
> iotests/149: Skip on unsupported ciphers (2021-11-23 15:39:12 +0100)
>
> ----------------------------------------------------------------
> Block patches for 6.2-rc2:
> - Fix memory leak in vvfat when vvfat_open() fails
> - iotest fixes for the gnutls crypto backend
>
> ----------------------------------------------------------------
> Daniella Lee (1):
> block/vvfat.c fix leak when failure occurs
>
> Hanna Reitz (2):
> iotests: Use aes-128-cbc
> iotests/149: Skip on unsupported ciphers
>
> block/vvfat.c | 16 ++++++++++++----
> tests/qemu-iotests/149 | 23 ++++++++++++++++++-----
> tests/qemu-iotests/206 | 4 ++--
> tests/qemu-iotests/206.out | 6 +++---
> tests/qemu-iotests/210 | 4 ++--
> tests/qemu-iotests/210.out | 6 +++---
> 6 files changed, 40 insertions(+), 19 deletions(-)
Applied, thanks.
r~
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 0/3] Block patches
@ 2020-08-17 15:16 Stefan Hajnoczi
2020-08-21 19:08 ` Peter Maydell
0 siblings, 1 reply; 29+ messages in thread
From: Stefan Hajnoczi @ 2020-08-17 15:16 UTC (permalink / raw)
To: qemu-devel, Peter Maydell
Cc: Fam Zheng, Kevin Wolf, Eduardo Habkost, qemu-block, Max Reitz,
Stefan Hajnoczi, Cleber Rosa, Paolo Bonzini
The following changes since commit d0ed6a69d399ae193959225cdeaa9382746c91cc:
Update version for v5.1.0 release (2020-08-11 17:07:03 +0100)
are available in the Git repository at:
https://github.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to 44277bf914471962c9e88e09c859aae65ae109c4:
aio-posix: keep aio_notify_me disabled during polling (2020-08-13 13:34:14 =
+0100)
----------------------------------------------------------------
Pull request
----------------------------------------------------------------
Stefan Hajnoczi (3):
async: rename event_notifier_dummy_cb/poll()
async: always set ctx->notified in aio_notify()
aio-posix: keep aio_notify_me disabled during polling
util/aio-posix.c | 47 +++++++++++++++++++++++++----------------------
util/async.c | 36 +++++++++++++++++++++++-------------
2 files changed, 48 insertions(+), 35 deletions(-)
--=20
2.26.2
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2020-08-17 15:16 Stefan Hajnoczi
@ 2020-08-21 19:08 ` Peter Maydell
0 siblings, 0 replies; 29+ messages in thread
From: Peter Maydell @ 2020-08-21 19:08 UTC (permalink / raw)
To: Stefan Hajnoczi
Cc: Fam Zheng, Kevin Wolf, Eduardo Habkost, Qemu-block,
QEMU Developers, Max Reitz, Cleber Rosa, Paolo Bonzini
On Mon, 17 Aug 2020 at 16:16, Stefan Hajnoczi <stefanha@redhat.com> wrote:
>
> The following changes since commit d0ed6a69d399ae193959225cdeaa9382746c91cc:
>
> Update version for v5.1.0 release (2020-08-11 17:07:03 +0100)
>
> are available in the Git repository at:
>
> https://github.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 44277bf914471962c9e88e09c859aae65ae109c4:
>
> aio-posix: keep aio_notify_me disabled during polling (2020-08-13 13:34:14 =
> +0100)
>
> ----------------------------------------------------------------
> Pull request
>
> ----------------------------------------------------------------
Applied, thanks.
Please update the changelog at https://wiki.qemu.org/ChangeLog/5.2
for any user-visible changes.
-- PMM
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 0/3] Block patches
@ 2020-03-06 14:23 Stefan Hajnoczi
2020-03-06 17:02 ` Peter Maydell
0 siblings, 1 reply; 29+ messages in thread
From: Stefan Hajnoczi @ 2020-03-06 14:23 UTC (permalink / raw)
To: qemu-devel
Cc: Laurent Vivier, Peter Maydell, Thomas Huth, qemu-block,
Alexander Bulekov, Bandan Das, Stefan Hajnoczi, Paolo Bonzini
The following changes since commit ef9f8fcbec6276414921dcd042575129a6331a2d:
Merge remote-tracking branch 'remotes/stefanberger/tags/pull-tpm-2020-03-04-2' into staging (2020-03-05 19:39:47 +0000)
are available in the Git repository at:
https://github.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to 1f40ace7b5634f93801c8474b9eb77fe2e00289c:
tests: Fix a bug with count variables (2020-03-06 10:35:15 +0000)
----------------------------------------------------------------
Pull request
These patches would have gone through Thomas Huth but he is away on leave.
----------------------------------------------------------------
Alexander Bulekov (2):
fuzz: fix style/typos in linker-script comments
qtest: fix fuzzer-related 80-char limit violations
Tianjia Zhang (1):
tests: Fix a bug with count variables
qtest.c | 3 ++-
tests/qtest/fuzz/fork_fuzz.ld | 16 ++++++++++------
tests/qtest/fuzz/qos_fuzz.c | 5 ++++-
tests/test-rcu-list.c | 2 +-
4 files changed, 17 insertions(+), 9 deletions(-)
--
2.24.1
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2020-03-06 14:23 Stefan Hajnoczi
@ 2020-03-06 17:02 ` Peter Maydell
0 siblings, 0 replies; 29+ messages in thread
From: Peter Maydell @ 2020-03-06 17:02 UTC (permalink / raw)
To: Stefan Hajnoczi
Cc: Laurent Vivier, Thomas Huth, Qemu-block, QEMU Developers,
Alexander Bulekov, Bandan Das, Paolo Bonzini
On Fri, 6 Mar 2020 at 14:23, Stefan Hajnoczi <stefanha@redhat.com> wrote:
>
> The following changes since commit ef9f8fcbec6276414921dcd042575129a6331a2d:
>
> Merge remote-tracking branch 'remotes/stefanberger/tags/pull-tpm-2020-03-04-2' into staging (2020-03-05 19:39:47 +0000)
>
> are available in the Git repository at:
>
> https://github.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 1f40ace7b5634f93801c8474b9eb77fe2e00289c:
>
> tests: Fix a bug with count variables (2020-03-06 10:35:15 +0000)
>
> ----------------------------------------------------------------
> Pull request
>
> These patches would have gone through Thomas Huth but he is away on leave.
>
> ----------------------------------------------------------------
Applied, thanks.
Please update the changelog at https://wiki.qemu.org/ChangeLog/5.0
for any user-visible changes.
-- PMM
^ permalink raw reply [flat|nested] 29+ messages in thread
* [PULL 0/3] Block patches
@ 2019-12-20 10:25 Stefan Hajnoczi
2020-01-03 18:50 ` Peter Maydell
0 siblings, 1 reply; 29+ messages in thread
From: Stefan Hajnoczi @ 2019-12-20 10:25 UTC (permalink / raw)
To: qemu-devel
Cc: Kevin Wolf, Peter Maydell, Eduardo Habkost, qemu-block,
libvir-list, Jason Wang, Max Reitz, Stefan Hajnoczi
The following changes since commit aceeaa69d28e6f08a24395d0aa6915b687d0a681:
Merge remote-tracking branch 'remotes/huth-gitlab/tags/pull-request-2019-12-17' into staging (2019-12-17 15:55:20 +0000)
are available in the Git repository at:
https://github.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to 725fe5d10dbd4259b1853b7d253cef83a3c0d22a:
virtio-blk: fix out-of-bounds access to bitmap in notify_guest_bh (2019-12-19 16:20:25 +0000)
----------------------------------------------------------------
Pull request
----------------------------------------------------------------
Li Hangjing (1):
virtio-blk: fix out-of-bounds access to bitmap in notify_guest_bh
Stefan Hajnoczi (2):
virtio-blk: deprecate SCSI passthrough
docs: fix rst syntax errors in unbuilt docs
docs/arm-cpu-features.rst | 6 +++---
docs/virtio-net-failover.rst | 4 ++--
docs/virtio-pmem.rst | 19 ++++++++++---------
hw/block/dataplane/virtio-blk.c | 2 +-
qemu-deprecated.texi | 11 +++++++++++
5 files changed, 27 insertions(+), 15 deletions(-)
--
2.23.0
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [PULL 0/3] Block patches
2019-12-20 10:25 Stefan Hajnoczi
@ 2020-01-03 18:50 ` Peter Maydell
0 siblings, 0 replies; 29+ messages in thread
From: Peter Maydell @ 2020-01-03 18:50 UTC (permalink / raw)
To: Stefan Hajnoczi
Cc: Kevin Wolf, Eduardo Habkost, Qemu-block, Libvirt, Jason Wang,
QEMU Developers, Max Reitz
On Fri, 20 Dec 2019 at 10:25, Stefan Hajnoczi <stefanha@redhat.com> wrote:
>
> The following changes since commit aceeaa69d28e6f08a24395d0aa6915b687d0a681:
>
> Merge remote-tracking branch 'remotes/huth-gitlab/tags/pull-request-2019-12-17' into staging (2019-12-17 15:55:20 +0000)
>
> are available in the Git repository at:
>
> https://github.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 725fe5d10dbd4259b1853b7d253cef83a3c0d22a:
>
> virtio-blk: fix out-of-bounds access to bitmap in notify_guest_bh (2019-12-19 16:20:25 +0000)
>
> ----------------------------------------------------------------
> Pull request
>
> ----------------------------------------------------------------
Applied, thanks.
Please update the changelog at https://wiki.qemu.org/ChangeLog/5.0
for any user-visible changes.
-- PMM
^ permalink raw reply [flat|nested] 29+ messages in thread
end of thread, other threads:[~2025-05-10 18:38 UTC | newest]
Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-08 14:22 [PULL 0/3] Block patches Stefan Hajnoczi
2025-05-08 14:22 ` [PULL 1/3] util: Add functions for s390x mmio read/write Stefan Hajnoczi
2025-05-08 14:22 ` [PULL 2/3] include: Add a header to define host PCI MMIO functions Stefan Hajnoczi
2025-05-08 14:22 ` [PULL 3/3] block/nvme: Use host PCI MMIO API Stefan Hajnoczi
2025-05-10 18:36 ` [PULL 0/3] Block patches Stefan Hajnoczi
-- strict thread matches above, loose matches on Subject: below --
2023-11-06 17:10 Hanna Czenczek
2023-11-07 3:03 ` Stefan Hajnoczi
2023-01-23 20:04 Stefan Hajnoczi
2023-01-24 12:24 ` Peter Maydell
2022-10-31 18:51 Stefan Hajnoczi
2022-11-01 20:04 ` Stefan Hajnoczi
2022-05-05 8:42 Stefan Hajnoczi
2022-05-05 16:29 ` Richard Henderson
2022-05-09 10:34 ` Stefan Hajnoczi
2022-05-09 12:45 ` Stefan Hajnoczi
2022-04-25 8:48 Stefan Hajnoczi
2022-04-25 20:35 ` Richard Henderson
2022-02-14 17:15 Stefan Hajnoczi
2022-02-15 22:40 ` Peter Maydell
2021-12-22 16:52 Hanna Reitz
2021-12-23 2:33 ` Richard Henderson
2021-11-23 15:59 Hanna Reitz
2021-11-23 17:58 ` Richard Henderson
2020-08-17 15:16 Stefan Hajnoczi
2020-08-21 19:08 ` Peter Maydell
2020-03-06 14:23 Stefan Hajnoczi
2020-03-06 17:02 ` Peter Maydell
2019-12-20 10:25 Stefan Hajnoczi
2020-01-03 18:50 ` Peter Maydell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).