[Qemu-devel] [PATCH v3 0/9] virtio: enhance virtio_error messages

Ladi Prosek posted 9 patches 6 years, 9 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20170717081152.17153-1-lprosek@redhat.com
Test FreeBSD passed
Test checkpatch passed
Test docker passed
Test s390x passed
hw/9pfs/virtio-9p-device.c |  37 ++++++--------
hw/block/virtio-blk.c      |   6 +--
hw/net/virtio-net.c        |  24 ++++-----
hw/scsi/virtio-scsi.c      |   2 +-
hw/virtio/virtio-crypto.c  |  49 ++++++++++---------
hw/virtio/virtio.c         | 119 +++++++++++++++++++++++++++++++--------------
include/hw/virtio/virtio.h |   1 +
scripts/checkpatch.pl      |   4 +-
8 files changed, 143 insertions(+), 99 deletions(-)
[Qemu-devel] [PATCH v3 0/9] virtio: enhance virtio_error messages
Posted by Ladi Prosek 6 years, 9 months ago
Output like "Virtqueue size exceeded" is not much useful in identifying the
culprit. This series beefs up virtio_error to print the virtio device name
and id, and introduces virtqueue_error which additionally includes the index
of the virtqueue where the error occured.

Patches 1 to 3 lay the groundwork, patches 4 to 8 convert virtio devices to
use virtqueue_error instead of virtio_error. Patch 9 adds virtio_error and
virtqueue_error to the list of error funcs in checkpatch.pl.

v1->v2:
* Modified virtio_error and added virtqueue_error (Stefan)
* Now also printing device id (Stefan)
* Went over all virtio_error call sites and converted them to virtqueue_error
  as appropriate; added virtio device maintainers to cc

v2->v3:
* Removed patch 1 (Stefan, Markus)
* Split patch 3 into 2 (adds virtqueue_error) and 3 (makes virtio.c call it)
  (Cornelia)
* Added patch 9 to modify $qemu_error_funcs in checkpatch.pl (Greg)
* s/includes queue index/includes the queue index/ in patch 3-9 commit
  messages (Cornelia)
* Fixed virtio_get_device_id to return empty string instead of NULL if the
  device doesn't have an id (Stefan)
* Simplified the change in virtio-crypto.c to use vcrypto->ctrl_vq instead
  of propagating the vq pointer in function arguments (Cornelia, Gonglei)

Ladi Prosek (9):
  virtio: enhance virtio_error messages
  virtio: introduce virtqueue_error
  virtio: use virtqueue_error for errors with queue context
  virtio-9p: use virtqueue_error for errors with queue context
  virtio-blk: use virtqueue_error for errors with queue context
  virtio-net: use virtqueue_error for errors with queue context
  virtio-scsi: use virtqueue_error for errors with queue context
  virtio-crypto: use virtqueue_error for errors with queue context
  checkpatch: add virtio_error and virtqueue_error to error funcs

 hw/9pfs/virtio-9p-device.c |  37 ++++++--------
 hw/block/virtio-blk.c      |   6 +--
 hw/net/virtio-net.c        |  24 ++++-----
 hw/scsi/virtio-scsi.c      |   2 +-
 hw/virtio/virtio-crypto.c  |  49 ++++++++++---------
 hw/virtio/virtio.c         | 119 +++++++++++++++++++++++++++++++--------------
 include/hw/virtio/virtio.h |   1 +
 scripts/checkpatch.pl      |   4 +-
 8 files changed, 143 insertions(+), 99 deletions(-)

-- 
2.9.3


