All of lore.kernel.org
 help / color / mirror / Atom feed
* [PULL 0/5] Block patches
@ 2024-01-30 21:51 Stefan Hajnoczi
  2024-01-30 21:51 ` [PULL 1/5] block/io_uring: improve error message when init fails Stefan Hajnoczi
                   ` (5 more replies)
  0 siblings, 6 replies; 13+ messages in thread
From: Stefan Hajnoczi @ 2024-01-30 21:51 UTC (permalink / raw)
  To: qemu-devel
  Cc: John Snow, Daniel P. Berrangé,
	Eduardo Habkost, Paolo Bonzini, Philippe Mathieu-Daudé,
	Aarushi Mehta, Fam Zheng, Kevin Wolf, Stefan Hajnoczi,
	qemu-block, Julia Suvorova, Stefano Garzarella, Alistair Francis,
	Peter Maydell, Hanna Reitz

The following changes since commit 11be70677c70fdccd452a3233653949b79e97908:

  Merge tag 'pull-vfio-20240129' of https://github.com/legoater/qemu into staging (2024-01-29 10:53:56 +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 954b33daee83fe79293fd81c2f7371db48e7d6bd:

  hw/block/block.c: improve confusing blk_check_size_and_read_all() error (2024-01-30 16:19:00 -0500)

----------------------------------------------------------------
Pull request

----------------------------------------------------------------

Fiona Ebner (1):
  block/io_uring: improve error message when init fails

Manos Pitsidianakis (2):
  hw/core/qdev.c: add qdev_get_human_name()
  hw/block/block.c: improve confusing blk_check_size_and_read_all()
    error

Richard W.M. Jones (1):
  block/blkio: Make s->mem_region_alignment be 64 bits

Stefan Hajnoczi (1):
  pflash: fix sectors vs bytes confusion in blk_pread_nonzeroes()

 include/hw/block/block.h |  4 ++--
 include/hw/qdev-core.h   | 14 ++++++++++++++
 block/blkio.c            |  2 +-
 block/io_uring.c         |  2 +-
 hw/block/block.c         | 27 ++++++++++++++++-----------
 hw/block/m25p80.c        |  3 ++-
 hw/block/pflash_cfi01.c  |  4 ++--
 hw/block/pflash_cfi02.c  |  2 +-
 hw/core/qdev.c           |  8 ++++++++
 9 files changed, 47 insertions(+), 19 deletions(-)

-- 
2.43.0



^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PULL 1/5] block/io_uring: improve error message when init fails
  2024-01-30 21:51 [PULL 0/5] Block patches Stefan Hajnoczi
@ 2024-01-30 21:51 ` Stefan Hajnoczi
  2024-01-30 21:51 ` [PULL 2/5] block/blkio: Make s->mem_region_alignment be 64 bits Stefan Hajnoczi
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 13+ messages in thread
From: Stefan Hajnoczi @ 2024-01-30 21:51 UTC (permalink / raw)
  To: qemu-devel
  Cc: John Snow, Daniel P. Berrangé,
	Eduardo Habkost, Paolo Bonzini, Philippe Mathieu-Daudé,
	Aarushi Mehta, Fam Zheng, Kevin Wolf, Stefan Hajnoczi,
	qemu-block, Julia Suvorova, Stefano Garzarella, Alistair Francis,
	Peter Maydell, Hanna Reitz, Fiona Ebner

From: Fiona Ebner <f.ebner@proxmox.com>

The man page for io_uring_queue_init states:

> io_uring_queue_init(3) returns 0 on success and -errno on failure.

and the man page for io_uring_setup (which is one of the functions
where the return value of io_uring_queue_init() can come from) states:

> On error, a negative error code is returned. The caller should not
> rely on errno variable.

Tested using 'sysctl kernel.io_uring_disabled=2'. Output before this
change:

> failed to init linux io_uring ring

Output after this change:

> failed to init linux io_uring ring: Operation not permitted

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20240123135044.204985-1-f.ebner@proxmox.com>
---
 block/io_uring.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/block/io_uring.c b/block/io_uring.c
