Project

General

Profile

Bug #2733

i915 drm issue rendering xserver unusable

Added by masu over 2 years ago. Updated over 2 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
11/12/2014
Due date:
% Done:

0%


Description

Hi,

a firmware error of the wifi nic occurrs right after drm is started when starting xserver on my machine.
The nic is automatically reset afterwards and drm becomes initialized.

But then during the X session the nic error occurrs again resulting in an unsuccessful restart that causes also drm to fail which in effect leaves the X console unresponsive.
Strangely this effect appears when browsing the Internet and not when e.g., installing packages from remote locations that also generates network traffic over the wifi nic.

Does someone has a Lenovo X61 and experiences the same problems?

An excerpt from /var/log/messages is attached.

Regards
Matthias

messages (26.1 KB) masu, 11/12/2014 01:39 PM

xorg.conf View (4.04 KB) masu, 11/13/2014 04:02 AM

0001-drm-i915-revert-part-of-Make-the-GEM-code-more-Linux.patch View - Reverts part of commit d1c259eee6a290aadce1c78a746e131034aba76 (4.42 KB) ftigeot, 11/22/2014 01:30 PM


Related issues

Related to Bug #2675: Ultimate N WiFi Link 5300 get iwn_intr: fatal firmware error on 5GHz New 05/28/2014

History

#1 Updated by swildner over 2 years ago

