Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1523166 - [Q35] guest kernel panic when boot with 9 nics
Summary: [Q35] guest kernel panic when boot with 9 nics
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: seabios
Version: 7.5
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: rc
: ---
Assignee: Marcel Apfelbaum
QA Contact: FuXiangChun
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-12-07 10:40 UTC by jingzhao
Modified: 2018-04-10 14:28 UTC (History)
11 users (show)

Fixed In Version: seabios-1.11.0-2.el7
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1584741 (view as bug list)
Environment:
Last Closed: 2018-04-10 14:26:48 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1536147 0 medium CLOSED [Q35] SeaBIOS computes wrongly the IO hints vendor capability for bus numbers reservation 2022-05-16 11:32:56 UTC
Red Hat Product Errata RHBA-2018:0814 0 None None None 2018-04-10 14:28:18 UTC

Internal Links: 1536147

Description jingzhao 2017-12-07 10:40:28 UTC
Description of problem:
guest kernel panic when boot with 9 e1000 nics that with io-server=0 

Version-Release number of selected component (if applicable):
[root@localhost test]# uname -r
3.10.0-807.el7.x86_64
[root@localhost test]# rpm -qa |grep qemu-kvm-rhev
qemu-kvm-rhev-debuginfo-2.10.0-11.el7.x86_64
qemu-kvm-rhev-2.10.0-11.el7.x86_64
[root@localhost test]# rpm -qa |grep seabios
seabios-bin-1.11.0-1.el7.noarch
seabios-1.11.0-1.el7.x86_64

How reproducible:
3/3

Steps to Reproduce:
1. Boot up 9 e1000 nics with [1]
2. Check guest status


Actual results:
guest kernel panic

