Summary: | nouveau_fence.c kernel BUG and recursive faults | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | xorg | Reporter: | Pekka Paalanen <ppaalanen> | ||||||||
Component: | Driver/nouveau | Assignee: | Nouveau Project <nouveau> | ||||||||
Status: | RESOLVED FIXED | QA Contact: | Xorg Project Team <xorg-team> | ||||||||
Severity: | normal | ||||||||||
Priority: | medium | ||||||||||
Version: | git | ||||||||||
Hardware: | x86-64 (AMD64) | ||||||||||
OS: | Linux (All) | ||||||||||
Whiteboard: | |||||||||||
i915 platform: | i915 features: | ||||||||||
Attachments: |
|
Created attachment 27648 [details]
kernel log
Created attachment 27759 [details]
kernel log
The same happens with NV18.
Removing the patch:
drm/nouveau: protect fence pending list with Spinlock
commit: ed6cc42c377ed125e6b95e0808883a8a47f137c2
this works.
It already works well, I think it's because: drm/nouveau: fix BUG_ON() on UP systems, spin_is_locked() always returns 0 commit: f248e95a848d3e70be395862fdf512ffdfcecd51 thanks (In reply to comment #3) > It already works well, I think it's because: > > drm/nouveau: fix BUG_ON() on UP systems, spin_is_locked() always returns 0 > commit: f248e95a848d3e70be395862fdf512ffdfcecd51 > > thanks > Yup, confirmed here, too. Latest DRM works just fine. |
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.
Created attachment 27647 [details] Xorg log Nouveau, KMS enabled and working fine, NV28 card. DRM modules from nouveau/linux-2.6 git, v2.6.31-rc2-65-g7525cc6, branch master-compat, commit 7525cc6ddc45772f78aa40fe0a767f512f2ae1ed "Clarify nouveau/DEPENDS file.". This branch is up-to-date with master branch commit "drm/nouveau: allow celcius on nv20". The host kernel is 2.6.28-gentoo-r5. When trying to start X, screen blinks, goes black, kernel hits BUGs, but the machine does not hang. SysRq can unlock the keyboard, but I do not get the console back, screen stays black. The kernel recommends a reboot after the recursive fault. Attaching X.org log (nothing really interesting), and the kernel log with drm debug=1, except all debug messages starting in nouveau_hw.h disabled (they overflow the kernel message buffer and I hear they make I2C/DDC fail). I'm guessing a way to reproduce this would be to remove e.g. NVxxTCL object from the list of allowed grobjs, and then starting X. Missing NV11TCL was how I first hit this kind of bug, but adding that did not fix everything. Probably something wrong in the nouveau DRM error paths.