Bug 76983 - [i915gml] *ERROR* conflict detected with stolen region: [0x1f8 00000 - 0x20000000]
Summary: [i915gml] *ERROR* conflict detected with stolen region: [0x1f8 00000 - 0x2000...
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: XOrg git
Hardware: Other All
: medium normal
Assignee: Daniel Vetter
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-04-03 08:04 UTC by Paul Menzel
Modified: 2017-07-24 22:55 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Patch to test. (1.30 KB, patch)
2014-04-05 10:50 UTC, Daniel Vetter
no flags Details | Splinter Review

Description Paul Menzel 2014-04-03 08:04:23 UTC
Using Asus Eee PC 701 4G with

    $ lspci | grep VGA
    00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 04)

and Debian Sid/unstable with Linux 3.13.7 the following message is printed by the Linux kernel during boot up.

    […]
    [    8.544621] [drm] Initialized drm 1.1.0 20060810
    [    8.572654] ACPI: AC Adapter [AC0] (on-line)
    [    8.573877] ACPI: Video Device [VGA] (multi-head: yes  rom: no  post: no)
    [    8.574323] input: Video Bus as /devices/LNXSYSTM:00/device:00/PNP0A08:00/LNXVIDEO:00/input/in
put6
    [    8.622351] ACPI: Battery Slot [BAT0] (battery absent)
    [    8.802352] [drm] Memory usable by graphics device = 256M
    [    8.802964] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
    [    8.802971] [drm] Driver supports precise vblank timestamp query.
    [    8.824166] [drm:i915_stolen_to_physical] *ERROR* conflict detected with stolen region: [0x1f8
00000 - 0x20000000]
    [    8.824361] vgaarb: device changed decodes: PCI:0000:00:02.0,olddecodes=io+mem,decodes=io+mem:
owns=io+mem
    [    8.859502] [drm] initialized overlay support
    [    8.860146] usb 5-8: new high-speed USB device number 3 using ehci-pci
    [    8.946808] intel_rng: FWH not detected
    [    9.079470] input: Asus EeePC extra buttons as /devices/platform/eeepc/input/input7
    [    9.080213] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
    [    9.080238] pci 0000:00:1f.0: BAR 13: [io  0x0800-0x087f] has bogus alignment
    [    9.080254] pci 0000:00:1e.0: PCI bridge to [bus 05]
    [    9.080296] agpgart-intel 0000:00:00.0: no hotplug settings from platform
    [    9.080305] agpgart-intel 0000:00:00.0: using default PCI settings
    [    9.080324] i915 0000:00:02.0: no hotplug settings from platform
    […]

No additional errors are observed though, so no idea how serious this is. Having the Linux kernel print an `ERROR` message though, looks scary to the user. ;-)
Comment 1 Mika Kuoppala 2014-04-03 10:05:20 UTC
Could you attach your 'cat /proc/iomem' please?