[    0.842671] BUG: unable to handle kernel paging request at fffffffd49d872f0
[    0.843405] IP: [<ffffffffb2ce168d>] cpuacct_charge+0x2d/0x50
[    0.843918] PGD 53e11067 PUD 0 
[    0.844281] Thread overran stack, or stack corrupted
[    0.844690] Oops: 0000 [#1] SMP 
[    0.845058] Modules linked in:
[    0.845369] CPU: 3 PID: 1 Comm: swapper/0 Not tainted 3.10.0-768.el7.x86_64 #1
[    0.845948] Hardware name: Red Hat KVM, BIOS 1.11.0-1.el7 04/01/2014
[    0.847178] task: ffff938f7c7b8000 ti: ffff938f7c7ac000 task.ti: ffff938f7c7ac000
[    0.847790] RIP: 0010:[<ffffffffb2ce168d>]  [<ffffffffb2ce168d>] cpuacct_charge+0x2d/0x50
[    0.848583] RSP: 0000:ffff938f7fd83e40  EFLAGS: 00010046
[    0.849063] RAX: 000000000000fba8 RBX: ffff938f7c7b8068 RCX: ffffffffb2c8b14a
[    0.849689] RDX: ffffffffb38555c0 RSI: 0000000000114ef4 RDI: ffff938f7c7b8000
[    0.850288] RBP: ffff938f7fd83e40 R08: 0000000000000400 R09: 0000000000000400
[    0.850859] R10: 0000000000000004 R11: 0000000000000005 R12: 0000000000114ef4
[    0.851433] R13: ffff938f7fd96e00 R14: ffff938f7c7b8000 R15: 0000000000000000
[    0.852494] FS:  0000000000000000(0000) GS:ffff938f7fd80000(0000) knlGS:0000000000000000
[    0.853238] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[    0.853706] CR2: fffffffd49d872f0 CR3: 0000000053e0e000 CR4: 00000000000006e0
[    0.854282] Call Trace:
[    0.854505]  <IRQ> 
[    0.854691]  [<ffffffffb2cd06b4>] update_curr+0x104/0x190
[    0.855734]  [<ffffffffb2cd1bbd>] task_tick_fair+0x2bd/0x660
[    0.856446]  [<ffffffffb2c347a9>] ? sched_clock+0x9/0x10
[    0.857139]  [<ffffffffb2cca535>] ? sched_clock_cpu+0x85/0xc0
[    0.857855]  [<ffffffffb2cc5c17>] scheduler_tick+0xc7/0x150
[    0.858600]  [<ffffffffb2c9d085>] update_process_times+0x65/0x80
[    0.859380]  [<ffffffffb2cf438b>] tick_periodic+0x2b/0x90
[    0.860119]  [<ffffffffb2cf4411>] tick_handle_periodic+0x21/0x80
[    0.860900]  [<ffffffffb2c55195>] local_apic_timer_interrupt+0x35/0x60
[    0.861741]  [<ffffffffb32dae7d>] smp_apic_timer_interrupt+0x3d/0x50
[    0.862566]  [<ffffffffb32d935d>] apic_timer_interrupt+0x6d/0x80
[    0.863335]  <EOI> 
[    0.863522]  [<ffffffffb32cee55>] ? _raw_spin_unlock_irqrestore+0x15/0x20
[    0.864753]  [<ffffffffb2f6db26>] pci_bus_write_config_word+0x66/0x80
[    0.865568]  [<ffffffffb2f725a5>] pci_scan_bridge+0x2b5/0x6a0
[    0.866330]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.867150]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.867912]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.868674]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.869488]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.870267]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.871021]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.871833]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.872614]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.873364]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.874193]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.874958]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.875707]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.876527]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.877302]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.878084]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.878891]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.879668]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.880418]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.881244]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.882645]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.883367]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.884142]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.884831]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.885572]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.886369]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.887147]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.887907]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.888714]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.889507]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.890262]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.891090]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.891854]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.892573]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.893334]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.894066]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.894784]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.895586]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.896360]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.897125]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.897945]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.898706]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.899450]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.900236]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.901012]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.901770]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.902598]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.903351]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.904115]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.904932]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.905695]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.906488]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.907306]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.908092]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.908843]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.909673]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.910426]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.911189]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.912539]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.913459]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.914187]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.914948]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.915719]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.916458]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.917295]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.918072]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.918853]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.919700]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.920482]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.921248]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.922030]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.922757]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.923527]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.924374]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.925152]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.925934]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.926737]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.927553]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.928333]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.929153]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.929938]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.930686]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.931526]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.932321]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.933039]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.933800]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.934531]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.935248]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.936014]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.936743]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.937461]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.938225]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.938956]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.939672]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.940434]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.941165]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.941881]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.943015]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.943705]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.944396]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.945163]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.945896]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.946619]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.947386]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.948121]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.948841]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.949609]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.950343]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.951066]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.951832]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.952568]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.953295]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.954060]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.954809]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.955529]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.956290]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.957023]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.957739]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.958501]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.959232]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.959950]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.960710]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.961440]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.962156]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.962917]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.963647]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.964365]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.965128]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.965856]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.966574]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.967336]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.968066]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.968781]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.969543]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.970272]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.970990]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.971749]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.973000]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.973679]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.974404]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.975142]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.975857]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.976618]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.977347]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.978064]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.978823]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.979554]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.980270]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.981032]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.981759]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.982475]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.983235]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.983964]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.984681]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.985443]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.986173]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.986887]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.987650]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.988379]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.989097]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.989857]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.990586]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.991302]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    0.992064]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    0.999173]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    0.999893]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.000654]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.001382]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.002605]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.003526]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.004260]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.004978]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.005736]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.006465]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.007182]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.007942]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.008669]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.009416]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.010231]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.010971]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.011690]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.012450]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.013179]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.013894]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.014657]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.015386]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.016103]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.016862]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.017591]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.018308]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.019070]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.019798]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.020514]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.021274]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.022005]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.022719]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.023480]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.024210]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.024925]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.025686]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.026416]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.027134]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.027894]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.028623]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.029344]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.030106]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.030833]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.031551]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.032834]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.033574]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.034254]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.034999]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.035772]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.036536]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.037340]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.038125]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.038876]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.039692]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.040451]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.041240]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.042056]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.042810]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.043586]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.044360]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.045104]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.045828]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.046628]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.047401]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.048162]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.048988]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.049738]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.050514]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.051331]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.052126]  [<ffffffffb2f72825>] pci_scan_bridge+0x535/0x6a0
[    1.052867]  [<ffffffffb2f71614>] ? pci_scan_single_device+0x74/0xf0
[    1.053695]  [<ffffffffb2f72a46>] pci_scan_child_bus+0xb6/0x190
[    1.054447]  [<ffffffffb31822a2>] pci_acpi_scan_root+0x322/0x680
[    1.055237]  [<ffffffffb2fbb6e9>] acpi_pci_root_add+0x39a/0x490
[    1.056014]  [<ffffffffb2fbd97a>] ? acpi_pnp_match+0x30/0xa6
[    1.056756]  [<ffffffffb2fb715b>] acpi_bus_attach+0xeb/0x1ef
[    1.057508]  [<ffffffffb2fb71d3>] acpi_bus_attach+0x163/0x1ef
[    1.058281]  [<ffffffffb2fb71d3>] acpi_bus_attach+0x163/0x1ef
[    1.059012]  [<ffffffffb39ab317>] ? acpi_sleep_proc_init+0x2a/0x2a
[    1.059760]  [<ffffffffb2fb72c9>] acpi_bus_scan+0x6a/0x90
[    1.060451]  [<ffffffffb39ab785>] acpi_scan_init+0x7f/0x1c2
[    1.061156]  [<ffffffffb39ab5ac>] acpi_init+0x295/0x2af
[    1.061834]  [<ffffffffb2c020e8>] do_one_initcall+0xb8/0x230
[    1.062996]  [<ffffffffb39631f5>] kernel_init_freeable+0x17a/0x219
[    1.063743]  [<ffffffffb39629d4>] ? initcall_blacklist+0xb0/0xb0
[    1.064483]  [<ffffffffb32b6a30>] ? rest_init+0x80/0x80
[    1.065163]  [<ffffffffb32b6a3e>] kernel_init+0xe/0xf0
[    1.065835]  [<ffffffffb32d8658>] ret_from_fork+0x58/0x90
[    1.066528]  [<ffffffffb32b6a30>] ? rest_init+0x80/0x80
[    1.067206] Code: 44 00 00 55 48 8b 47 08 48 89 e5 48 63 48 18 48 8b 87 40 09 00 00 48 8b 50 48 eb 0b 66 90 48 8b 50 68 48 85 d2 74 1b 48 8b 42 40 <48> 03 04 cd a0 e8 92 b3 48 01 30 48 8b 02 48 8b 40 40 48 85 c0 
[    1.072226] RIP  [<ffffffffb2ce168d>] cpuacct_charge+0x2d/0x50
[    1.072998]  RSP <ffff938f7fd83e40>
[    1.073548] CR2: fffffffd49d872f0
[    1.074087] ---[ end trace 57bdeb4fca46b444 ]---
[    1.074721] Kernel panic - not syncing: Fatal exception in interrupt


