From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:35664) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gyDa1-0004M3-8C for qemu-devel@nongnu.org; Mon, 25 Feb 2019 05:33:50 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gyDZx-0007i0-IT for qemu-devel@nongnu.org; Mon, 25 Feb 2019 05:33:47 -0500 Received: from mail-wm1-x341.google.com ([2a00:1450:4864:20::341]:51235) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gyDZx-0007Ih-0V for qemu-devel@nongnu.org; Mon, 25 Feb 2019 05:33:45 -0500 Received: by mail-wm1-x341.google.com with SMTP id n19so7484063wmi.1 for ; Mon, 25 Feb 2019 02:33:38 -0800 (PST) MIME-Version: 1.0 References: <28e6b4ed-9afd-3a79-6267-86c7385c23ce@redhat.com> <20190223165523.1d674224@ncopa-desktop.copa.dup.pw> In-Reply-To: From: Stefan Hajnoczi Date: Mon, 25 Feb 2019 10:33:25 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [Qemu-block] Guest unresponsive after Virtqueue size exceeded error List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Natanael Copa Cc: =?UTF-8?Q?Fernando_Casas_Sch=C3=B6ssow?= , Paolo Bonzini , Richard Henderson , qemu-devel On Mon, Feb 25, 2019 at 10:30 AM Stefan Hajnoczi wrote= : > On Sat, Feb 23, 2019 at 3:55 PM Natanael Copa wro= te: > > On Fri, 22 Feb 2019 14:04:20 +0000 > > Stefan Hajnoczi wrote: > > > On Fri, Feb 22, 2019 at 12:57 PM Fernando Casas Sch=C3=B6ssow > > > wrote: > > I tried to find this section. How do you get the assembly listing of > > relevant secion? I tried to do "disas virtio_pop" from > > `gdb /usr/bin/qemu-system-x86_64` from the binary in alpine edge. I > > could find 2 memcpy but none of them look like a 16 bit operation after= : > > > > 0x00000000004551f1 <+353>: mov 0x10(%rsp),%rdi > > 0x00000000004551f6 <+358>: mov $0x10,%edx > > 0x00000000004551fb <+363>: callq 0x3879e0 > > 0x0000000000455200 <+368>: movzwl 0x5c(%rsp),%eax > > 0x0000000000455205 <+373>: test $0x4,%al > > 0x0000000000455207 <+375>: je 0x4552aa > > > > .... > > > > 0x0000000000455291 <+513>: mov 0x10(%rsp),%rdi > > 0x0000000000455296 <+518>: mov $0x10,%edx > > 0x000000000045529b <+523>: callq 0x3879e0 > > 0x00000000004552a0 <+528>: mov %rbp,0x20(%rsp) > > 0x00000000004552a5 <+533>: movzwl 0x5c(%rsp),%eax > > 0x00000000004552aa <+538>: lea 0x20e0(%rsp),%rdi > > 0x00000000004552b2 <+546>: xor %r11d,%r11d > > 0x00000000004552b5 <+549>: mov %r15,0x38(%rsp) > > Here is the beginning of the function: This was built from the docker alpine image: REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/alpine latest caf27325b298 3 weeks ago 5.52 MB aports git commit: be41538f0061b406a374564a0043a363efcb0293 gcc (Alpine 8.2.0) 8.2.0 Stefan