Driver does the right thing, and gives up using this area. So not so serious from the graphics driver point of view. But this area should have been hidden from kernel and we end up finding it is in use after all. /proc/iomem should reveal who has managed to get hold of it.
Comment 2 Daniel Vetter 2014-04-03 15:59:54 UTC
Likely a dupe of bug #71031
Comment 3 Paul Menzel 2014-04-03 18:16:33 UTC
(In reply to comment #1)
> Could you attach your 'cat /proc/iomem' please?

[…]

$ sudo more /proc/ioports
0000-0cf7 : PCI Bus 0000:00
  0000-001f : dma1
  0020-0021 : pic1
  0040-0043 : timer0
  0050-0053 : timer1
  0060-0060 : keyboard
  0062-0062 : EC data
  0064-0064 : keyboard
  0066-0066 : EC cmd
  0070-0071 : rtc0
  0080-008f : dma page reg
  00a0-00a1 : pic2
  00c0-00df : dma2
  00f0-00ff : fpu
  0170-0177 : 0000:00:1f.2
    0170-0177 : ata_piix
  01f0-01f7 : 0000:00:1f.2
    01f0-01f7 : ata_piix
  0376-0376 : 0000:00:1f.2
    0376-0376 : ata_piix
  0380-0383 : pnp 00:07
  03c0-03df : vga+
  03f6-03f6 : 0000:00:1f.2
    03f6-03f6 : ata_piix
  0400-041f : 0000:00:1f.3
  0480-04bf : 0000:00:1f.0
    0480-04bf : pnp 00:07
  04d0-04d1 : pnp 00:07
  0800-0803 : ACPI PM1a_EVT_BLK
  0804-0805 : ACPI PM1a_CNT_BLK
  0808-080b : ACPI PM_TMR
  0810-0815 : ACPI CPU throttle
  0820-0820 : ACPI PM2_CNT_BLK
  0828-082f : ACPI GPE0_BLK
  0830-0833 : iTCO_wdt
    0830-0833 : iTCO_wdt
  0860-087f : iTCO_wdt
    0860-087f : iTCO_wdt
0cf8-0cff : PCI conf1
0d00-ffff : PCI Bus 0000:00
  1000-1fff : PCI Bus 0000:04
  2000-2fff : PCI Bus 0000:03
  3000-3fff : PCI Bus 0000:01
  e400-e41f : 0000:00:1d.0
    e400-e41f : uhci_hcd
  e480-e49f : 0000:00:1d.1
    e480-e49f : uhci_hcd
  e800-e81f : 0000:00:1d.2
    e800-e81f : uhci_hcd
  e880-e89f : 0000:00:1d.3
    e880-e89f : uhci_hcd
  ec00-ec07 : 0000:00:02.0
  ffa0-ffaf : 0000:00:1f.2
    ffa0-ffaf : ata_piix
Comment 4 Daniel Vetter 2014-04-05 10:32:44 UTC
We need /proc/iomem, not /proc/ioports
Comment 5 Daniel Vetter 2014-04-05 10:50:23 UTC
Created attachment 96944 [details] [review]
Patch to test.

Please test this patch and then attach the contents of /sys/kernel/debug/dri/0/i915_gem_stolen You need debugfs enabled&mounted for that ofc.
Comment 6 Paul Menzel 2014-04-05 16:16:07 UTC
(In reply to comment #4)
> We need /proc/iomem, not /proc/ioports

I am sorry.

$ more /proc/iomem
00000000-00000fff : reserved
00001000-0009fbff : System RAM
0009fc00-0009ffff : reserved
000a0000-000bffff : PCI Bus 0000:00
  000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000d0000-000dffff : PCI Bus 0000:00
000e4000-000fffff : reserved
  000f0000-000fffff : System ROM
00100000-1f77ffff : System RAM
  01000000-01417c09 : Kernel code
  01417c0a-015b7e7f : Kernel data
  01642000-016d4fff : Kernel bss
1f780000-1f78ffff : ACPI Tables
1f790000-1f7cffff : ACPI Non-volatile Storage
1f7d0000-1f7ddfff : reserved
1f7de000-1f7dffff : RAM buffer
1f7e0000-ffffffff : reserved
  1f810000-ffffffff : PCI Bus 0000:00
    20000000-201fffff : PCI Bus 0000:04
    20200000-203fffff : PCI Bus 0000:04
    20400000-205fffff : PCI Bus 0000:03
    20600000-20600fff : Intel Flush Page
    d0000000-dfffffff : 0000:00:02.0
    e0000000-efffffff : PCI MMCONFIG 0000 [bus 00-ff]
      e0000000-efffffff : pnp 00:09
        e0000000-efffffff : pnp 00:0a
    f0000000-f6ffffff : PCI Bus 0000:01
    f7eb7c00-f7eb7fff : 0000:00:1d.7
      f7eb7c00-f7eb7fff : ehci_hcd
    f7eb8000-f7ebbfff : 0000:00:1b.0
      f7eb8000-f7ebbfff : ICH HD audio
    f7ec0000-f7efffff : 0000:00:02.0
    f7f00000-f7f7ffff : 0000:00:02.0
    f7f80000-f7ffffff : 0000:00:02.1
    f8000000-fbefffff : PCI Bus 0000:01
      f8000000-f800ffff : 0000:01:00.0
        f8000000-f800ffff : ath5k
    fbf00000-fbffffff : PCI Bus 0000:03
      fbfa0000-fbfbffff : 0000:03:00.0
      fbfc0000-fbffffff : 0000:03:00.0
    fec00000-fec003ff : IOAPIC 0
    fed13000-fed19fff : pnp 00:00
    fed1c000-fed1ffff : pnp 00:07
      fed1f410-fed1f414 : iTCO_wdt
        fed1f410-fed1f414 : iTCO_wdt
    fed20000-fed8ffff : pnp 00:07
    fee00000-fee00fff : Local APIC
      fee00000-fee00fff : reserved
        fee00000-fee00fff : pnp 00:08
    fff80000-ffffffff : reserved
Comment 7 Paul Menzel 2014-04-05 16:17:03 UTC
(In reply to comment #5)
> Created attachment 96944 [details] [review] [review]
> Patch to test.
> 
> Please test this patch and then attach the contents of
> /sys/kernel/debug/dri/0/i915_gem_stolen You need debugfs enabled&mounted for
> that ofc.

Thanks. I’ll try to do that after next Tuesday.
Comment 8 Chris Wilson 2014-04-09 08:41:01 UTC
Personally, I think we shouldn't take the risk and reduce our stolen usage accordingly.
Comment 9 Paul Menzel 2014-04-19 09:20:40 UTC
(In reply to comment #5)
> Created attachment 96944 [details] [review] [review]
> Patch to test.
> 
> Please test this patch

Applying this (cosmetic) patch to Linux 3.13.10 the error message is gone.

> and then attach the contents of /sys/kernel/debug/dri/0/i915_gem_stolen
> You need debugfs enabled&mounted for that ofc.

Looking at the patch, I could have done that even without the patch.

$ sudo more /sys/kernel/debug/dri/0/i915_gem_stolen
Stolen:
   ddb9be40: p g      128KiB 40 40 0 0 0 uncached dirty (pinned x 1) (ggtt offset: 00000000, size
: 00020000) (stolen: 00000000) (p mappable)
   ddb9bc40: p g     1500KiB 41 00 0 0 0 uncached (name: 1) (pinned x 1) (display) (ggtt offset: 00020000, size: 00177000) (stolen: 00020000) (p mappable)
Total 2 objects, 1667072 bytes, 1667072 GTT size
$ sudo more /proc/iomem
00000000-00000fff : reserved
00001000-0009fbff : System RAM
0009fc00-0009ffff : reserved
000a0000-000bffff : PCI Bus 0000:00
  000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000d0000-000dffff : PCI Bus 0000:00
000e4000-000fffff : reserved
  000f0000-000fffff : System ROM
00100000-1f77ffff : System RAM
  01000000-013f630b : Kernel code
  013f630c-0158199f : Kernel data
  015fe000-0168cfff : Kernel bss
1f780000-1f78ffff : ACPI Tables
1f790000-1f7cffff : ACPI Non-volatile Storage
1f7d0000-1f7ddfff : reserved
1f7de000-1f7dffff : RAM buffer
1f7e0000-ffffffff : reserved
  1f810000-ffffffff : PCI Bus 0000:00
    20000000-201fffff : PCI Bus 0000:04
    20200000-203fffff : PCI Bus 0000:04
    20400000-205fffff : PCI Bus 0000:03
    20600000-20600fff : Intel Flush Page
    d0000000-dfffffff : 0000:00:02.0
    e0000000-efffffff : PCI MMCONFIG 0000 [bus 00-ff]
      e0000000-efffffff : pnp 00:09
        e0000000-efffffff : pnp 00:0a
    f0000000-f6ffffff : PCI Bus 0000:01
    f7eb7c00-f7eb7fff : 0000:00:1d.7
      f7eb7c00-f7eb7fff : ehci_hcd
    f7eb8000-f7ebbfff : 0000:00:1b.0
      f7eb8000-f7ebbfff : ICH HD audio
    f7ec0000-f7efffff : 0000:00:02.0
    f7f00000-f7f7ffff : 0000:00:02.0
    f7f80000-f7ffffff : 0000:00:02.1
    f8000000-fbefffff : PCI Bus 0000:01
      f8000000-f800ffff : 0000:01:00.0
        f8000000-f800ffff : ath5k
    fbf00000-fbffffff : PCI Bus 0000:03
      fbfa0000-fbfbffff : 0000:03:00.0
      fbfc0000-fbffffff : 0000:03:00.0
    fec00000-fec003ff : IOAPIC 0
    fed13000-fed19fff : pnp 00:00
    fed1c000-fed1ffff : pnp 00:07
      fed1f410-fed1f414 : iTCO_wdt
        fed1f410-fed1f414 : iTCO_wdt
    fed20000-fed8ffff : pnp 00:07
    fee00000-fee00fff : Local APIC
      fee00000-fee00fff : reserved
        fee00000-fee00fff : pnp 00:08
    fff80000-ffffffff : reserved
Comment 10 minion 2014-04-20 08:23:27 UTC
Hi.  I have this.  Installed Xubuntu 14.04 two days ago.  During boot up, I get

 [  11.215838] [drm:i915_stolen_to_physical] *ERROR* conflict detected with stolen region: [0x7f800000 - 0x80000000]

I am using an Eee pc 701sd which was previously running Xubuntu 12.04 with no problems.  No other glitches in use as far as I am aware.  I have searched for fixes and run update regularly, but don't understand a lot of the language in bug posts!  From what I understand it is a conflict with the Intel i915 hardware.  I did see one fix that said you just need to change gen 3 to gen 6.  If this is the solution, please could you tell me how to do that.  I'm not a great technical expert, but do use the terminal.  Thanks!
Comment 11 Jesse Barnes 2014-12-04 21:29:33 UTC
Given the decode priority on our GMCHs, it's fine if the regions overlap.  However it doesn't look like there's a nice way to detect it.  In this case, part of the range occupied by the stolen space is simply "reserved" per the E820, but the rest of it is under the bus 0 range (which kind of makes sense too).

So I guess the gen3 hack is fine, unless we want to get fancy and check for a bus 0 allocation and sub-allocate under that.  Daniel, do you want to push it?
Comment 12 Jani Nikula 2014-12-08 12:50:23 UTC
commit ee86e80a6f976e76bcdb5f2071a9d07f5fd63c61
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date:   Fri Apr 11 15:55:17 2014 +0200

    drm/i915: Don't complain about stolen conflicts on gen3


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.