Expected results:
guest can boot up successfully

Additional info:
guest boot up successfully with 8 e1000 nics (with io-reserve=0)

[1]
#!/bin/sh
MACHINE=q35
SMP=4,cores=2,threads=2,sockets=1
MEM=2G
GUEST_IMG=/home/test/rhel75-seabios.qcow2
IMG_FORMAT=qcow2
size=32

CLI="/usr/libexec/qemu-kvm -enable-kvm -M $MACHINE -nodefaults -smp $SMP -m $MEM -name vm1 -drive file=$GUEST_IMG,if=none,id=guest-img,format=$IMG_FORMAT,werror=stop,rerror=stop -device ide-hd,drive=guest-img,bus=ide.0,unit=0,id=os-disk,bootindex=1 -spice port=5931,disable-ticketing -vga qxl -monitor stdio -qmp tcp:0:6666,server,nowait -boot menu=on,reboot-timeout=8,strict=on -chardev file,path=/home/seabios.log,id=seabios -device isa-debugcon,chardev=seabios,iobase=0x402 -serial unix:/tmp/console,server,nowait"
while [ ${i:=0} -lt ${1:-0} ]
do
        blkDiskID=$((i))
        CLI="$CLI -device pcie-root-port,bus=pcie.0,id=root.$i,slot=$i,io-reserve=0"
     n=$((50-$i))
     CLI="$CLI -device e1000,netdev=tap$i,mac=9a:6a:6b:6c:6d:$n,bus=root.$i -netdev tap,id=tap$i"
    i=$((i+1))
done

$CLI

Comment 2 Laszlo Ersek 2017-12-08 11:44:38 UTC
It's quite clear from the stack dump (a long repeating sequence), but the oops tells it as it is too:

[    0.844281] Thread overran stack, or stack corrupted

Looks like infinite recursion somewhere in the PCI machinery.

I would argue this is a guest kernel bug.

