qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PULL 00/10] Net patches


From: Laurent Vivier
Subject: Re: [PULL 00/10] Net patches
Date: Wed, 15 Feb 2023 15:39:46 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.0

On 2/14/23 15:30, Peter Maydell wrote:
On Tue, 14 Feb 2023 at 14:29, Peter Maydell <peter.maydell@linaro.org> wrote:

On Tue, 14 Feb 2023 at 06:11, Jason Wang <jasowang@redhat.com> wrote:

The following changes since commit f670b3eec7f5d1ed8c4573ef244e7b8c6b32001b:

   Merge tag 'migration-20230213-pull-request' of 
https://gitlab.com/juan.quintela/qemu into staging (2023-02-13 11:54:05 +0000)

are available in the git repository at:

   https://github.com/jasowang/qemu.git tags/net-pull-request

for you to fetch changes up to e4b953a26da11d214f91516cb9b0542eab5afaa0:

   vdpa: fix VHOST_BACKEND_F_IOTLB_ASID flag check (2023-02-14 14:00:30 +0800)

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

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

xlnx-can-test fails on multiple CI hosts:

https://gitlab.com/qemu-project/qemu/-/jobs/3767000949
https://gitlab.com/qemu-project/qemu/-/jobs/3767000974
https://gitlab.com/qemu-project/qemu/-/jobs/3767000994
https://gitlab.com/qemu-project/qemu/-/jobs/3767000970
https://gitlab.com/qemu-project/qemu/-/jobs/3767001009
https://gitlab.com/qemu-project/qemu/-/jobs/3767000851
https://gitlab.com/qemu-project/qemu/-/jobs/3767000849

more specifically, it asserts:

ERROR:../tests/qtest/xlnx-can-test.c:96:read_data: assertion failed
(int_status == ISR_RXOK): (0 == 16)

It seems the problem is with the loopback test (net/can/can_loopback).

as fifo32_num_used() and fifo32_num_free() return the number of uint32_t slots, the patch should be fixed with (remove the "4 *"):

diff --git a/hw/net/can/xlnx-zynqmp-can.c b/hw/net/can/xlnx-zynqmp-can.c
index 55d3221b4980..8a56734b3ca2 100644
--- a/hw/net/can/xlnx-zynqmp-can.c
+++ b/hw/net/can/xlnx-zynqmp-can.c
@@ -451,7 +451,7 @@ static void transfer_fifo(XlnxZynqMPCANState *s, Fifo32 
*fifo)
     }

     while (!fifo32_is_empty(fifo)) {
-        if (fifo32_num_used(fifo) < (4 * CAN_FRAME_SIZE)) {
+        if (fifo32_num_used(fifo) < CAN_FRAME_SIZE) {
             g_autofree char *path = object_get_canonical_path(OBJECT(s));
             qemu_log_mask(LOG_GUEST_ERROR, "%s: data left in the fifo is not"
                           " enough for transfer.\n", path);
@@ -470,7 +470,7 @@ static void transfer_fifo(XlnxZynqMPCANState *s, Fifo32 
*fifo)
              * that it transmits.
              */
             if (fifo32_is_full(&s->rx_fifo) ||
-                    (fifo32_num_free(&s->rx_fifo) < (4 * CAN_FRAME_SIZE))) {
+                    (fifo32_num_free(&s->rx_fifo) < CAN_FRAME_SIZE)) {
                 ARRAY_FIELD_DP32(s->regs, INTERRUPT_STATUS_REGISTER, RXOFLW, 
1);
             } else {
                 for (i = 0; i < CAN_FRAME_SIZE; i++) {


Thanks,
Laurent




reply via email to

[Prev in Thread] Current Thread [Next in Thread]