Re: [Qemu-devel] [PATCH v3 0/9] virtio: enhance virtio_error messages
Posted by Stefan Hajnoczi 6 years, 9 months ago
On Mon, Jul 17, 2017 at 10:11:43AM +0200, Ladi Prosek wrote:
> Output like "Virtqueue size exceeded" is not much useful in identifying the
> culprit. This series beefs up virtio_error to print the virtio device name
> and id, and introduces virtqueue_error which additionally includes the index
> of the virtqueue where the error occured.
> 
> Patches 1 to 3 lay the groundwork, patches 4 to 8 convert virtio devices to
> use virtqueue_error instead of virtio_error. Patch 9 adds virtio_error and
> virtqueue_error to the list of error funcs in checkpatch.pl.
> 
> v1->v2:
> * Modified virtio_error and added virtqueue_error (Stefan)
> * Now also printing device id (Stefan)
> * Went over all virtio_error call sites and converted them to virtqueue_error
>   as appropriate; added virtio device maintainers to cc
> 
> v2->v3:
> * Removed patch 1 (Stefan, Markus)
> * Split patch 3 into 2 (adds virtqueue_error) and 3 (makes virtio.c call it)
>   (Cornelia)
> * Added patch 9 to modify $qemu_error_funcs in checkpatch.pl (Greg)
> * s/includes queue index/includes the queue index/ in patch 3-9 commit
>   messages (Cornelia)
> * Fixed virtio_get_device_id to return empty string instead of NULL if the
>   device doesn't have an id (Stefan)
> * Simplified the change in virtio-crypto.c to use vcrypto->ctrl_vq instead
>   of propagating the vq pointer in function arguments (Cornelia, Gonglei)
> 
> Ladi Prosek (9):
>   virtio: enhance virtio_error messages
>   virtio: introduce virtqueue_error
>   virtio: use virtqueue_error for errors with queue context
>   virtio-9p: use virtqueue_error for errors with queue context
>   virtio-blk: use virtqueue_error for errors with queue context
>   virtio-net: use virtqueue_error for errors with queue context
>   virtio-scsi: use virtqueue_error for errors with queue context
>   virtio-crypto: use virtqueue_error for errors with queue context
>   checkpatch: add virtio_error and virtqueue_error to error funcs
> 
>  hw/9pfs/virtio-9p-device.c |  37 ++++++--------
>  hw/block/virtio-blk.c      |   6 +--
>  hw/net/virtio-net.c        |  24 ++++-----
>  hw/scsi/virtio-scsi.c      |   2 +-
>  hw/virtio/virtio-crypto.c  |  49 ++++++++++---------
>  hw/virtio/virtio.c         | 119 +++++++++++++++++++++++++++++++--------------
>  include/hw/virtio/virtio.h |   1 +
>  scripts/checkpatch.pl      |   4 +-
>  8 files changed, 143 insertions(+), 99 deletions(-)

Looks good.  QEMU is currently in freeze for the 2.10 release.  You may
need to resend so Michael Tsirkin can merge it after the release, or if
he maintainers a -next branch he could merge it right away.

Stefan
Re: [Qemu-devel] [PATCH v3 0/9] virtio: enhance virtio_error messages
Posted by Ladi Prosek 6 years, 7 months ago
On Fri, Jul 21, 2017 at 5:21 PM, Stefan Hajnoczi <stefanha@gmail.com> wrote:
> On Mon, Jul 17, 2017 at 10:11:43AM +0200, Ladi Prosek wrote:
>> Output like "Virtqueue size exceeded" is not much useful in identifying the
>> culprit. This series beefs up virtio_error to print the virtio device name
>> and id, and introduces virtqueue_error which additionally includes the index
>> of the virtqueue where the error occured.
>>
>> Patches 1 to 3 lay the groundwork, patches 4 to 8 convert virtio devices to
>> use virtqueue_error instead of virtio_error. Patch 9 adds virtio_error and
>> virtqueue_error to the list of error funcs in checkpatch.pl.
>>
>> v1->v2:
>> * Modified virtio_error and added virtqueue_error (Stefan)
>> * Now also printing device id (Stefan)
>> * Went over all virtio_error call sites and converted them to virtqueue_error
>>   as appropriate; added virtio device maintainers to cc
>>
>> v2->v3:
>> * Removed patch 1 (Stefan, Markus)
>> * Split patch 3 into 2 (adds virtqueue_error) and 3 (makes virtio.c call it)
>>   (Cornelia)
>> * Added patch 9 to modify $qemu_error_funcs in checkpatch.pl (Greg)
>> * s/includes queue index/includes the queue index/ in patch 3-9 commit
>>   messages (Cornelia)
>> * Fixed virtio_get_device_id to return empty string instead of NULL if the
>>   device doesn't have an id (Stefan)
>> * Simplified the change in virtio-crypto.c to use vcrypto->ctrl_vq instead
>>   of propagating the vq pointer in function arguments (Cornelia, Gonglei)
>>
>> Ladi Prosek (9):
>>   virtio: enhance virtio_error messages
>>   virtio: introduce virtqueue_error
>>   virtio: use virtqueue_error for errors with queue context
>>   virtio-9p: use virtqueue_error for errors with queue context
>>   virtio-blk: use virtqueue_error for errors with queue context
>>   virtio-net: use virtqueue_error for errors with queue context
>>   virtio-scsi: use virtqueue_error for errors with queue context
>>   virtio-crypto: use virtqueue_error for errors with queue context
>>   checkpatch: add virtio_error and virtqueue_error to error funcs
>>
>>  hw/9pfs/virtio-9p-device.c |  37 ++++++--------
>>  hw/block/virtio-blk.c      |   6 +--
>>  hw/net/virtio-net.c        |  24 ++++-----
>>  hw/scsi/virtio-scsi.c      |   2 +-
>>  hw/virtio/virtio-crypto.c  |  49 ++++++++++---------
>>  hw/virtio/virtio.c         | 119 +++++++++++++++++++++++++++++++--------------
>>  include/hw/virtio/virtio.h |   1 +
>>  scripts/checkpatch.pl      |   4 +-
>>  8 files changed, 143 insertions(+), 99 deletions(-)
>
> Looks good.  QEMU is currently in freeze for the 2.10 release.  You may
> need to resend so Michael Tsirkin can merge it after the release, or if
> he maintainers a -next branch he could merge it right away.

