All of lore.kernel.org
 help / color / mirror / Atom feed
From: Cheng Jiang <1863096@bugs.launchpad.net>
To: qemu-devel@nongnu.org
Subject: [Bug 1863096] [NEW] vhost-user multi-queues interrupt failed when Qemu reconnection happens
Date: Thu, 13 Feb 2020 12:42:35 -0000	[thread overview]
Message-ID: <158159775529.28653.1884388369388986202.malonedeb@chaenomeles.canonical.com> (raw)

Public bug reported:

After upgrade qemu to v4.2.0, vhost-user multi-queues interrupt failed
with event idx interrupt mode when reconnection happens.

Test Environment:
DPDK version: DPDK v19.11
Other software versions: qemu 4.2.0.
OS: Linux 4.15.0-20-generic
Compiler: gcc (Ubuntu 7.3.0-16ubuntu3) 7.3.0
Hardware platform: Purley.

The reproduce step is:
1. Launch l3fwd-power example app with client mode::

    ./l3fwd-power -l 1-16 \
    -n 4 --socket-mem 1024,1024 --legacy-mem --no-pci\
    --log-level=9 \
    --vdev 'eth_vhost0,iface=/vhost-net0,queues=16,client=1' \
    -- -p 0x1 \
    --parse-ptype 1 \
    --config "(0,0,1),(0,1,2),(0,2,3),(0,3,4),(0,4,5),(0,5,6),(0,6,7),(0,7,8),(0,8,9),(0,9,10),(0,10,11),(0,11,12),(0,12,13),(0,13,14),(0,14,15),(0,15,16)"

2. Launch VM1 with server mode:

3. Relauch l3fwd-power sample to for reconnection:

    ./l3fwd-power -l 1-16 \
    -n 4 --socket-mem 1024,1024 --legacy-mem --no-pci\
    --log-level=9 \
    --vdev 'eth_vhost0,iface=/vhost-net0,queues=16,client=1' \
    -- -p 0x1 \
    --parse-ptype 1 \
    --config "(0,0,1),(0,1,2),(0,2,3),(0,3,4),(0,4,5),(0,5,6),(0,6,7),(0,7,8),(0,8,9),(0,9,10),(0,10,11),(0,11,12),(0,12,13),(0,13,14),(0,14,15),(0,15,16)"

4. Set vitio-net with 16 quques and give vitio-net ip address:

    ethtool -L [ens3] combined 16    # [ens3] is the name of virtio-net
    ifconfig [ens3] 1.1.1.1

5. Send packets with different IPs from virtio-net, notice to bind each
vcpu to different send packets process::

    taskset -c 0 ping 1.1.1.2
    taskset -c 1 ping 1.1.1.3
    taskset -c 2 ping 1.1.1.4
    taskset -c 3 ping 1.1.1.5
    taskset -c 4 ping 1.1.1.6
    taskset -c 5 ping 1.1.1.7
    taskset -c 6 ping 1.1.1.8
    taskset -c 7 ping 1.1.1.9
    taskset -c 8 ping 1.1.1.2
    taskset -c 9 ping 1.1.1.2
    taskset -c 10 ping 1.1.1.2
    taskset -c 11 ping 1.1.1.2
    taskset -c 12 ping 1.1.1.2
    taskset -c 13 ping 1.1.1.2
    taskset -c 14 ping 1.1.1.2
    taskset -c 15 ping 1.1.1.2

If everything ok, then we can see the result such as following:

    L3FWD_POWER: lcore 0 is waked up from rx interrupt on port 0 queue 0
    ...
    ...
    L3FWD_POWER: lcore 15 is waked up from rx interrupt on port 0 queue 15

But we can't see the log above because of the bug.

** Affects: qemu
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1863096

Title:
  vhost-user multi-queues interrupt failed when Qemu reconnection
  happens

Status in QEMU:
  New

Bug description:
  After upgrade qemu to v4.2.0, vhost-user multi-queues interrupt failed
  with event idx interrupt mode when reconnection happens.

  Test Environment:
  DPDK version: DPDK v19.11
  Other software versions: qemu 4.2.0.
  OS: Linux 4.15.0-20-generic
  Compiler: gcc (Ubuntu 7.3.0-16ubuntu3) 7.3.0
  Hardware platform: Purley.

  The reproduce step is:
  1. Launch l3fwd-power example app with client mode::

      ./l3fwd-power -l 1-16 \
      -n 4 --socket-mem 1024,1024 --legacy-mem --no-pci\
      --log-level=9 \
      --vdev 'eth_vhost0,iface=/vhost-net0,queues=16,client=1' \
      -- -p 0x1 \
      --parse-ptype 1 \
      --config "(0,0,1),(0,1,2),(0,2,3),(0,3,4),(0,4,5),(0,5,6),(0,6,7),(0,7,8),(0,8,9),(0,9,10),(0,10,11),(0,11,12),(0,12,13),(0,13,14),(0,14,15),(0,15,16)"

  2. Launch VM1 with server mode:

  3. Relauch l3fwd-power sample to for reconnection:

      ./l3fwd-power -l 1-16 \
      -n 4 --socket-mem 1024,1024 --legacy-mem --no-pci\
      --log-level=9 \
      --vdev 'eth_vhost0,iface=/vhost-net0,queues=16,client=1' \
      -- -p 0x1 \
      --parse-ptype 1 \
      --config "(0,0,1),(0,1,2),(0,2,3),(0,3,4),(0,4,5),(0,5,6),(0,6,7),(0,7,8),(0,8,9),(0,9,10),(0,10,11),(0,11,12),(0,12,13),(0,13,14),(0,14,15),(0,15,16)"

  4. Set vitio-net with 16 quques and give vitio-net ip address:

      ethtool -L [ens3] combined 16    # [ens3] is the name of virtio-net
      ifconfig [ens3] 1.1.1.1

  5. Send packets with different IPs from virtio-net, notice to bind
  each vcpu to different send packets process::

      taskset -c 0 ping 1.1.1.2
      taskset -c 1 ping 1.1.1.3
      taskset -c 2 ping 1.1.1.4
      taskset -c 3 ping 1.1.1.5
      taskset -c 4 ping 1.1.1.6
      taskset -c 5 ping 1.1.1.7
      taskset -c 6 ping 1.1.1.8
      taskset -c 7 ping 1.1.1.9
      taskset -c 8 ping 1.1.1.2
      taskset -c 9 ping 1.1.1.2
      taskset -c 10 ping 1.1.1.2
      taskset -c 11 ping 1.1.1.2
      taskset -c 12 ping 1.1.1.2
      taskset -c 13 ping 1.1.1.2
      taskset -c 14 ping 1.1.1.2
      taskset -c 15 ping 1.1.1.2

  If everything ok, then we can see the result such as following:

      L3FWD_POWER: lcore 0 is waked up from rx interrupt on port 0 queue 0
      ...
      ...
      L3FWD_POWER: lcore 15 is waked up from rx interrupt on port 0 queue 15

  But we can't see the log above because of the bug.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1863096/+subscriptions


             reply	other threads:[~2020-02-13 12:51 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-13 12:42 Cheng Jiang [this message]
2021-05-05 15:15 ` [Bug 1863096] Re: vhost-user multi-queues interrupt failed when Qemu reconnection happens Thomas Huth
2021-07-05  4:17 ` Launchpad Bug Tracker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=158159775529.28653.1884388369388986202.malonedeb@chaenomeles.canonical.com \
    --to=1863096@bugs.launchpad.net \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.