index d77ae55745..d11b2051ab 100644
--- a/block/io_uring.c
+++ b/block/io_uring.c
@@ -432,7 +432,7 @@ LuringState *luring_init(Error **errp)
 
     rc = io_uring_queue_init(MAX_ENTRIES, ring, 0);
     if (rc < 0) {
-        error_setg_errno(errp, errno, "failed to init linux io_uring ring");
+        error_setg_errno(errp, -rc, "failed to init linux io_uring ring");
         g_free(s);
         return NULL;
     }
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PULL 2/5] block/blkio: Make s->mem_region_alignment be 64 bits
  2024-01-30 21:51 [PULL 0/5] Block patches Stefan Hajnoczi
  2024-01-30 21:51 ` [PULL 1/5] block/io_uring: improve error message when init fails Stefan Hajnoczi
@ 2024-01-30 21:51 ` Stefan Hajnoczi
  2024-01-30 21:51 ` [PULL 3/5] pflash: fix sectors vs bytes confusion in blk_pread_nonzeroes() Stefan Hajnoczi
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 13+ messages in thread
From: Stefan Hajnoczi @ 2024-01-30 21:51 UTC (permalink / raw)
  To: qemu-devel
  Cc: John Snow, Daniel P. Berrangé,
	Eduardo Habkost, Paolo Bonzini, Philippe Mathieu-Daudé,
	Aarushi Mehta, Fam Zheng, Kevin Wolf, Stefan Hajnoczi,
	qemu-block, Julia Suvorova, Stefano Garzarella, Alistair Francis,
	Peter Maydell, Hanna Reitz, Richard W.M. Jones

From: "Richard W.M. Jones" <rjones@redhat.com>

With GCC 14 the code failed to compile on i686 (and was wrong for any
version of GCC):

../block/blkio.c: In function ‘blkio_file_open’:
../block/blkio.c:857:28: error: passing argument 3 of ‘blkio_get_uint64’ from incompatible pointer type [-Wincompatible-pointer-types]
  857 |                            &s->mem_region_alignment);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~
      |                            |
      |                            size_t * {aka unsigned int *}
In file included from ../block/blkio.c:12:
/usr/include/blkio.h:49:67: note: expected ‘uint64_t *’ {aka ‘long long unsigned int *’} but argument is of type ‘size_t *’ {aka ‘unsigned int *’}
   49 | int blkio_get_uint64(struct blkio *b, const char *name, uint64_t *value);
      |                                                         ~~~~~~~~~~^~~~~

Signed-off-by: Richard W.M. Jones <rjones@redhat.com>
Message-id: 20240130122006.2977938-1-rjones@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 block/blkio.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/block/blkio.c b/block/blkio.c
index 0a0a6c0f5f..bc2f21784c 100644
--- a/block/blkio.c
+++ b/block/blkio.c
@@ -68,7 +68,7 @@ typedef struct {
     CoQueue bounce_available;
 
     /* The value of the "mem-region-alignment" property */
-    size_t mem_region_alignment;
+    uint64_t mem_region_alignment;
 
     /* Can we skip adding/deleting blkio_mem_regions? */
     bool needs_mem_regions;
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PULL 3/5] pflash: fix sectors vs bytes confusion in blk_pread_nonzeroes()
  2024-01-30 21:51 [PULL 0/5] Block patches Stefan Hajnoczi
  2024-01-30 21:51 ` [PULL 1/5] block/io_uring: improve error message when init fails Stefan Hajnoczi
  2024-01-30 21:51 ` [PULL 2/5] block/blkio: Make s->mem_region_alignment be 64 bits Stefan Hajnoczi
@ 2024-01-30 21:51 ` Stefan Hajnoczi
  2024-01-30 21:51 ` [PULL 4/5] hw/core/qdev.c: add qdev_get_human_name() Stefan Hajnoczi
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 13+ messages in thread
From: Stefan Hajnoczi @ 2024-01-30 21:51 UTC (permalink / raw)
  To: qemu-devel
  Cc: John Snow, Daniel P. Berrangé,
	Eduardo Habkost, Paolo Bonzini, Philippe Mathieu-Daudé,
	Aarushi Mehta, Fam Zheng, Kevin Wolf, Stefan Hajnoczi,
	qemu-block, Julia Suvorova, Stefano Garzarella, Alistair Francis,
	Peter Maydell, Hanna Reitz, Xiang Zheng

The following expression is incorrect because blk_pread_nonzeroes()
deals in units of bytes, not sectors:

  bytes = MIN(size - offset, BDRV_REQUEST_MAX_SECTORS)
                                              ^^^^^^^

BDRV_REQUEST_MAX_BYTES is the appropriate constant.

Fixes: a4b15a8b9ef2 ("pflash: Only read non-zero parts of backend image")
Cc: Xiang Zheng <zhengxiang9@huawei.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-id: 20240130002712.257815-1-stefanha@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 hw/block/block.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/block/block.c b/hw/block/block.c
index 9f52ee6e72..ff503002aa 100644
--- a/hw/block/block.c
+++ b/hw/block/block.c
@@ -30,7 +30,7 @@ static int blk_pread_nonzeroes(BlockBackend *blk, hwaddr size, void *buf)
     BlockDriverState *bs = blk_bs(blk);
 
     for (;;) {
-        bytes = MIN(size - offset, BDRV_REQUEST_MAX_SECTORS);
+        bytes = MIN(size - offset, BDRV_REQUEST_MAX_BYTES);
         if (bytes <= 0) {
             return 0;
         }
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PULL 4/5] hw/core/qdev.c: add qdev_get_human_name()
  2024-01-30 21:51 [PULL 0/5] Block patches Stefan Hajnoczi
                   ` (2 preceding siblings ...)
  2024-01-30 21:51 ` [PULL 3/5] pflash: fix sectors vs bytes confusion in blk_pread_nonzeroes() Stefan Hajnoczi
@ 2024-01-30 21:51 ` Stefan Hajnoczi
  2024-01-30 21:51 ` [PULL 5/5] hw/block/block.c: improve confusing blk_check_size_and_read_all() error Stefan Hajnoczi
  2024-02-01 10:55 ` [PULL 0/5] Block patches Peter Maydell
  5 siblings, 0 replies; 13+ messages in thread
