| Summary: | windows 2012r2 BSOD while installing intel 82599 driver | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Chao Yang <chayang> |
| Component: | qemu-kvm | Assignee: | Alex Williamson <alex.williamson> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Virtualization Bugs <virt-bugs> |
| Severity: | high | Docs Contact: | |
| Priority: | high | ||
| Version: | 6.5 | CC: | acathrow, alex.williamson, bcao, bdas, bsarathy, chayang, dfleytma, flang, hhuang, juzhang, knoel, michen, mkenneth, qzhang, rhod, virt-bugs, virt-maint, vrozenfe, yvugenfi |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2014-05-13 21:29:06 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Description
Chao Yang
2013-10-16 08:33:51 UTC
There is a similar bug - Bug 947791 got fixed on virtio-win-prewhql-0.1-68. But this issue is also reproducible with -68. With VFs of Intel dual port 82576 and virtio-win-prewhql-72, this issue is not reproducible. Test this bug on latest on GA version ,hit same problem(BSOD) Senarios 1)RHEL6.5 Host: kernel-2.6.32-425.el6.x86_64.rpm qemu-kvm-0.12.1.2-2.414.el6.x86_64.rpm Guest:win2012r2 Senario 2) RHEL6.4-GA Host: 2.6.32-358.el6.x86_64 qemu-kvm-0.12.1.2-2.355.el6.x86_64 Guest:win2012r2 So this bug is not regression. Since it is about device assignment, and it is not really a regression, and we are out of time, we will have to defer it. I also removed the blocker. Yan, do you see anything in the dump that can give Alex a hint? I cannot download the dump file. Can you please compress it and re-upload? Thanks. (In reply to Yan Vugenfirer from comment #11) > I cannot download the dump file. Can you please compress it and re-upload? > Please retry. > Thanks. The crash is when the driver is trying to map IO range with MmMapIoSpace http://msdn.microsoft.com/en-us/library/windows/hardware/ff554618(v=vs.85).aspx According to the parameters of the BSOD: MEMORY_MANAGEMENT (1a) ( http://msdn.microsoft.com/en-us/library/windows/hardware/ff557391(v=vs.85).aspx ) Arg1: 0000000000001233: A driver tried to map a physical memory page that was not locked. This is illegal because the contents or attributes of the page can change at any time. This is a bug in the code that made the mapping call. Parameter 2 is the page frame number of the physical page that the driver attempted to map. Arg2: 0000000000054445 - pfn Looking at the pfn: kd> !pfn 0000000000054445 PFN 00054445 at address FFFFFA8000FCCCF0 flink 00000000 blink / share count 00000000 pteaddress 00000000 reference count 0000 used entry count 0000 Cached color 0 Priority 0 restore pte 00000000 containing page FFFFFFFFE Free If it helps below windbg trace in order to look at the resource allocations for VFs: kd> !pcitree Bus 0x0 (FDO Ext ffffe00000535ae0) (d=0, f=0) 80861237 devext 0xffffe0000052a9d0 devstack 0xffffe0000052a880 0600 Bridge/HOST to PCI (d=1, f=0) 80867000 devext 0xffffe000005291b0 devstack 0xffffe00000529060 0601 Bridge/PCI to ISA (d=1, f=1) 80867010 devext 0xffffe000005299d0 devstack 0xffffe00000529880 0101 Mass Storage Controller/IDE (d=1, f=2) 80867020 devext 0xffffe000005181b0 devstack 0xffffe00000518060 0c03 Serial Bus Controller/USB (d=2, f=0) 1b360100 devext 0xffffe0000056d1b0 devstack 0xffffe0000056d060 0300 Display Controller/VGA >> Red Hat virtio devices: (d=3, f=0) 1af41001 devext 0xffffe0000056d9d0 devstack 0xffffe0000056d880 0100 Mass Storage Controller/SCSI (d=4, f=0) 1af41000 devext 0xffffe0000056c1b0 devstack 0xffffe0000056c060 0200 Network Controller/Ethernet (d=5, f=0) 1af41003 devext 0xffffe0000056c9d0 devstack 0xffffe0000056c880 0780 Simple Serial Communications Controller/'Other' (d=6, f=0) 1af41002 devext 0xffffe0000056b1b0 devstack 0xffffe0000056b060 0500 Memory Controller/RAM >> Intel VFs (d=7, f=0) 808610fb devext 0xffffe0000056b9d0 devstack 0xffffe0000056b880 0200 Network Controller/Ethernet (d=8, f=0) 808610fb devext 0xffffe0000056a1b0 devstack 0xffffe0000056a060 0200 Network Controller/Ethernet Two Intel VFs: kd> !devext 0xffffe0000056b9d0 pci PDO Extension, Bus 0x0, Device 7, Function 0. DevObj 0xffffe0000056b880 Parent FDO DevExt 0xffffe00000535ae0 Device State = PciStarted Vendor ID 8086 (INTEL) Device ID 10FB Subsystem Vendor ID 8086 (INTEL) Subsystem ID 7A11 Header Type 0, Class Base/Sub 02/00 (Network Controller/Ethernet) Programming Interface: 00, Revision: 01, IntPin: 01, RawLine 00 Possible Decodes ((cmd & 7) = 7): BMI Capabilities: Ptr=e0, power msi msix express Express capabilities: (BIOS controlled) Logical Device Power State: D0 Device Wake Level: Unspecified WaitWakeIrp: <none> Requirements: Alignment Length Minimum Maximum BAR0 Mem: 00080000 00080000 0000000000000000 00000000ffffffff BAR2 Io: 00000020 00000020 0000000000000000 00000000ffffffff BAR4 Mem: 00004000 00004000 0000000000000000 00000000ffffffff ROM BAR: 00080000 00080000 0000000000000000 00000000ffffffff VF BAR0 Mem: 00080000 00080000 0000000000000000 00000000ffffffff Resources: Start Length BAR0 Mem: 00000000f4080000 00080000 BAR4 Mem: 00000000f4100000 00004000 Interrupt Requirement: Line Based - Min Vector = 0x0, Max Vector = 0xffffffff Message Based: Type - Msi-X, 0x40 messages requested Interrupt Resource: Type - MSI-X, 0x13 Messages Granted kd> !devext 0xffffe0000056a1b0 pci PDO Extension, Bus 0x0, Device 8, Function 0. DevObj 0xffffe0000056a060 Parent FDO DevExt 0xffffe00000535ae0 Device State = PciStarted Vendor ID 8086 (INTEL) Device ID 10FB Subsystem Vendor ID 8086 (INTEL) Subsystem ID 7A11 Header Type 0, Class Base/Sub 02/00 (Network Controller/Ethernet) Programming Interface: 00, Revision: 01, IntPin: 02, RawLine 00 Possible Decodes ((cmd & 7) = 7): BMI Capabilities: Ptr=e0, power msi msix express Express capabilities: (BIOS controlled) Logical Device Power State: D0 Device Wake Level: Unspecified WaitWakeIrp: <none> Requirements: Alignment Length Minimum Maximum BAR0 Mem: 00080000 00080000 0000000000000000 00000000ffffffff BAR2 Io: 00000020 00000020 0000000000000000 00000000ffffffff BAR4 Mem: 00004000 00004000 0000000000000000 00000000ffffffff ROM BAR: 00080000 00080000 0000000000000000 00000000ffffffff VF BAR0 Mem: 00080000 00080000 0000000000000000 00000000ffffffff Resources: Start Length BAR0 Mem: 00000000f4200000 00080000 BAR4 Mem: 00000000f4280000 00004000 Interrupt Requirement: Line Based - Min Vector = 0x0, Max Vector = 0xffffffff Message Based: Type - Msi-X, 0x40 messages requested Interrupt Resource: Type - MSI-X, 0x13 Messages Granted (In reply to Yan Vugenfirer from comment #15) > The crash is when the driver is trying to map IO range with MmMapIoSpace > > http://msdn.microsoft.com/en-us/library/windows/hardware/ff554618(v=vs.85). > aspx > > According to the parameters of the BSOD: > MEMORY_MANAGEMENT (1a) ( > http://msdn.microsoft.com/en-us/library/windows/hardware/ff557391(v=vs.85). > aspx ) > > Arg1: 0000000000001233: A driver tried to map a physical memory page that > was not locked. This is illegal because the contents or attributes of the > page can change at any time. This is a bug in the code that made the mapping > call. Parameter 2 is the page frame number of the physical page that the > driver attempted to map. This sounds like a driver bug. Intel has told us in the past that they don't support assignment of PFs that support SR-IOV. Does the BSOD go away if only function 0 of the PF is assigned or if both functions are assigned with guest function number matching host function? ex. -device pci-assign,host=05:00.0,multifunction=on,addr=6.0,id=PF-1 \ -device pci-assign,host=05:00.1,addr=6.1,id=PF-2 I am not able to reproduce this bug on Intel system with Intel Corporation 82599ES 10-Gigabit with latest qemu-kvm, kernel and windows driver for 82599. Except that in guest Device Manager, it displays "Intel(R) Ethernet Server Adapter X520-2" and "Intel(R) Ethernet Server Adapter X520-2 #2" Packages tested: qemu-kvm-0.12.1.2-2.425.el6.x86_64 2.6.32-464.el6.x86_64 Driver version: Operating Systems: Windows Server 2012 R2* Date: 2014/04/10 Version: 19.1 CLI: # /usr/libexec/qemu-kvm -M rhel6.5.0 -cpu host -enable-kvm -m 4096 -realtime mlock=off -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -nodefaults -drive file=en_windows_server_2012_r2_x64_dvd_2707946.iso,if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw,serial= -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -drive file=win2012r2.qcow2,if=none,id=drive-ide-disk0,format=qcow2,cache=none,werror=stop,rerror=stop,aio=native -device ide-drive,bus=ide.0,unit=0,drive=drive-ide-disk0,id=ide-disk0,bootindex=1 -netdev tap,id=hostnet0 -device e1000,netdev=hostnet0,id=net0,mac=00:1a:4a:42:48:cd,bus=pci.0 -k en-us -vga cirrus -vnc :1 -monitor stdio -boot menu=on -device pci-assign,host=05:00.0,id=pf-1 -device pci-assign,host=05:00.1,id=pf-2 Marking this closed then, the fix might have come from the Intel driver. X520 is the new Intel marketing name for the 82599. |