[Bug 67813] [HSW bisected]igt/module_reload causes [drm:hsw_unclaimed_reg_check] *ERROR* Unclaimed write to 44004 and system hang with headless, with power well disabled
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Thu Nov 28 12:14:49 PST 2013
https://bugs.freedesktop.org/show_bug.cgi?id=67813
--- Comment #39 from Paulo Zanoni <przanoni at gmail.com> ---
(In reply to comment #38)
> I did some more investigation, and it seems the Kernel gets stuck on an
> infinite loop that keeps calling VGA. I added some printks, and I at the
> moment we do the "echo 0" to the bind file
(accidentally hit the "Save Changes" button)
I did some more investigation, and it seems the Kernel gets stuck on an
infinite loop that keeps calling VGA functions. I added some printks, and at
the moment we do the "echo 0" to the bind file, we keep printing this forever:
[ 431.878277] === write_vga
[ 431.878278] === vgacon_set_cursor_size
[ 431.878297] [drm:intel_uncore_check_errors] *ERROR* Unclaimed register
before interrupt
[ 431.878331] === vgacon_cursor
[ 431.878332] === vgacon_restore_screen
[ 431.878332] === write_vga
[ 431.878333] === vgacon_set_cursor_size
[ 431.878373] === vgacon_dummy
[ 431.878373] === vgacon_scroll
[ 431.878374] === vgacon_restore_screen
[ 431.878374] === vgacon_scrollback_update
[ 431.878435] === vga_set_mem_top
[ 431.878435] === write_vga
[ 431.878439] === vgacon_dummy
[ 431.878440] === vgacon_scroll
[ 431.878440] === vgacon_restore_screen
[ 431.878440] === vgacon_scrollback_update
[ 431.878501] === vga_set_mem_top
[ 431.878502] === write_vga
[ 431.878503] === vgacon_cursor
[ 431.878503] === vgacon_restore_screen
[ 431.878504] === write_vga
[ 431.878505] === vgacon_set_cursor_size
[ 431.878524] [drm:intel_uncore_check_errors] *ERROR* Unclaimed register
before interrupt
[ 431.878559] === vgacon_cursor
[ 431.878559] === vgacon_restore_screen
[ 431.878559] === write_vga
[ 431.878560] === vgacon_set_cursor_size
[ 431.878601] === vgacon_dummy
[ 431.878601] === vgacon_scroll
Also, the function that triggers the unclaimed register is clearly
vgacon_set_cursor_size.
It looks like we're stuck in an infinite loop inside console_unlock.
The code that seems to fix the problem is just:
vga_get_uninterruptible(dev->pdev, VGA_RSRC_LEGACY_IO);
val = inb(VGA_MSR_READ);
outb(val & ~VGA_MSR_MEM_EN, VGA_MSR_WRITE);
vga_set_legacy_decoding(dev->pdev, VGA_RSRC_LEGACY_IO | VGA_RSRC_NORMAL_IO
|VGA_RSRC_NORMAL_MEM);
vga_put(dev->pdev, VGA_RSRC_LEGACY_IO);
--
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20131128/fa8b4362/attachment.html>
More information about the intel-gfx-bugs
mailing list