From: Stefan Hajnoczi @ 2024-01-30 21:51 UTC (permalink / raw)
  To: qemu-devel
  Cc: John Snow, Daniel P. Berrangé,
	Eduardo Habkost, Paolo Bonzini, Philippe Mathieu-Daudé,
	Aarushi Mehta, Fam Zheng, Kevin Wolf, Stefan Hajnoczi,
	qemu-block, Julia Suvorova, Stefano Garzarella, Alistair Francis,
	Peter Maydell, Hanna Reitz, Manos Pitsidianakis

From: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>

Add a simple method to return some kind of human readable identifier for
use in error messages.

Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
Message-id: 8b566bfced98ae44be1fcc1f8e7215f0c3393aa1.1706598705.git.manos.pitsidianakis@linaro.org
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 include/hw/qdev-core.h | 14 ++++++++++++++
 hw/core/qdev.c         |  8 ++++++++
 2 files changed, 22 insertions(+)

diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h
index 151d968238..66338f479f 100644
--- a/include/hw/qdev-core.h
+++ b/include/hw/qdev-core.h
@@ -993,6 +993,20 @@ const char *qdev_fw_name(DeviceState *dev);
 void qdev_assert_realized_properly(void);
 Object *qdev_get_machine(void);
 
+/**
+ * qdev_get_human_name() - Return a human-readable name for a device
+ * @dev: The device. Must be a valid and non-NULL pointer.
+ *
+ * .. note::
+ *    This function is intended for user friendly error messages.
+ *
+ * Returns: A newly allocated string containing the device id if not null,
+ * else the object canonical path.
+ *
+ * Use g_free() to free it.
+ */
+char *qdev_get_human_name(DeviceState *dev);
+
 /* FIXME: make this a link<> */
 bool qdev_set_parent_bus(DeviceState *dev, BusState *bus, Error **errp);
 
diff --git a/hw/core/qdev.c b/hw/core/qdev.c
index 43d863b0c5..c68d0f7c51 100644
--- a/hw/core/qdev.c
+++ b/hw/core/qdev.c
@@ -879,6 +879,14 @@ Object *qdev_get_machine(void)
     return dev;
 }
 
+char *qdev_get_human_name(DeviceState *dev)
+{
+    g_assert(dev != NULL);
+
+    return dev->id ?
+           g_strdup(dev->id) : object_get_canonical_path(OBJECT(dev));
+}
+
 static MachineInitPhase machine_phase;
 
 bool phase_check(MachineInitPhase phase)
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PULL 5/5] hw/block/block.c: improve confusing blk_check_size_and_read_all() error
  2024-01-30 21:51 [PULL 0/5] Block patches Stefan Hajnoczi
                   ` (3 preceding siblings ...)
  2024-01-30 21:51 ` [PULL 4/5] hw/core/qdev.c: add qdev_get_human_name() Stefan Hajnoczi
