sundareswaram pv
2016-Feb-15 17:30 UTC
[libvirt-users] [issue] Accessing SMBIOSTable in FreeBSD Kernel
<html><head></head><body><div style="font-family: Verdana;font-size: 12.0px;"><div> <div>Hi All,</div> <div> <strong>Setup:</strong></div> <div> - x86 based platforms, running Yocto-Linux with QEMU/KVM to launch our FreeBSD VM's</div> <div> </div> <div> <strong>Issue in brief:</strong></div> <div> I’m encountering an issue in one of our platforms, while accessing the SMBIOSTable with SMP Enabled 64-bit FreeBSD kernel</div> <div> </div> <div> - This issue is NOT observed on all our platforms.</div> <div> - just seeing it on a specific platform, which has changes to the HostOS BIOS</div> <div> </div> <div> The FreeBSD VM's access the SMBIOS table, where the smbios is shared to the VM using</div> <div> <em><strong><smbios mode='host'/></strong></em></div> <div> </div> <div> While enabling SMP on 64-bit FreeBSD Kernel, I see that the SMBIOSTable is accessed at <strong>different location</strong> compared to the address shared when <strong>SMP is disabled.</strong></div> <div> </div> <div> <strong>=== with 1 vCPU to FreeBSD (No SMP) ====</strong></div> <div>addr found @ 0x800f0c20</div> <div> SMBIOS map : 800f0c40 f0c40 kva 0 > 140 {800f0c40, f0c40 <----> virtual address(va), physical address(pa) }</div> <div> SMBIOS map 800f0c40 f0c40 page num 0 140</div> <div> SMBIOS mapped 800f0c40 f0c40 0xffff807fffc00780</div> <div>Found SMBIOS Ver 2.8 at 0xffffffff800f0c40 - Beyond mapped region</div> <div>smbios: Found SMBIOS Ver 2.8 at 0xffffffff800f0c20</div> <div>smbios: Table at 0xffffffff800f0c40 len 568</div> <div>Fast boot:0</div> <div> </div> <div> <strong>=== with 2 vCPU to FreeBSD (SMP enabled) ====</strong></div> <div> addr found @ 0x800f0e40</div> <div>SMBIOS map : fa1ffd80 7a1ffd80 kva 3d0 > 140 {fa1ffd80, 7a1ffd80 <----> va, pa }</div> <div>Found SMBIOS Ver 2.8 at 0xfffffffffa1ffd80 - Beyond mapped region</div> <div>Fast boot:0</div> <div>kernel trap 12 with interrupts disabled è PANIC PANIC PANIC</div> <div> </div> <div> </div> <div><strong> Questions & Resolutions:</strong></div> <div> The following are couple of questions:</div> <div>1. why is that the SMBIOSTable gets mapped at different addresses when launching the VM with and without SMP (SMP with 2 vCPUs</div> <div>2. Is there a way to PIN the SMBIOSTable for the VM ? This probably will help address the issue</div> <div>3. The issue is seen only with a specific platform. While, SMP in 64-bit OCCAM works fine on <strong>many other platforms. </strong>Does it mean, it is an issue specific to the bios release for Porter?</div> <div>4 .I could address the issue by using</div> <div><strong><em> <smbios mode='sysinfo'/></em></strong></div> <ol> </ol> <div> please suggest ways to identify the problem and any potential solutions</div> <div> </div> <div>thanks in advance & rgds,</div> <div>Sundareswaram</div> <div> </div> </div></div></body></html>