Red Hat Bugzilla – Bug 1523166
[Q35] guest kernel panic when boot with 9 nics
Last modified: 2018-04-10 10:28:18 EDT
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
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.
(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
(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.
(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
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?
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
Fix posted upstream: [PATCH] pci: fix 'io hints' capability for RedHat PCI bridges I will add a link soon. Thanks, Marcel
Link to patch: https://mail.coreboot.org/pipermail/seabios/2018-January/012010.html
Fix included in seabios-1.11.0-2.el7
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