@ 2024-01-30 21:51 ` Stefan Hajnoczi
  2024-02-01 10:55 ` [PULL 0/5] Block patches Peter Maydell
  5 siblings, 0 replies; 13+ messages in thread
From: Stefan Hajnoczi @ 2024-01-30 21:51 UTC (permalink / raw)
  To: qemu-devel
  Cc: John Snow, Daniel P. Berrangé,
	Eduardo Habkost, Paolo Bonzini, Philippe Mathieu-Daudé,
	Aarushi Mehta, Fam Zheng, Kevin Wolf, Stefan Hajnoczi,
	qemu-block, Julia Suvorova, Stefano Garzarella, Alistair Francis,
	Peter Maydell, Hanna Reitz, Manos Pitsidianakis

From: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>

In cases where a device tries to read more bytes than the block device
contains, the error is vague: "device requires X bytes, block backend
provides Y bytes".

This patch changes the errors of this function to include the block
backend name, the device id and device type name where appropriate.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
Message-id: 7260eadff22c08457740117c1bb7bd2b4353acb9.1706598705.git.manos.pitsidianakis@linaro.org
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 include/hw/block/block.h |  4 ++--
 hw/block/block.c         | 25 +++++++++++++++----------
 hw/block/m25p80.c        |  3 ++-
 hw/block/pflash_cfi01.c  |  4 ++--
 hw/block/pflash_cfi02.c  |  2 +-
 5 files changed, 22 insertions(+), 16 deletions(-)

diff --git a/include/hw/block/block.h b/include/hw/block/block.h
index 15fff66435..de3946a5f1 100644
--- a/include/hw/block/block.h
+++ b/include/hw/block/block.h
@@ -88,8 +88,8 @@ static inline unsigned int get_physical_block_exp(BlockConf *conf)
 
 /* Backend access helpers */
 
-bool blk_check_size_and_read_all(BlockBackend *blk, void *buf, hwaddr size,
-                                 Error **errp);
+bool blk_check_size_and_read_all(BlockBackend *blk, DeviceState *dev,
+                                 void *buf, hwaddr size, Error **errp);
 
 /* Configuration helpers */
 
diff --git a/hw/block/block.c b/hw/block/block.c
index ff503002aa..3ceca7dce6 100644
--- a/hw/block/block.c
+++ b/hw/block/block.c
@@ -54,29 +54,30 @@ static int blk_pread_nonzeroes(BlockBackend *blk, hwaddr size, void *buf)
  * BDRV_REQUEST_MAX_BYTES.
  * On success, return true.
  * On failure, store an error through @errp and return false.
- * Note that the error messages do not identify the block backend.
- * TODO Since callers don't either, this can result in confusing
- * errors.
+ *
  * This function not intended for actual block devices, which read on
  * demand.  It's for things like memory devices that (ab)use a block
  * backend to provide persistence.
  */
-bool blk_check_size_and_read_all(BlockBackend *blk, void *buf, hwaddr size,
-                                 Error **errp)
+bool blk_check_size_and_read_all(BlockBackend *blk, DeviceState *dev,
+                                 void *buf, hwaddr size, Error **errp)
 {
     int64_t blk_len;
     int ret;
+    g_autofree char *dev_id = NULL;
 
     blk_len = blk_getlength(blk);
     if (blk_len < 0) {
         error_setg_errno(errp, -blk_len,
-                         "can't get size of block backend");
+                         "can't get size of %s block backend", blk_name(blk));
         return false;
     }
     if (blk_len != size) {
-        error_setg(errp, "device requires %" HWADDR_PRIu " bytes, "
-                   "block backend provides %" PRIu64 " bytes",
-                   size, blk_len);
+        dev_id = qdev_get_human_name(dev);
+        error_setg(errp, "%s device '%s' requires %" HWADDR_PRIu
+                   " bytes, %s block backend provides %" PRIu64 " bytes",
+                   object_get_typename(OBJECT(dev)), dev_id, size,
+                   blk_name(blk), blk_len);
         return false;
     }
 
