Bug 1934134

Summary: ACPI table limits warning when booting guest with 512 VCPUs
Product: Red Hat Enterprise Linux 9 Reporter: Yanhui Ma <yama>
Component: qemu-kvmAssignee: Ani Sinha <anisinha>
qemu-kvm sub component: Devices QA Contact: Yiqian Wei <yiwei>
Status: CLOSED ERRATA Docs Contact:
Severity: medium    
Priority: medium CC: ailan, anisinha, chayang, coli, imammedo, jinzhao, juzhang, kraxel, mrezanin, nanliu, nilal, nkoenig, pmendezh, smitterl, virt-maint, xuwei, yiwei, yuhuang
Version: unspecifiedKeywords: Reopened, Triaged
Target Milestone: rc   
Target Release: 9.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-8.0.0-2.el9 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-11-07 08:26:38 UTC Type: Feature Request
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version: 6.2
Embargoed:
Bug Depends On:    
Bug Blocks: 1788991, 1948358    

Description Yanhui Ma 2021-03-02 15:13:37 UTC
Description of problem:

When booting guest with 512 VCPUs on host with 448 CPUs, there are ACPI table limits warnings.

Version-Release number of selected component (if applicable):

qemu-kvm-5.2.0-5.module+el8.4.0+9775+0937c167.x86_64
kernel-4.18.0-280.el8.dt3.x86_64

How reproducible:

100%
Steps to Reproduce:
1.boot guest with 512 VCPUs on hosts only with 448 cpus:

/usr/libexec/qemu-kvm \
    -name 'avocado-vt-vm1'  \
    -sandbox on  \
    -machine q35,kernel-irqchip=split \
    -device pcie-root-port,id=pcie-root-port-0,multifunction=on,bus=pcie.0,addr=0x1,chassis=1 \
    -device pcie-pci-bridge,id=pcie-pci-bridge-0,addr=0x0,bus=pcie-root-port-0  \
    -nodefaults \
    -device VGA,bus=pcie.0,addr=0x2 \
    -m 128G  \
    -smp 512  \
    -device intel-iommu,intremap=on,eim=on \
    -cpu 'IvyBridge',+kvm_pv_unhalt \
    -chardev socket,nowait,path=/var/tmp/monitor-qmpmonitor1-20201130-083617-UdoMuUZg,server,id=qmp_id_qmpmonitor1  \
    -mon chardev=qmp_id_qmpmonitor1,mode=control \
    -chardev socket,nowait,path=/var/tmp/monitor-catch_monitor-20201130-083617-UdoMuUZg,server,id=qmp_id_catch_monitor  \
    -mon chardev=qmp_id_catch_monitor,mode=control \
    -device pvpanic,ioport=0x505,id=idUR0xIV \
    -chardev socket,nowait,path=/var/tmp/serial-serial0-20201130-083617-UdoMuUZg,server,id=chardev_serial0 \
    -device isa-serial,id=serial0,chardev=chardev_serial0  \
    -chardev socket,id=seabioslog_id_20201130-083617-UdoMuUZg,path=/var/tmp/seabios-20201130-083617-UdoMuUZg,server,nowait \
    -device isa-debugcon,chardev=seabioslog_id_20201130-083617-UdoMuUZg,iobase=0x402 \
    -device pcie-root-port,id=pcie-root-port-1,port=0x1,addr=0x1.0x1,bus=pcie.0,chassis=2 \
    -device qemu-xhci,id=usb1,bus=pcie-root-port-1,addr=0x0 \
    -device usb-tablet,id=usb-tablet1,bus=usb1.0,port=1 \
    -device pcie-root-port,id=pcie-root-port-2,port=0x2,addr=0x1.0x2,bus=pcie.0,chassis=3 \
    -object iothread,id=iothread0 \
    -device virtio-scsi-pci,id=virtio_scsi_pci0,iothread=iothread0,bus=pcie-root-port-2,addr=0x0 \
    -blockdev node-name=file_image1,driver=file,auto-read-only=on,discard=unmap,aio=threads,filename=/home/kvm_autotest_root/images/rhel840-64-virtio-scsi.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_image1,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_image1 \
    -device scsi-hd,id=image1,drive=drive_image1,write-cache=on \
    -device pcie-root-port,id=pcie-root-port-3,port=0x3,addr=0x1.0x3,bus=pcie.0,chassis=4 \
    -device virtio-net-pci,mac=9a:1e:ad:8c:d6:8d,id=idXcapzE,netdev=idDDACLf,bus=pcie-root-port-3,addr=0x0  \
    -netdev tap,id=idDDACLf,vhost=on  \
    -vnc :0  \
    -rtc base=utc,clock=host,driftfix=slew  \
    -boot menu=off,order=cdn,once=c,strict=off \
    -enable-kvm -monitor stdio \
    -device pcie-root-port,id=pcie_extra_root_port_0,multifunction=on,bus=pcie.0,addr=0x3,chassis=5
2.
3.

Actual results:

QEMU 5.2.0 monitor - type 'help' for more information
(qemu) qemu-kvm: warning: ACPI table size 65958 exceeds 65536 bytes, migration may not work
Try removing CPUs, NUMA nodes, memory slots or PCI bridges.qemu-kvm: warning: ACPI table size 66074 exceeds 65536 bytes, migration may not work
Try removing CPUs, NUMA nodes, memory slots or PCI bridges.

Logging in guest and check cpu info:
# grep "processor" /proc/cpuinfo | wc -l
512


If I use pc-q35-rhel8.3.0, the warnings still exist.

Expected results:

No warnings
Additional info:

Comment 2 Eduardo Habkost 2021-03-03 13:11:59 UTC
Did this warning already exist on 8.4?  I'm assuming it is not a regression, but I'd like to make sure.

Comment 3 Yanhui Ma 2021-03-03 13:26:37 UTC
(In reply to Eduardo Habkost from comment #2)
> Did this warning already exist on 8.4?  I'm assuming it is not a regression,
> but I'd like to make sure.

You mean rhel8.3? I will try it on 8.3?

Comment 4 Eduardo Habkost 2021-03-03 13:43:11 UTC
(In reply to Yanhui Ma from comment #3)
> (In reply to Eduardo Habkost from comment #2)
> > Did this warning already exist on 8.4?  I'm assuming it is not a regression,
> > but I'd like to make sure.
> 
> You mean rhel8.3? I will try it on 8.3?

Sorry, yes, I meant 8.3.

Comment 5 Yanhui Ma 2021-03-03 14:51:19 UTC
(In reply to Eduardo Habkost from comment #4)
> (In reply to Yanhui Ma from comment #3)
> > (In reply to Eduardo Habkost from comment #2)
> > > Did this warning already exist on 8.4?  I'm assuming it is not a regression,
> > > but I'd like to make sure.
> > 
> > You mean rhel8.3? I will try it on 8.3?
> 
> Sorry, yes, I meant 8.3.

Changing to qemu-kvm-5.1.0-20.module+el8.3.1+9918+230f5c26.x86_64, the warning also exists.

Comment 6 Eduardo Habkost 2021-03-03 15:00:25 UTC
Thank you.  We'll investigate and try to address this in 8.5.

Comment 7 Brian Payton 2021-03-03 15:37:38 UTC
Hello Eduardo,

      The RHEL 8.4 testing first shows the ACPI error when we increase the 8.3 TB 255 vcpu vm to 512 vcpus.  Referring back to the same test for 8.3 shows the vm fails to start with no message.  I would consider the message an improvement.

      Any comments?

Regards,

Brian

Comment 8 Igor Mammedov 2021-03-03 22:18:21 UTC
warning was there for a long time, it was added around v2.1 time when we bumped ACPI tables size
first to 64K and then to 128K. Later on at v2.3 time we made ACPI table blobs, resizable
  (a1666142db6233 acpi-build: make ROMs RAM blocks resizeable)
with upper limit 2Mb.
So all practical warning doesn't apply to  machine versions 2.3 and newer.

Comment 11 Igor Mammedov 2021-08-09 09:59:17 UTC
It's too late for 8.5, moving it to 8.6.

Comment 12 John Ferlan 2021-09-09 12:57:09 UTC
Bulk update: Move RHEL-AV bugs to RHEL9. If necessary to resolve in RHEL8, then clone to the current RHEL8 release.

Comment 17 Nitesh Narayan Lal 2022-08-22 16:55:27 UTC
Moving this to 9.2 and updating the stale date.

Comment 18 John Ferlan 2022-10-16 12:48:49 UTC
Let's plan this for inclusion in 9.2 and if it doesn't make it, then close wontfix.

Not clear to me whether Julia's upstream: https://lists.nongnu.org/archive/html/qemu-devel/2022-10/msg01640.html series resolves this.

Comment 19 Igor Mammedov 2022-11-21 16:49:26 UTC
(In reply to John Ferlan from comment #18)
> Let's plan this for inclusion in 9.2 and if it doesn't make it, then close
> wontfix.
> 
> Not clear to me whether Julia's upstream:
> https://lists.nongnu.org/archive/html/qemu-devel/2022-10/msg01640.html
> series resolves this.

Nope, above is SMBIOS fix where as 'Warning' comes from ACPI.
See comment 8, 
we cannot just remove it until 2.2 machine type upstream exists.
for newer machine types the warning is not relevant.

Comment 20 John Ferlan 2023-02-13 20:59:36 UTC
This aging bug was planned to be resolved within the 9.2.0 release timeframe; however, since it has not been addressed by ITM 24, we are closing as deferred. 

If this bug is reopened, there must be a downstream commit ready to be posted for merge or the bug must be part of some rebase. When reopening, add the release ITR and appropriate DTM.

Comment 26 Ani Sinha 2023-03-20 15:21:12 UTC
Posted an upstream patch here: https://lists.gnu.org/archive/html/qemu-devel/2023-03/msg05231.html

Comment 32 Yanan Fu 2023-05-09 11:35:41 UTC
QE bot(pre verify): Set 'Verified:Tested,SanityOnly' as gating/tier1 test pass.

Comment 39 errata-xmlrpc 2023-11-07 08:26:38 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Moderate: qemu-kvm security, bug fix, and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2023:6368