Can you try adding "-ht" to your ifconfig_wlan0 line in rc.conf? This disables "high throughput". It seems there are issues with 802.11n (which we don't support for iwn(4) anyway, afaik).

#2 Updated by swildner over 2 years ago

  • Related to Bug #2675: Ultimate N WiFi Link 5300 get iwn_intr: fatal firmware error on 5GHz added

#3 Updated by masu over 2 years ago

After adding "-ht" parameter to ifconfig string I have not seen a
firmware error anymore, but the X console still freezes when using a
browser (tried with firefox and midori).

messages contains the following log (starting with drm initialization):

Nov 13 12:24:46 MisterX kernel: info: [drm] Initialized drm 1.1.0 20060810
Nov 13 12:24:46 MisterX kernel: drm0 on vgapci0
Nov 13 12:24:46 MisterX kernel: info: [drm] AGP at 0xe0000000 256MB
Nov 13 12:24:46 MisterX kernel: iicbus0: <Philips I2C bus> on iicbb0
addr 0xff
Nov 13 12:24:46 MisterX kernel: iicbus2: <Philips I2C bus> on iicbb1
addr 0xff
Nov 13 12:24:46 MisterX kernel: iicbus4: <Philips I2C bus> on iicbb2
addr 0xff
Nov 13 12:24:46 MisterX kernel: iicbus6: <Philips I2C bus> on iicbb3
addr 0xff
Nov 13 12:24:46 MisterX kernel: iicbus8: <Philips I2C bus> on iicbb4
addr 0xff
Nov 13 12:24:46 MisterX kernel: iicbus10: <Philips I2C bus> on iicbb5
addr 0xff
Nov 13 12:24:46 MisterX kernel: info: [drm] Supports vblank timestamp
caching Rev 1 (10.10.2010).
Nov 13 12:24:46 MisterX kernel: info: [drm] Driver supports precise
vblank timestamp query.
Nov 13 12:24:46 MisterX kernel: drm0: taking over the fictitious range
0xe0000000-0xf0000000
Nov 13 12:24:46 MisterX kernel: info: [drm] initialized overlay support
Nov 13 12:24:46 MisterX kernel: info: [drm] Initialized i915 1.6.0 20080730
Nov 13 12:25:27 MisterX kernel: error: [drm:pid-1:i915_hangcheck_hung]
*ERROR* Hangcheck timer elapsed... GPU hung
Nov 13 12:25:27 MisterX kernel: error: [drm:pid-1:init_ring_common]
*ERROR* render ring initialization failed ctl 00000000 head 00000000
tail 00000000 start 00000000
Nov 13 12:25:39 MisterX syslogd: exiting on signal 15

As you can see in the last log lines, there is still something wrong
with drm.

Now I thought that this is an xorg issue, searched the Internet for
fixes and found a few for Linux that modify the "AccelMethod" parameter
in the graphics card section (change it to "XAA", "EXA", ...). Tried
them all, but nothing helped.

Regards
Matthias

Am 12.11.2014 um 23:36 schrieb :
> Issue #2733 has been updated by swildner.
>
>
> Can you try adding "-ht" to your ifconfig_wlan0 line in rc.conf? This disables "high throughput". It seems there are issues with 802.11n (which we don't support for iwn(4) anyway, afaik).
>
>
> ----------------------------------------
> Bug #2733: iwn firmware error rendering xserver unusable
> http://bugs.dragonflybsd.org/issues/2733#change-12278
>
> * Author: masu
> * Status: New
> * Priority: Normal
> * Assignee:
> * Category:
> * Target version:
> ----------------------------------------
> Hi,
>
> a firmware error of the wifi nic occurrs right after drm is started when starting xserver on my machine.
> The nic is automatically reset afterwards and drm becomes initialized.
>
> But then during the X session the nic error occurrs again resulting in an unsuccessful restart that causes also drm to fail which in effect leaves the X console unresponsive.
> Strangely this effect appears when browsing the Internet and not when e.g., installing packages from remote locations that also generates network traffic over the wifi nic.
>
> Does someone has a Lenovo X61 and experiences the same problems?
>
> An excerpt from /var/log/messages is attached.
>
> Regards
> Matthias
>
> ---Files--------------------------------
> messages (26.1 KB)
>
>

#4 Updated by masu over 2 years ago

masu wrote:
> After adding "-ht" parameter to ifconfig string I have not seen a
> firmware error anymore, but the X console still freezes when using a
> browser (tried with firefox and midori).

Firmware error is still present when using "-ht" parameter to ifconfig, seems I have not run the machine long enough.

#5 Updated by masu over 2 years ago

  • Subject changed from iwn firmware error rendering xserver unusable to i915 drm issue rendering xserver unusable

The firmware error does not seem anything to do with the X server freeze.

Found the X server error to be introduced with the following commit:
http://gitweb.dragonflybsd.org/dragonfly.git/commit/d1c259eee6a290aadce1c78a746e131034aba76a

Please can somebody have a look into this who knows i915 drm internals?

Regards
Matthias

#6 Updated by ftigeot over 2 years ago

I have created a new git branch with the above commit reverted and then re-imported in small steps:

http://gitweb.dragonflybsd.org/~ftigeot/dragonfly.git/shortlog/refs/heads/drm_i915_november_fix

You can use it by adding my leaf repo as a remote to yours from this url:
git://leaf.dragonflybsd.org/~ftigeot/dragonfly.git

And then checkout the drm_i915_november_fix branch

Detailed instructions:

git remote add leaf git://leaf.dragonflybsd.org/~ftigeot/dragonfly.git
git branch drm_i915_november_fix leaf/drm_i915_november_fix
git checkout drm_i915_november_fix

Please report which one of the smaller commits break X11 on your machine

#7 Updated by masu over 2 years ago

I assume I can use the quickkernel target for successive versions after building the first one, right?

#8 Updated by ftigeot over 2 years ago

Right.

#9 Updated by masu over 2 years ago

Got the following error when comiling
http://gitweb.dragonflybsd.org/~ftigeot/dragonfly.git/commit/61f5eb563b28c318b9eead0dc0dd1878719e07f2

/usr/src/sys/dev/drm/i915/i915_gem.c: In function 'i915_gem_pread_ioctl':
/usr/src/sys/dev/drm/i915/i915_gem.c:410:43: error: 'DRM_I915_GEM' undeclared (first use in this function)
/usr/src/sys/dev/drm/i915/i915_gem.c:410:43: note: each undeclared identifier is reported only once for each function it appears in
/usr/src/sys/dev/drm/i915/i915_gem.c: In function 'i915_gem_pwrite_ioctl':
/usr/src/sys/dev/drm/i915/i915_gem.c:490:43: error: 'DRM_I915_GEM' undeclared (first use in this function)
/usr/src/sys/dev/drm/i915/i915_gem.c:521:3: error: too few arguments to function 'i915_gem_object_pin'
In file included from /usr/src/sys/dev/drm/i915/i915_gem.c:60:0:
/usr/src/sys/dev/drm/i915/i915_drv.h:1409:18: note: declared here
*** Error code 1

#10 Updated by ftigeot over 2 years ago

Sorry about that, I have created a new branch ensuring all individual commits compile with the recent changes in -master:

http://gitweb.dragonflybsd.org/~ftigeot/dragonfly.git/shortlog/refs/heads/drm_i915_november_fix2

#11 Updated by masu over 2 years ago

#12 Updated by cnb over 2 years ago

for the iwn issue try adding this to your /boot/loader.conf
hw.ioapic_enable=0

#13 Updated by masu over 2 years ago

Thanks, but I do not have a loader variable hw.ioapci_enable in my current dfly version (at least it is not documented in 'man acpi') since I run a modified tree from Francois at the moment.

Which version introduced this variable?

#14 Updated by ftigeot over 2 years ago

Could you switch back to master and apply this additional commit with git am ? It's a revert of the first wrong subcommit.

#15 Updated by masu over 2 years ago

Seems to work fine, thank you!

#16 Updated by ftigeot over 2 years ago

  • Status changed from New to Resolved

The partial revert has been pushed to master, as commit# 7e793f0f65ddb0079aff564e23816504c945f876.

Thanks for testing !

Also available in: Atom PDF