[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH v3 1/3] block/qcow2-refcount: add trace-point to
From: |
Eric Blake |
Subject: |
Re: [Qemu-block] [PATCH v3 1/3] block/qcow2-refcount: add trace-point to qcow2_process_discards |
Date: |
Mon, 22 Apr 2019 08:36:37 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 |
On 4/19/19 9:05 AM, Vladimir Sementsov-Ogievskiy wrote:
> Let's at least trace ignored failure.
>
> Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
> ---
> block/qcow2-refcount.c | 7 ++++++-
> block/trace-events | 3 +++
> 2 files changed, 9 insertions(+), 1 deletion(-)
Reviewed-by: Eric Blake <address@hidden>
>
> diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c
> index e0fe322500..60284bcaac 100644
> --- a/block/qcow2-refcount.c
> +++ b/block/qcow2-refcount.c
> @@ -30,6 +30,7 @@
> #include "qemu/range.h"
> #include "qemu/bswap.h"
> #include "qemu/cutils.h"
> +#include "trace.h"
>
> static int64_t alloc_clusters_noref(BlockDriverState *bs, uint64_t size,
> uint64_t max);
> @@ -738,7 +739,11 @@ void qcow2_process_discards(BlockDriverState *bs, int
> ret)
>
> /* Discard is optional, ignore the return value */
> if (ret >= 0) {
> - bdrv_pdiscard(bs->file, d->offset, d->bytes);
> + int r2 = bdrv_pdiscard(bs->file, d->offset, d->bytes);
> + if (r2 < 0) {
> + trace_qcow2_process_discards_failed_region(d->offset,
> d->bytes,
> + r2);
> + }
> }
>
> g_free(d);
> diff --git a/block/trace-events b/block/trace-events
> index 7335a42540..ea508f637e 100644
> --- a/block/trace-events
> +++ b/block/trace-events
> @@ -91,6 +91,9 @@ qcow2_cache_get_done(void *co, int c, int i) "co %p
> is_l2_cache %d index %d"
> qcow2_cache_flush(void *co, int c) "co %p is_l2_cache %d"
> qcow2_cache_entry_flush(void *co, int c, int i) "co %p is_l2_cache %d index
> %d"
>
> +# qcow2-refcount.c
> +qcow2_process_discards_failed_region(uint64_t offset, uint64_t bytes, int
> ret) "offset 0x%" PRIx64 " bytes 0x%" PRIx64 " ret %d"
> +
> # qed-l2-cache.c
> qed_alloc_l2_cache_entry(void *l2_cache, void *entry) "l2_cache %p entry %p"
> qed_unref_l2_cache_entry(void *entry, int ref) "entry %p ref %d"
>
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature