On Thursday, February 18, 2016 12:05:14 PM Peter Humphrey wrote:
> On Thursday 18 February 2016 11:23:42 I wrote:
> > On Thursday 18 February 2016 11:51:19 J. Roeleveld wrote:
> > > On Thursday, February 18, 2016 10:06:25 AM Peter Humphrey wrote:
> > --->8
> > 
> > > > I still can't shake the idea that I don't have my kernel set up right.
> > > > Do
> > > > I
> > > > need anything particular in control groups, or name spaces, or
> > > > anything?
> > > 
> > > About the kernel: I don't have anything special.
> > > 
> > > USE-flags:
> > > 
> > > [I] app-emulation/virtualbox
> > > 
> > >      Installed versions:  4.3.32{tbz2}(03:46:09 PM 11/25/2015)(additions
> > > 
> > > alsa extensions java opengl pam pulseaudio qt4 sdk udev -doc -headless
> > > -libressl - python -vboxwebsrv -vnc ELIBC="-FreeBSD"
> > > PYTHON_TARGETS="python2_7")
> > 
> > My USE flags:
> >      Installed versions:  4.3.32{tbz2}(10:25:28 18/02/16)(additions alsa
> > 
> > extensions opengl pam qt4 sdk udev -doc -headless -java -libressl
> > -pulseaudio -python -vboxwebsrv -vnc ELIBC="-FreeBSD"
> > PYTHON_TARGETS="python2_7")
> > 
> > I don't have pulseaudio here, but do I need java for virtualbox?
> > 
> > > What does " dmesg " have to say?
> > > 
> > > For me:
> > > % dmesg | grep -i vbox
> > > [  165.950507] vboxdrv: Found 8 processor cores.
> > > [  165.950787] vboxdrv: fAsync=0 offMin=0x1fe offMax=0xa4f9
> > > [  165.950828] vboxdrv: TSC mode is 'synchronous', kernel timer mode is
> > > 'normal'.
> > > [  165.950829] vboxdrv: Successfully loaded version 4.3.32 (interface
> > > 0x001a000b).
> > > [  165.978641] vboxpci: pci-stub module not available, cannot detach PCI
> > > devices
> > > [  165.978643] vboxpci: IOMMU found
> > 
> > $ dmesg | grep -i vbox
> > [    4.163645] vboxdrv: Found 4 processor cores.
> > [    4.163748] vboxdrv: fAsync=0 offMin=0x1d8 offMax=0xd44
> > [    4.163792] vboxdrv: TSC mode is 'synchronous', kernel timer mode is
> > 'normal'.
> > [    4.163793] vboxdrv: Successfully loaded version 4.3.32 (interface
> > 0x001a000b).
> > [    4.173458] vboxpci: pci-stub module not available, cannot detach PCI
> > devices
> > [    4.173461] vboxpci: IOMMU not found (not registered)
> > 
> > That last one is suspicious, presumably connected with this:
> > 
> > $ dmesg | grep IOMMU
> > [    0.119875] dmar: IOMMU: failed to map dmar0
> > [    4.173461] vboxpci: IOMMU not found (not registered)
> > 
> > I wonder what dmar0 is.
> 
> While exploring that, I found advice to add iommu=soft to the kernel
> options. Then I got this:
> 
> # dmesg | grep -i dmar
> [    0.000000] ACPI: DMAR 0x00000000BFE880C0 000090 (v01 AMI    OEMDMAR
> 00000001 MSFT 00000097)
> [    0.119714] dmar: Host address width 36
> [    0.119873] dmar: DRHD base: 0x000000fed90000 flags: 0x1
> [    0.120202] WARNING: CPU: 0 PID: 1 at drivers/iommu/dmar.c:829
> warn_invalid_dmar+0x7c/0x90()
> [    0.120481] Your BIOS is broken; DMAR reported at address fed90000
> returns all ones!
> [    0.123772]  [<ffffffff813f12bc>] warn_invalid_dmar+0x7c/0x90
> [    0.123934]  [<ffffffff813f2549>] dmar_parse_one_drhd+0x4f9/0x550
> [    0.124096]  [<ffffffff813f1129>] dmar_walk_remapping_entries+0x29/0x140
> [    0.124260]  [<ffffffff81907be6>] dmar_table_init+0xb9/0x138
> [    0.124421]  [<ffffffff813f2050>] ? dmar_free_dev_scope+0xb0/0xb0
> [    0.124918]  [<ffffffff813f12d0>] ? warn_invalid_dmar+0x90/0x90
> [    0.127042] dmar: IOMMU: failed to map dmar0
> [    0.127201] dmar: parse DMAR table failure.
> 
> Without that kernel option:
> 
> [    0.000000] ACPI: DMAR 0x00000000BFE880C0 000090 (v01 AMI    OEMDMAR
> 00000001 MSFT 00000097)
> [    0.000000] WARNING: CPU: 0 PID: 0 at drivers/iommu/dmar.c:829
> warn_invalid_dmar+0x7c/0x90()
> [    0.000000] Your BIOS is broken; DMAR reported at address fed90000
> returns all ones!
> [    0.000000]  [<ffffffff813f12bc>] warn_invalid_dmar+0x7c/0x90
> [    0.000000]  [<ffffffff815749a0>] dmar_validate_one_drhd+0xb0/0xf0
> [    0.000000]  [<ffffffff813f1129>] dmar_walk_remapping_entries+0x29/0x140
> [    0.120132] dmar: Host address width 36
> [    0.120291] dmar: DRHD base: 0x000000fed90000 flags: 0x1
> [    0.120472] dmar: IOMMU: failed to map dmar0
> [    0.120631] dmar: parse DMAR table failure.
> 
> So all the kernel option adds is some extra debug info. ATLAS@home still
> can't communicate with VirtualBox.
> 
> Now that I think about it, I did update the AMI BIOS several weeks ago. It
> went from 1102 to 2101 - a bit of a step. Maybe that's what's broken my
> system - well, this bit of it, anyway.

Could very well be the case.

I get the following in my dmesg:

# dmesg | grep -i iomm         
[    0.344602] dmar: IOMMU 0: reg_base_addr fed90000 ver 1:0 cap 
c0000020660462 ecap f0101a
[    0.344607] dmar: IOMMU 1: reg_base_addr fed91000 ver 1:0 cap 
d2008020660462 ecap f010da
[    0.344688] IOMMU: dmar0 using Queued invalidation
[    0.344690] IOMMU: dmar1 using Queued invalidation
[    0.344691] IOMMU: Setting RMRR:
[    0.344700] IOMMU: Setting identity map for device 0000:00:02.0 [0xcd000000 
- 0xcf1fffff]
[    0.344887] IOMMU: Setting identity map for device 0000:00:14.0 [0xcbea9000 
- 0xcbeb7fff]
[    0.344908] IOMMU: Setting identity map for device 0000:00:1a.0 [0xcbea9000 
- 0xcbeb7fff]
[    0.344926] IOMMU: Setting identity map for device 0000:00:1d.0 [0xcbea9000 
- 0xcbeb7fff]
[    0.344939] IOMMU: Prepare 0-16MiB unity mapping for LPC
[    0.344946] IOMMU: Setting identity map for device 0000:00:1f.0 [0x0 - 
0xffffff]
[  165.978643] vboxpci: IOMMU found
[14502.509549] created IOMMU domain ffff88009d275748


Also, not sure if the following might help:
# zgrep -i iomm /proc/config.gz 
CONFIG_GART_IOMMU=y
# CONFIG_CALGARY_IOMMU is not set
CONFIG_IOMMU_HELPER=y
CONFIG_IOMMU_API=y
CONFIG_IOMMU_SUPPORT=y
# Generic IOMMU Pagetable Support
CONFIG_IOMMU_IOVA=y
# CONFIG_AMD_IOMMU is not set
CONFIG_INTEL_IOMMU=y
CONFIG_INTEL_IOMMU_DEFAULT_ON=y
CONFIG_INTEL_IOMMU_FLOPPY_WA=y
# CONFIG_IOMMU_DEBUG is not set
# CONFIG_IOMMU_STRESS is not set

# zgrep -i dmar /proc/config.gz
CONFIG_DMAR_TABLE=y


--
Joost


Reply via email to