Comment 3 Marcel Apfelbaum 2017-12-10 15:06:47 UTC
(In reply to Laszlo Ersek from comment #2)
> It's quite clear from the stack dump (a long repeating sequence), but the
> oops tells it as it is too:
> 
> [    0.844281] Thread overran stack, or stack corrupted
> 
> Looks like infinite recursion somewhere in the PCI machinery.
> 
> I would argue this is a guest kernel bug.

Maybe, but the command line is using PCIe ports with no IO reserved
while connecting the e1000 device which requires IO!
The point: is a not supported configuration.

Anyway, the io-reseve=0 is just a hint, the firmware should allocate
IO since there is a device requiring IO connected to the port.

Questions for QE:
Does it happen without the io-reserve hint?
Can you please try with e1000e?
Can you please also attach the dmesg?

Thanks,
Marcel

Comment 7 Laszlo Ersek 2017-12-11 11:16:12 UTC
(In reply to Marcel Apfelbaum from comment #3)
> (In reply to Laszlo Ersek from comment #2)
> > It's quite clear from the stack dump (a long repeating sequence), but the
> > oops tells it as it is too:
> > 
> > [    0.844281] Thread overran stack, or stack corrupted
> > 
> > Looks like infinite recursion somewhere in the PCI machinery.
> > 
> > I would argue this is a guest kernel bug.
> 
> Maybe, but the command line is using PCIe ports with no IO reserved
> while connecting the e1000 device which requires IO!
> The point: is a not supported configuration.
> 
> Anyway, the io-reseve=0 is just a hint, the firmware should allocate
> IO since there is a device requiring IO connected to the port.

Hmmm wait, I missed that we plugged a genuine traditional PCI (not PCI Express) device into a PCI Express port. Per our guidelines, this should never be done:

- see "docs/pcie.txt",
- section "2.2 PCI Express only hierarchy":
- "Plug only PCI Express devices into PCI Express Ports."

So now I think maybe we shouldn't even expect the kernel and/or SeaBIOS to work in this setup, at all.

Comment 8 Marcel Apfelbaum 2017-12-15 17:35:18 UTC
(In reply to Laszlo Ersek from comment #7)
> (In reply to Marcel Apfelbaum from comment #3)
> > (In reply to Laszlo Ersek from comment #2)
> > > It's quite clear from the stack dump (a long repeating sequence), but the
> > > oops tells it as it is too:
> > > 
> > > [    0.844281] Thread overran stack, or stack corrupted
> > > 
> > > Looks like infinite recursion somewhere in the PCI machinery.
> > > 
> > > I would argue this is a guest kernel bug.
> > 
> > Maybe, but the command line is using PCIe ports with no IO reserved
> > while connecting the e1000 device which requires IO!
> > The point: is a not supported configuration.
> > 
> > Anyway, the io-reseve=0 is just a hint, the firmware should allocate
> > IO since there is a device requiring IO connected to the port.
> 
> Hmmm wait, I missed that we plugged a genuine traditional PCI (not PCI
> Express) device into a PCI Express port. Per our guidelines, this should
> never be done:
> 
> - see "docs/pcie.txt",
> - section "2.2 PCI Express only hierarchy":
> - "Plug only PCI Express devices into PCI Express Ports."
> 
> So now I think maybe we shouldn't even expect the kernel and/or SeaBIOS to
> work in this setup, at all.

Agreed, but QE said is happening also with  e1000e and virtio-net-pci :(
It seems like a guest kernel bug, but I will have to debug it,
at least try to reproduce it by myself.

Thanks,
marcel

Comment 9 jfowler 2017-12-28 18:38:12 UTC
I have attached this bug to a new case.  Looks to be one off.  I am not sure if this issue is reproducible with the customer.  Is there anything I can request from the customer to help with this bug?

Comment 12 Marcel Apfelbaum 2018-01-11 19:52:34 UTC
Is a bug in commit ec6cb17f (pci: enable RedHat PCI bridges to reserve additional resources on PCI init).

When adding the IO hints PCI capability to the pcie-root-port
without specifying a value for bus-reserve, the secondary bus
computation is wrong leading to wrong secondary and subordinate
bus numbers which in the end makes guest kernel crazy.


In order to test my assessment jus pass bus-reserve=0 together with io-reserve=0
and everything will work just fine.

A last word, please do not use io-reserve=0 hint with e1000 and e1000e devices,
both of them require IO space and the hint gets discarded. Just use virtio-net-pci.

I will post a fix for SeaBIOS shortly.

Thanks,
Marcel

Comment 13 Marcel Apfelbaum 2018-01-11 20:17:00 UTC
Fix posted upstream:
    [PATCH] pci: fix 'io hints' capability for RedHat PCI bridges
I will add a link soon.

Thanks,
Marcel

Comment 14 Marcel Apfelbaum 2018-01-13 18:57:21 UTC
Link to patch:
    https://mail.coreboot.org/pipermail/seabios/2018-January/012010.html

Comment 16 Miroslav Rezanina 2018-01-30 14:47:32 UTC
Fix included in seabios-1.11.0-2.el7

Comment 21 errata-xmlrpc 2018-04-10 14:26:48 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, 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/RHBA-2018:0814


Note You need to log in before you can comment on or make changes to this bug.