Should I resend the series, Michael?

Thanks,
Ladi

Re: [Qemu-devel] [PATCH v3 0/9] virtio: enhance virtio_error messages
Posted by Ladi Prosek 6 years, 6 months ago
On Thu, Sep 14, 2017 at 7:59 AM, Ladi Prosek <lprosek@redhat.com> wrote:
> On Fri, Jul 21, 2017 at 5:21 PM, Stefan Hajnoczi <stefanha@gmail.com> wrote:
>> On Mon, Jul 17, 2017 at 10:11:43AM +0200, Ladi Prosek wrote:
>>> Output like "Virtqueue size exceeded" is not much useful in identifying the
>>> culprit. This series beefs up virtio_error to print the virtio device name
>>> and id, and introduces virtqueue_error which additionally includes the index
>>> of the virtqueue where the error occured.
>>>
>>> Patches 1 to 3 lay the groundwork, patches 4 to 8 convert virtio devices to
>>> use virtqueue_error instead of virtio_error. Patch 9 adds virtio_error and
>>> virtqueue_error to the list of error funcs in checkpatch.pl.
>>>
>>> v1->v2:
>>> * Modified virtio_error and added virtqueue_error (Stefan)
>>> * Now also printing device id (Stefan)
>>> * Went over all virtio_error call sites and converted them to virtqueue_error
>>>   as appropriate; added virtio device maintainers to cc
>>>
>>> v2->v3:
>>> * Removed patch 1 (Stefan, Markus)
>>> * Split patch 3 into 2 (adds virtqueue_error) and 3 (makes virtio.c call it)
>>>   (Cornelia)
>>> * Added patch 9 to modify $qemu_error_funcs in checkpatch.pl (Greg)
>>> * s/includes queue index/includes the queue index/ in patch 3-9 commit
>>>   messages (Cornelia)
>>> * Fixed virtio_get_device_id to return empty string instead of NULL if the
>>>   device doesn't have an id (Stefan)
>>> * Simplified the change in virtio-crypto.c to use vcrypto->ctrl_vq instead
>>>   of propagating the vq pointer in function arguments (Cornelia, Gonglei)
>>>
>>> Ladi Prosek (9):
>>>   virtio: enhance virtio_error messages
>>>   virtio: introduce virtqueue_error
>>>   virtio: use virtqueue_error for errors with queue context
>>>   virtio-9p: use virtqueue_error for errors with queue context
>>>   virtio-blk: use virtqueue_error for errors with queue context
>>>   virtio-net: use virtqueue_error for errors with queue context
>>>   virtio-scsi: use virtqueue_error for errors with queue context
>>>   virtio-crypto: use virtqueue_error for errors with queue context
>>>   checkpatch: add virtio_error and virtqueue_error to error funcs
>>>
>>>  hw/9pfs/virtio-9p-device.c |  37 ++++++--------
>>>  hw/block/virtio-blk.c      |   6 +--
>>>  hw/net/virtio-net.c        |  24 ++++-----
>>>  hw/scsi/virtio-scsi.c      |   2 +-
>>>  hw/virtio/virtio-crypto.c  |  49 ++++++++++---------
>>>  hw/virtio/virtio.c         | 119 +++++++++++++++++++++++++++++++--------------
>>>  include/hw/virtio/virtio.h |   1 +
>>>  scripts/checkpatch.pl      |   4 +-
>>>  8 files changed, 143 insertions(+), 99 deletions(-)
>>
>> Looks good.  QEMU is currently in freeze for the 2.10 release.  You may
>> need to resend so Michael Tsirkin can merge it after the release, or if
>> he maintainers a -next branch he could merge it right away.
>
> Should I resend the series, Michael?

Ping. The series applies cleanly on current master.