[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates
|
From: |
Klaus Jensen |
|
Subject: |
Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates |
|
Date: |
Tue, 26 Jul 2022 12:09:14 +0200 |
On Jul 26 11:19, Klaus Jensen wrote:
> On Jul 26 15:55, Jinhao Fan wrote:
> > at 3:41 PM, Klaus Jensen <its@irrelevant.dk> wrote:
> >
> > > On Jul 26 15:35, Jinhao Fan wrote:
> > >> at 4:55 AM, Klaus Jensen <its@irrelevant.dk> wrote:
> > >>
> > >>> We have a regression following this patch that we need to address.
> > >>>
> > >>> With this patch, issuing a reset on the device (`nvme reset /dev/nvme0`
> > >>> will do the trick) causes QEMU to hog my host cpu at 100%.
> > >>>
> > >>> I'm still not sure what causes this. The trace output is a bit
> > >>> inconclusive still.
> > >>>
> > >>> I'll keep looking into it.
> > >>
> > >> I cannot reproduce this bug. I just start the VM and used `nvme reset
> > >> /dev/nvme0`. Did you do anything before the reset?
> > >
> > > Interesting and thanks for checking! Looks like a kernel issue then!
> > >
> > > I remember that I'm using a dev branch (nvme-v5.20) of the kernel and
> > > reverting to a stock OS kernel did not produce the bug.
> >
> > I’m using 5.19-rc4 which I pulled from linux-next on Jul 1. It works ok on
> > my machine.
>
> Interesting. I can reproduce on 5.19-rc4 from torvalds tree. Can you
> drop your qemu command line here?
>
> This is mine.
>
> /home/kbj/work/src/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
> -nodefaults \
> -display "none" \
> -machine "q35,accel=kvm,kernel-irqchip=split" \
> -cpu "host" \
> -smp "4" \
> -m "8G" \
> -device "intel-iommu" \
> -netdev "user,id=net0,hostfwd=tcp::2222-:22" \
> -device "virtio-net-pci,netdev=net0" \
> -device "virtio-rng-pci" \
> -drive
> "id=boot,file=/home/kbj/work/vol/machines/img/nvme.qcow2,format=qcow2,if=virtio,discard=unmap,media=disk,read-only=no"
> \
> -device "pcie-root-port,id=pcie_root_port1,chassis=1,slot=0" \
> -device "nvme,id=nvme0,serial=deadbeef,bus=pcie_root_port1,mdts=7" \
> -drive "id=null,if=none,file=null-co://,file.read-zeroes=on,format=raw" \
> -device
> "nvme-ns,id=nvm-1,drive=nvm-1,bus=nvme0,nsid=1,drive=null,logical_block_size=4096,physical_block_size=4096"
> \
> -pidfile "/home/kbj/work/vol/machines/run/null/pidfile" \
> -kernel "/home/kbj/work/src/kernel/linux/arch/x86_64/boot/bzImage" \
> -append "root=/dev/vda1 console=ttyS0,115200 audit=0 intel_iommu=on" \
> -virtfs
> "local,path=/home/kbj/work/src/kernel/linux,security_model=none,readonly=on,mount_tag=kernel_dir"
> \
> -serial "mon:stdio" \
> -d "guest_errors" \
> -D "/home/kbj/work/vol/machines/log/null/qemu.log" \
> -trace "pci_nvme*"
Alright. It was *some* config issue with my kernel. Reverted to a
defconfig + requirements and the issue went away.
I'll try to track down what happended, but doesnt look like qemu is at
fault here.
signature.asc
Description: PGP signature
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, (continued)
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Jinhao Fan, 2022/07/08
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Klaus Jensen, 2022/07/25
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Jinhao Fan, 2022/07/26
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Klaus Jensen, 2022/07/26
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Jinhao Fan, 2022/07/26
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Klaus Jensen, 2022/07/26
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates,
Klaus Jensen <=
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Klaus Jensen, 2022/07/26
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Klaus Jensen, 2022/07/26
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Klaus Jensen, 2022/07/26
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Klaus Jensen, 2022/07/27
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Jinhao Fan, 2022/07/27
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Klaus Jensen, 2022/07/27
- Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Jinhao Fan, 2022/07/27
Re: [PATCH v4] hw/nvme: Use ioeventfd to handle doorbell updates, Stefan Hajnoczi, 2022/07/26