@@ -89,7 +90,11 @@ bool blk_check_size_and_read_all(BlockBackend *blk, void *buf, hwaddr size,
     assert(size <= BDRV_REQUEST_MAX_BYTES);
     ret = blk_pread_nonzeroes(blk, size, buf);
     if (ret < 0) {
-        error_setg_errno(errp, -ret, "can't read block backend");
+        dev_id = qdev_get_human_name(dev);
+        error_setg_errno(errp, -ret, "can't read %s block backend"
+                         " for %s device '%s'",
+                         blk_name(blk), object_get_typename(OBJECT(dev)),
+                         dev_id);
         return false;
     }
     return true;
diff --git a/hw/block/m25p80.c b/hw/block/m25p80.c
index 26ce895628..0a12030a3a 100644
--- a/hw/block/m25p80.c
+++ b/hw/block/m25p80.c
@@ -1617,7 +1617,8 @@ static void m25p80_realize(SSIPeripheral *ss, Error **errp)
         trace_m25p80_binding(s);
         s->storage = blk_blockalign(s->blk, s->size);
 
-        if (!blk_check_size_and_read_all(s->blk, s->storage, s->size, errp)) {
+        if (!blk_check_size_and_read_all(s->blk, DEVICE(s),
+                                         s->storage, s->size, errp)) {
             return;
         }
     } else {
diff --git a/hw/block/pflash_cfi01.c b/hw/block/pflash_cfi01.c
index f956f8bcf7..1bda8424b9 100644
--- a/hw/block/pflash_cfi01.c
+++ b/hw/block/pflash_cfi01.c
@@ -848,8 +848,8 @@ static void pflash_cfi01_realize(DeviceState *dev, Error **errp)
     }
 
     if (pfl->blk) {
-        if (!blk_check_size_and_read_all(pfl->blk, pfl->storage, total_len,
-                                         errp)) {
+        if (!blk_check_size_and_read_all(pfl->blk, dev, pfl->storage,
+                                         total_len, errp)) {
             vmstate_unregister_ram(&pfl->mem, DEVICE(pfl));
             return;
         }
diff --git a/hw/block/pflash_cfi02.c b/hw/block/pflash_cfi02.c
index 6fa56f14c0..2314142373 100644
--- a/hw/block/pflash_cfi02.c
+++ b/hw/block/pflash_cfi02.c
@@ -902,7 +902,7 @@ static void pflash_cfi02_realize(DeviceState *dev, Error **errp)
     }
 
     if (pfl->blk) {
-        if (!blk_check_size_and_read_all(pfl->blk, pfl->storage,
+        if (!blk_check_size_and_read_all(pfl->blk, dev, pfl->storage,
                                          pfl->chip_len, errp)) {
             vmstate_unregister_ram(&pfl->orig_mem, DEVICE(pfl));
             return;
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PULL 0/5] Block patches
  2024-01-30 21:51 [PULL 0/5] Block patches Stefan Hajnoczi
                   ` (4 preceding siblings ...)
  2024-01-30 21:51 ` [PULL 5/5] hw/block/block.c: improve confusing blk_check_size_and_read_all() error Stefan Hajnoczi
@ 2024-02-01 10:55 ` Peter Maydell
  5 siblings, 0 replies; 13+ messages in thread
From: Peter Maydell @ 2024-02-01 10:55 UTC (permalink / raw)
  To: Stefan Hajnoczi
  Cc: qemu-devel, John Snow, Daniel P. Berrangé,
	Eduardo Habkost, Paolo Bonzini, Philippe Mathieu-Daudé,
	Aarushi Mehta, Fam Zheng, Kevin Wolf, qemu-block, Julia Suvorova,
	Stefano Garzarella, Alistair Francis, Hanna Reitz

On Tue, 30 Jan 2024 at 21:51, Stefan Hajnoczi <stefanha@redhat.com> wrote:
>
> The following changes since commit 11be70677c70fdccd452a3233653949b79e97908:
>
>   Merge tag 'pull-vfio-20240129' of https://github.com/legoater/qemu into staging (2024-01-29 10:53:56 +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 954b33daee83fe79293fd81c2f7371db48e7d6bd:
>
>   hw/block/block.c: improve confusing blk_check_size_and_read_all() error (2024-01-30 16:19:00 -0500)
>
> ----------------------------------------------------------------
> Pull request
>
> ----------------------------------------------------------------

Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/9.0
for any user-visible changes.

-- PMM


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PULL 0/5] Block patches
  2023-09-07 18:16 Stefan Hajnoczi
@ 2023-09-08 15:55 ` Stefan Hajnoczi
  0 siblings, 0 replies; 13+ messages in thread
From: Stefan Hajnoczi @ 2023-09-08 15:55 UTC (permalink / raw)
  To: Stefan Hajnoczi
  Cc: qemu-devel, Jeuk Kim, Hanna Reitz, Marcel Apfelbaum,
	Daniel P. Berrangé,
	Laurent Vivier, qemu-block, Kevin Wolf, Paolo Bonzini,
	Philippe Mathieu-Daudé,
	Thomas Huth, Fam Zheng, Michael S. Tsirkin,
	Marc-André Lureau, Stefan Hajnoczi

[-- Attachment #1: Type: text/plain, Size: 115 bytes --]

Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/8.2 for any user-visible changes.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PULL 0/5] Block patches
@ 2023-09-07 18:16 Stefan Hajnoczi
  2023-09-08 15:55 ` Stefan Hajnoczi
  0 siblings, 1 reply; 13+ messages in thread
From: Stefan Hajnoczi @ 2023-09-07 18:16 UTC (permalink / raw)
  To: qemu-devel
  Cc: Jeuk Kim, Hanna Reitz, Marcel Apfelbaum, Daniel P. Berrangé,
	Laurent Vivier, qemu-block, Kevin Wolf, Paolo Bonzini,
	Philippe Mathieu-Daudé,
	Thomas Huth, Fam Zheng, Michael S. Tsirkin,
	Marc-André Lureau, Stefan Hajnoczi

The following changes since commit 03a3a62fbd0aa5227e978eef3c67d3978aec9e5f:

  Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging (2023-09-07 10:29:06 -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 631c872614aca91eaf947c1748f0f27f99635d92:

  tests/qtest: Introduce tests for UFS (2023-09-07 14:01:29 -0400)

----------------------------------------------------------------
Pull request

- Jeuk Kim's emulated UFS device
- Fabiano Rosas' IOThread GSource "name" debugging aid

----------------------------------------------------------------

Fabiano Rosas (1):
  iothread: Set the GSource "name" field

Jeuk Kim (4):
  hw/ufs: Initial commit for emulated Universal-Flash-Storage
  hw/ufs: Support for Query Transfer Requests
  hw/ufs: Support for UFS logical unit
  tests/qtest: Introduce tests for UFS

 MAINTAINERS              |    7 +
 docs/specs/pci-ids.rst   |    2 +
 meson.build              |    1 +
 hw/ufs/trace.h           |    1 +
 hw/ufs/ufs.h             |  131 ++++
 include/block/ufs.h      | 1090 +++++++++++++++++++++++++++
 include/hw/pci/pci.h     |    1 +
 include/hw/pci/pci_ids.h |    1 +
 include/scsi/constants.h |    1 +
 hw/ufs/lu.c              | 1445 ++++++++++++++++++++++++++++++++++++
 hw/ufs/ufs.c             | 1502 ++++++++++++++++++++++++++++++++++++++
 iothread.c               |   14 +-
 tests/qtest/ufs-test.c   |  587 +++++++++++++++
 hw/Kconfig               |    1 +
 hw/meson.build           |    1 +
 hw/ufs/Kconfig           |    4 +
 hw/ufs/meson.build       |    1 +
 hw/ufs/trace-events      |   58 ++
 tests/qtest/meson.build  |    1 +
 19 files changed, 4843 insertions(+), 6 deletions(-)
 create mode 100644 hw/ufs/trace.h
 create mode 100644 hw/ufs/ufs.h
 create mode 100644 include/block/ufs.h
 create mode 100644 hw/ufs/lu.c
 create mode 100644 hw/ufs/ufs.c
 create mode 100644 tests/qtest/ufs-test.c
 create mode 100644 hw/ufs/Kconfig
 create mode 100644 hw/ufs/meson.build
 create mode 100644 hw/ufs/trace-events

-- 
2.41.0



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PULL 0/5] Block patches
  2021-07-08 13:11 Stefan Hajnoczi
@ 2021-07-09 13:29 ` Peter Maydell
  0 siblings, 0 replies; 13+ messages in thread
From: Peter Maydell @ 2021-07-09 13:29 UTC (permalink / raw)
  To: Stefan Hajnoczi
  Cc: Fam Zheng, Kevin Wolf, Qemu-block, QEMU Developers, Max Reitz,
	Paolo Bonzini, John Snow

On Thu, 8 Jul 2021 at 14:11, Stefan Hajnoczi <stefanha@redhat.com> wrote:
>
> The following changes since commit 711c0418c8c1ce3a24346f058b001c4c5a2f0f81:
>
>   Merge remote-tracking branch 'remotes/philmd/tags/mips-20210702' into staging (2021-07-04 14:04:12 +0100)
>
> are available in the Git repository at:
>
>   https://gitlab.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 9f460c64e13897117f35ffb61f6f5e0102cabc70:
>
>   block/io: Merge discard request alignments (2021-07-06 14:28:55 +0100)
>
> ----------------------------------------------------------------
> Pull request
>

Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/6.1
for any user-visible changes.

-- PMM


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PULL 0/5] Block patches
@ 2021-07-08 13:11 Stefan Hajnoczi
  2021-07-09 13:29 ` Peter Maydell
  0 siblings, 1 reply; 13+ messages in thread
From: Stefan Hajnoczi @ 2021-07-08 13:11 UTC (permalink / raw)
  To: qemu-devel, Peter Maydell
  Cc: Fam Zheng, Kevin Wolf, qemu-block, Max Reitz, Stefan Hajnoczi,
	Paolo Bonzini, John Snow

The following changes since commit 711c0418c8c1ce3a24346f058b001c4c5a2f0f81:

  Merge remote-tracking branch 'remotes/philmd/tags/mips-20210702' into staging (2021-07-04 14:04:12 +0100)

are available in the Git repository at:

  https://gitlab.com/stefanha/qemu.git tags/block-pull-request

for you to fetch changes up to 9f460c64e13897117f35ffb61f6f5e0102cabc70:

  block/io: Merge discard request alignments (2021-07-06 14:28:55 +0100)

----------------------------------------------------------------
Pull request

----------------------------------------------------------------

Akihiko Odaki (3):
  block/file-posix: Optimize for macOS
  block: Add backend_defaults property
  block/io: Merge discard request alignments

Stefan Hajnoczi (2):
  util/async: add a human-readable name to BHs for debugging
  util/async: print leaked BH name when AioContext finalizes

 include/block/aio.h            | 31 ++++++++++++++++++++++---
 include/hw/block/block.h       |  3 +++
 include/qemu/main-loop.h       |  4 +++-
 block/file-posix.c             | 27 ++++++++++++++++++++--
 block/io.c                     |  2 ++
 hw/block/block.c               | 42 ++++++++++++++++++++++++++++++----
 tests/unit/ptimer-test-stubs.c |  2 +-
 util/async.c                   | 25 ++++++++++++++++----
 util/main-loop.c               |  4 ++--
 tests/qemu-iotests/172.out     | 38 ++++++++++++++++++++++++++++++
 10 files changed, 161 insertions(+), 17 deletions(-)

-- 
2.31.1


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PULL 0/5] Block patches
  2020-05-13 14:15 Max Reitz
@ 2020-05-14  9:52 ` Peter Maydell
  0 siblings, 0 replies; 13+ messages in thread
From: Peter Maydell @ 2020-05-14  9:52 UTC (permalink / raw)
  To: Max Reitz; +Cc: Kevin Wolf, QEMU Developers, Qemu-block

On Wed, 13 May 2020 at 15:15, Max Reitz <mreitz@redhat.com> wrote:
>
> The following changes since commit d5c75ec500d96f1d93447f990cd5a4ef5ba27fae:
>
>   Merge remote-tracking branch 'remotes/stefanberger/tags/pull-tpm-2020-05-08-1' into staging (2020-05-12 17:00:10 +0100)
>
> are available in the Git repository at:
>
>   https://github.com/XanClic/qemu.git tags/pull-block-2020-05-13
>
> for you to fetch changes up to fc9aefc8c0d3c6392656ea661ce72c1583b70bbd:
>
>   block/block-copy: fix use-after-free of task pointer (2020-05-13 14:20:31 +0200)
>
> ----------------------------------------------------------------
> Block patches:
> - zstd compression for qcow2
> - Fix use-after-free


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/5.1
for any user-visible changes.

-- PMM


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PULL 0/5] Block patches
@ 2020-05-13 14:15 Max Reitz
  2020-05-14  9:52 ` Peter Maydell
  0 siblings, 1 reply; 13+ messages in thread
From: Max Reitz @ 2020-05-13 14:15 UTC (permalink / raw)
  To: qemu-block; +Cc: Kevin Wolf, Peter Maydell, qemu-devel, Max Reitz

The following changes since commit d5c75ec500d96f1d93447f990cd5a4ef5ba27fae:

  Merge remote-tracking branch 'remotes/stefanberger/tags/pull-tpm-2020-05-08-1' into staging (2020-05-12 17:00:10 +0100)

are available in the Git repository at:

  https://github.com/XanClic/qemu.git tags/pull-block-2020-05-13

for you to fetch changes up to fc9aefc8c0d3c6392656ea661ce72c1583b70bbd:

  block/block-copy: fix use-after-free of task pointer (2020-05-13 14:20:31 +0200)

----------------------------------------------------------------
Block patches:
- zstd compression for qcow2
- Fix use-after-free

----------------------------------------------------------------
Denis Plotnikov (4):
  qcow2: introduce compression type feature
  qcow2: rework the cluster compression routine
  qcow2: add zstd cluster compression
  iotests: 287: add qcow2 compression type test

Vladimir Sementsov-Ogievskiy (1):
  block/block-copy: fix use-after-free of task pointer

 docs/interop/qcow2.txt           |   1 +
 configure                        |   2 +-
 qapi/block-core.json             |  23 ++-
 block/qcow2.h                    |  20 ++-
 include/block/block_int.h        |   1 +
 block/block-copy.c               |   2 +-
 block/qcow2-threads.c            | 240 +++++++++++++++++++++++++++++--
 block/qcow2.c                    | 120 ++++++++++++++++
 tests/qemu-iotests/031.out       |  14 +-
 tests/qemu-iotests/036.out       |   4 +-
 tests/qemu-iotests/049.out       | 102 ++++++-------
 tests/qemu-iotests/060.out       |   1 +
 tests/qemu-iotests/061.out       |  34 +++--
 tests/qemu-iotests/065           |  28 ++--
 tests/qemu-iotests/080           |   2 +-
 tests/qemu-iotests/082.out       |  48 ++++++-
 tests/qemu-iotests/085.out       |  38 ++---
 tests/qemu-iotests/144.out       |   4 +-
 tests/qemu-iotests/182.out       |   2 +-
 tests/qemu-iotests/185.out       |   8 +-
 tests/qemu-iotests/198.out       |   2 +
 tests/qemu-iotests/206.out       |   5 +
 tests/qemu-iotests/242.out       |   5 +
 tests/qemu-iotests/255.out       |   8 +-
 tests/qemu-iotests/274.out       |  49 ++++---
 tests/qemu-iotests/280.out       |   2 +-
 tests/qemu-iotests/287           | 152 ++++++++++++++++++++
 tests/qemu-iotests/287.out       |  67 +++++++++
 tests/qemu-iotests/common.filter |   3 +-
 tests/qemu-iotests/group         |   1 +
 30 files changed, 825 insertions(+), 163 deletions(-)
 create mode 100755 tests/qemu-iotests/287
 create mode 100644 tests/qemu-iotests/287.out

-- 
2.26.2



^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2024-02-01 10:56 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-30 21:51 [PULL 0/5] Block patches Stefan Hajnoczi
2024-01-30 21:51 ` [PULL 1/5] block/io_uring: improve error message when init fails Stefan Hajnoczi
2024-01-30 21:51 ` [PULL 2/5] block/blkio: Make s->mem_region_alignment be 64 bits Stefan Hajnoczi
2024-01-30 21:51 ` [PULL 3/5] pflash: fix sectors vs bytes confusion in blk_pread_nonzeroes() Stefan Hajnoczi
2024-01-30 21:51 ` [PULL 4/5] hw/core/qdev.c: add qdev_get_human_name() Stefan Hajnoczi
2024-01-30 21:51 ` [PULL 5/5] hw/block/block.c: improve confusing blk_check_size_and_read_all() error Stefan Hajnoczi
2024-02-01 10:55 ` [PULL 0/5] Block patches Peter Maydell
  -- strict thread matches above, loose matches on Subject: below --
2023-09-07 18:16 Stefan Hajnoczi
2023-09-08 15:55 ` Stefan Hajnoczi
2021-07-08 13:11 Stefan Hajnoczi
2021-07-09 13:29 ` Peter Maydell
2020-05-13 14:15 Max Reitz
2020-05-14  9:52 ` Peter Maydell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.