[driverloader] kernel oops on X11 shutdown with stk16 kernel

Rich Ibbotson richibb at rochester.rr.com
Sun Oct 3 09:00:35 EDT 2004


Hi all,

I'm having some difficulties getting driverloader running on my Fedora
Core 2 system.  Actually, it's not the driverloader code that is the
problem, it's the "stk16" kernel that I'm using to get around the 4k
stack restriction in the FC2 kernel.

The problem:
When I boot using the 2.6.8-1.521.stk16.i686 replacement kernel, running
in runlevel 5, all is well until I log out of a kde session.  At that
point, instead of getting a graphical login screen, the X server crashes
and I see a kernel oops. I've included the relevant bits of
/var/log/messages and /var/log/Xorg.0.log below.

Note that I am not sure whether or not this is due to the 4k/16k patch.
I've built a kernel from the sources for 2.6.8-1.521 (from Fedora Core
2) with only the change to disable 4 GB kernel-space/user-space vm
support (no 16k stack patch), and I see slightly different problems -
sometimes an oops at logout, sometimes a system freeze when I log in
graphically, sometimes it works fine.

Any ideas?  I've tried building a custom kernel starting from the stk16
source but re-enabling 4G/4G virtual memory - the resulting kernel
doesn't even boot.  Last thing I see is "Uncompressing Linux... OK,
booting the kernel".

thanks for any help,
Rich

Relevant part of /var/log/messages:

Oct  3 06:18:00 sparky gconfd (rich-2929): Received signal 1, shutting down cleanly
Oct  3 06:18:00 sparky gconfd (rich-2929): Exiting
Oct  3 06:18:01 sparky gdm(pam_unix)[2688]: session closed for user rich
Oct  3 06:18:02 sparky kernel: mtrr: base(0xe8020000) is not aligned on a size(0x180000) boundary
Oct  3 06:18:04 sparky kernel: Unable to handle kernel paging request at virtual address d5001000
Oct  3 06:18:04 sparky kernel:  printing eip:
Oct  3 06:18:04 sparky kernel: c0151259
Oct  3 06:18:04 sparky kernel: *pde = 15001163
Oct  3 06:18:04 sparky kernel: Oops: 0003 [#1]
Oct  3 06:18:04 sparky kernel: Modules linked in: snd_intel8x0
snd_ac97_codec snd_pcm snd_timer snd_page_alloc gameport snd_mpu401_uart
snd_rawmidi snd_seq_device snd soundcore i830 md5 ipv6 parport_pc lp
parport autofs4 ds yenta_socket pcmcia_core sunrpc e100 mii ipt_REJECT
ipt_state ip_conntrack iptable_filter ip_tables sg scsi_mod microcode
dm_mod uhci_hcd ehci_hcd button battery asus_acpi ac ext3 jbd
Oct  3 06:18:04 sparky kernel: CPU:    0
Oct  3 06:18:04 sparky kernel: EIP:    0060:[<c0151259>]    Not tainted
Oct  3 06:18:04 sparky kernel: EFLAGS: 00010206   (2.6.8-1.521.stk16)
Oct  3 06:18:04 sparky kernel: EIP is at do_anonymous_page+0xd8/0x2ba
Oct  3 06:18:04 sparky kernel: eax: 00000000   ebx: dedca6c0   ecx: 00000400   edx: ffffc000
Oct  3 06:18:04 sparky kernel: esi: 00000000   edi: d5001000   ebp: c12a0020   esp: d3e17ea0
Oct  3 06:18:04 sparky kernel: ds: 007b   es: 007b   ss: 0068
Oct  3 06:18:04 sparky kernel: Process hotplug (pid: 3054, threadinfo=d3e14000 task=d878a780)
Oct  3 06:18:04 sparky kernel: Stack: d5001000 cfd76270 d622e618 00000000 d405c004 dedca6c0 c0151490 d405c004
Oct  3 06:18:04 sparky kernel:        00000001 00586660 c017c120 d3e17eec 00000000 00000000 c13df620 00586660
Oct  3 06:18:04 sparky kernel:        cfd76270 00000001 dedca6c0 00586660 d405c004 cfd76270 c0151ae 00000001
Oct  3 06:18:04 sparky kernel: Call Trace:
Oct  3 06:18:04 sparky kernel:  [<c0151490>] do_no_page+0x55/0x43b
Oct  3 06:18:04 sparky kernel:  [<c017c120>] dput+0x18/0x4d8
Oct  3 06:18:04 sparky kernel:  [<c0151a6e>] handle_mm_fault+0xe6/0x234
Oct  3 06:18:04 sparky kernel:  [<c011944c>] do_page_fault+0x159/0x477
Oct  3 06:18:04 sparky kernel:  [<c016181c>] dentry_open+0x15c/0x180
Oct  3 06:18:04 sparky kernel:  [<c01616ba>] filp_open+0x36/0x3c
Oct  3 06:18:04 sparky kernel:  [<c01dd08d>] direct_strncpy_from_user+0x29/0x3d
Oct  3 06:18:04 sparky kernel:  [<c0176f3c>] sys_ioctl+0x20/0x354
Oct  3 06:18:04 sparky kernel:  [<c01192f3>] do_page_fault+0x0/0x477
Oct  3 06:18:04 sparky kernel:  [<c02ffce3>] error_code+0x2f/0x38
Oct  3 06:18:04 sparky kernel: Code: f3 ab 8b 04 24 ba 16 00 00 00 e8 11 98 fc ff 81 7b 54 3c 4b
Oct  3 06:18:04 sparky kernel:  <6>note: hotplug[3054] exited with preempt_count 1
Oct  3 06:18:04 sparky kernel: Debug: sleeping function called from invalid context at include/linux/rwsem.h:43
Oct  3 06:18:04 sparky kernel: in_atomic():1[expected: 0], irqs_disabled():0
Oct  3 06:18:04 sparky kernel:  [<c011cafd>] __might_sleep+0x82/0x8c
Oct  3 06:18:04 sparky kernel:  [<c0122933>] do_exit+0xd8/0x767
Oct  3 06:18:04 sparky kernel:  [<c01067cb>] do_divide_error+0x0/0xaa
Oct  3 06:18:04 sparky kernel:  [<c0119614>] do_page_fault+0x321/0x477
Oct  3 06:18:04 sparky kernel:  [<c0151259>] do_anonymous_page+0xd8/0x2ba
Oct  3 06:18:04 sparky kernel:  [<e00bbb47>] journal_stop+0x4e0/0x4ea [jbd]
Oct  3 06:18:04 sparky kernel:  [<e00f244a>] __ext3_journal_stop+0x19/0x34 [ext3]
Oct  3 06:18:04 sparky kernel:  [<e00eeec6>] ext3_dirty_inode+0x5b/0x5f [ext3]
Oct  3 06:18:04 sparky kernel:  [<c018a7f0>] __mark_inode_dirty+0x28/0x251
Oct  3 06:18:04 sparky kernel:  [<c01400cb>] find_get_page+0x83/0xfe
Oct  3 06:18:04 sparky kernel:  [<c01410dc>] filemap_nopage+0x164/0x2bf
Oct  3 06:18:04 sparky kernel:  [<c01192f3>] do_page_fault+0x0/0x477
Oct  3 06:18:04 sparky kernel:  [<c02ffce3>] error_code+0x2f/0x38
Oct  3 06:18:04 sparky kernel:  [<c015007b>] zeromap_pte_range+0x4a/0x4f
Oct  3 06:18:04 sparky kernel:  [<c0151259>] do_anonymous_page+0xd8/0x2ba
Oct  3 06:18:04 sparky kernel:  [<c0151490>] do_no_page+0x55/0x43b
Oct  3 06:18:04 sparky kernel:  [<c017c120>] dput+0x18/0x4d8
Oct  3 06:18:04 sparky kernel:  [<c0151a6e>] handle_mm_fault+0xe6/0x234
Oct  3 06:18:04 sparky kernel:  [<c011944c>] do_page_fault+0x159/0x477
Oct  3 06:18:04 sparky kernel:  [<c016181c>] dentry_open+0x15c/0x180
Oct  3 06:18:04 sparky kernel:  [<c01616ba>] filp_open+0x36/0x3c
Oct  3 06:18:04 sparky kernel:  [<c01dd08d>] direct_strncpy_from_user+0x29/0x3d
Oct  3 06:18:04 sparky kernel:  [<c0176f3c>] sys_ioctl+0x20/0x354
Oct  3 06:18:04 sparky kernel:  [<c01192f3>] do_page_fault+0x0/0x477
Oct  3 06:18:04 sparky kernel:  [<c02ffce3>] error_code+0x2f/0x38
Oct  3 06:18:04 sparky kernel: bad: scheduling while atomic!
Oct  3 06:18:04 sparky kernel:  [<c02fd535>] schedule+0x2d/0x59a
Oct  3 06:18:04 sparky kernel:  [<c010640e>] dump_stack+0x11/0x13
Oct  3 06:18:04 sparky kernel:  [<c011cafd>] __might_sleep+0x82/0x8c
Oct  3 06:18:04 sparky kernel:  [<c0122938>] do_exit+0xdd/0x767
Oct  3 06:18:04 sparky kernel:  [<c01067cb>] do_divide_error+0x0/0xaa
Oct  3 06:18:04 sparky kernel:  [<c0119614>] do_page_fault+0x321/0x477
Oct  3 06:18:04 sparky kernel:  [<c0151259>] do_anonymous_page+0xd8/0x2ba
Oct  3 06:18:04 sparky kernel:  [<e00bbb47>] journal_stop+0x4e0/0x4ea [jbd]
Oct  3 06:18:04 sparky kernel:  [<e00f244a>] __ext3_journal_stop+0x19/0x34 [ext3]
Oct  3 06:18:04 sparky kernel:  [<e00eeec6>] ext3_dirty_inode+0x5b/0x5f [ext3]
Oct  3 06:18:04 sparky kernel:  [<c018a7f0>] __mark_inode_dirty+0x28/0x251
Oct  3 06:18:04 sparky kernel:  [<c01400cb>] find_get_page+0x83/0xfe
Oct  3 06:18:04 sparky kernel:  [<c01410dc>] filemap_nopage+0x164/0x2bf
Oct  3 06:18:04 sparky kernel:  [<c01192f3>] do_page_fault+0x0/0x477
Oct  3 06:18:04 sparky kernel:  [<c02ffce3>] error_code+0x2f/0x38
Oct  3 06:18:04 sparky kernel:  [<c015007b>] zeromap_pte_range+0x4a/0x4f
Oct  3 06:18:04 sparky kernel:  [<c0151259>] do_anonymous_page+0xd8/0x2ba
Oct  3 06:18:04 sparky kernel:  [<c0151490>] do_no_page+0x55/0x43b
Oct  3 06:18:04 sparky kernel:  [<c017c120>] dput+0x18/0x4d8
Oct  3 06:18:04 sparky kernel:  [<c0151a6e>] handle_mm_fault+0xe6/0x234
Oct  3 06:18:04 sparky kernel:  [<c011944c>] do_page_fault+0x159/0x477
Oct  3 06:18:04 sparky kernel:  [<c016181c>] dentry_open+0x15c/0x180
Oct  3 06:18:04 sparky kernel:  [<c01616ba>] filp_open+0x36/0x3c
Oct  3 06:18:04 sparky kernel:  [<c01dd08d>] direct_strncpy_from_user+0x29/0x3d
Oct  3 06:18:04 sparky kernel:  [<c0176f3c>] sys_ioctl+0x20/0x354
Oct  3 06:18:04 sparky kernel:  [<c01192f3>] do_page_fault+0x0/0x477
Oct  3 06:18:04 sparky kernel:  [<c02ffce3>] error_code+0x2f/0x38


Relevant part of Xorg.0.log:

(II) I810(0): [drm] removed 1 reserved context for kernel
(II) I810(0): [drm] unmapping 8192 bytes of SAREA 0xe0212000 at 0xb7ef2000
(WW) I810(0): Setting the original video mode instead of restoring
         the saved state
(II) I810(0): xf86UnbindGARTMemory: unbind key 7
(II) I810(0): xf86UnbindGARTMemory: unbind key 0
(II) I810(0): xf86UnbindGARTMemory: unbind key 2
(II) I810(0): xf86UnbindGARTMemory: unbind key 1
(II) I810(0): xf86UnbindGARTMemory: unbind key 3
(II) I810(0): xf86UnbindGARTMemory: unbind key 4
(II) I810(0): xf86UnbindGARTMemory: unbind key 5
(II) I810(0): xf86UnbindGARTMemory: unbind key 6
(WW) Open APM failed (/dev/apm_bios) (No such device)
(II) Loading sub module "int10"
(II) LoadModule: "int10"
(II) Reloading /usr/X11R6/lib/modules/linux/libint10.a
(II) I810(0): initializing int10
(II) I810(0): Primary V_BIOS segment is: 0xc000
(II) I810(0): VESA BIOS detected
(II) I810(0): VESA VBE Version 3.0
(II) I810(0): VESA VBE Total Mem: 8000 kB
(II) I810(0): VESA VBE OEM: Intel(r)852MG/852MGE/855MG/855MGE Graphics Chip Accelerated VGA BIOS
(II) I810(0): VESA VBE OEM Software Rev: 1.0
(II) I810(0): VESA VBE OEM Vendor: Intel Corporation
(II) I810(0): VESA VBE OEM Product: Intel(r)852MG/852MGE/855MG/855MGE Graphics Controller
(II) I810(0): VESA VBE OEM Product Rev: Hardware Version 0.0
(==) I810(0): Default visual is TrueColor
(II) I810(0): Allocated 128 kB for the ring buffer at 0x0
(II) I810(0): Allocating at least 768 scanlines for pixmap cache
(II) I810(0): Initial framebuffer allocation size: 3072 kByte
(II) I810(0): Allocated 4 kB for HW cursor at 0x7fff000 (0x16222000)
(II) I810(0): Allocated 4 kB for Overlay registers at 0x7ffe000 (0x16247000).
(II) I810(0): Allocated 64 kB for the scratch buffer at 0x7fee000
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmGetBusid returned ''
(II) I810(0): [drm] created "i830" driver at busid "PCI:0:2:0"
(II) I810(0): [drm] added 8192 byte SAREA at 0xe0212000
(II) I810(0): [drm] mapped SAREA 0xe0212000 to 0xb7e52000
(II) I810(0): [drm] framebuffer handle = 0xe8020000
(II) I810(0): [drm] added 1 reserved context for kernel
(II) I810(0): Allocated 1536 kB for the back buffer at 0x7c00000.
(II) I810(0): Allocated 1536 kB for the depth buffer at 0x7a00000.
(II) I810(0): Allocated 32 kB for the logical context at 0x79f8000.
(II) I810(0): Allocated 1024 kB for the DMA buffers at 0x78f8000.
(II) I810(0): Allocated 25088 kB for textures at 0xfe780000
(II) I810(0): Updated framebuffer allocation size from 3072 to 3352 kByte
(II) I810(0): Updated pixmap cache from 768 scanlines to 908 scanlines
(II) I810(0): 0x960cacc: Memory at offset 0x00020000, size 3352 kBytes
(II) I810(0): 0x960caec: Memory at offset 0x07fff000, size 4 kBytes
(II) I810(0): 0x960cb10: Memory at offset 0x00000000, size 128 kBytes
(II) I810(0): 0x960cb40: Memory at offset 0x07fee000, size 64 kBytes
(II) I810(0): 0x960cb60: Memory at offset 0x07ffe000, size 4 kBytes
(II) I810(0): 0x960cb80: Memory at offset 0x07c00000, size 1536 kBytes
(II) I810(0): 0x960cba0: Memory at offset 0x07a00000, size 1536 kBytes
(II) I810(0): 0x960cc00: Memory at offset 0x079f8000, size 32 kBytes
(II) I810(0): 0x960cbe0: Memory at offset 0x078f8000, size 1024 kBytes
(II) I810(0): 0x960cbc0: Memory at offset 0x00366000, size 25088 kBytes
(II) I810(0): Activating tiled memory for the back buffer.
(II) I810(0): Activating tiled memory for the depth buffer.
(II) I810(0): [drm] Registers = 0xe0000000
(II) I810(0): [drm] Back Buffer = 0xefc00000
(II) I810(0): [drm] Depth Buffer = 0xefa00000
(II) I810(0): [drm] DMA Buffers = 0xef8f8000
(II) I810(0): [drm] ring buffer = 0xe8000000
(II) I810(0): [drm] textures = 0xe8366000
(II) I810(0): [drm] added 256 4096 byte DMA buffers
(II) I810(0): [drm] dma control initialized, using IRQ -1007
(II) I810(0): [dri] visual configs initialized
(==) I810(0): Write-combining range (0xe8000000,0x8000000)
(II) I810(0): vgaHWGetIOBase: hwp->IOBase is 0x03d0, hwp->PIOOffset is 0x0000
(II) I810(0): xf86BindGARTMemory: bind key 7 at 0x007df000 (pgoffset 2015)
(II) I810(0): xf86BindGARTMemory: bind key 0 at 0x07fff000 (pgoffset 32767)
(II) I810(0): xf86BindGARTMemory: bind key 2 at 0x07fee000 (pgoffset 32750)
(II) I810(0): xf86BindGARTMemory: bind key 1 at 0x07ffe000 (pgoffset 32766)
(II) I810(0): xf86BindGARTMemory: bind key 3 at 0x07c00000 (pgoffset 31744)
(II) I810(0): xf86BindGARTMemory: bind key 4 at 0x07a00000 (pgoffset 31232)
(II) I810(0): xf86BindGARTMemory: bind key 5 at 0x079f8000 (pgoffset 31224)
(II) I810(0): xf86BindGARTMemory: bind key 6 at 0x078f8000 (pgoffset 30968)
(II) I810(0): Display plane A is disabled.
(II) I810(0): Display plane B is enabled.
(II) I810(0): PIPEACONF is 0x80000000
(II) I810(0): PIPEBCONF is 0x80000000
(II) I810(0): Mode bandwidth is 47 Mpixel/s
(II) I810(0): maxBandwidth is 1152 Mbyte/s, pipe bandwidths are 126 Mbyte/s, 0 Mbyte/s
(II) I810(0): LFP compensation mode: 0x6
(II) I810(0): Initializing HW Cursor
(**) I810(0): DPMS enabled
(II) I810(0): X context handle = 0x00000001
(II) I810(0): [drm] installed DRM signal handler
(II) I810(0): [DRI] installation complete
(II) I810(0): direct rendering: Enabled
(==) RandR enabled

    *** If unresolved symbols were reported above, they might not
    *** be the reason for the server aborting.

Fatal server error:
Caught signal 4.  Server aborting


Please consult the The X.Org Foundation support
          at http://wiki.X.Org
  for help.
Please also check the log file at "/var/log/Xorg.0.log" for additional
information.

(EE) Couldn't load XKB keymap, falling back to pre-XKB keymap
(II) Mouse0: ps2EnableDataReporting: succeeded
(II) I810(0): [drm] removed 1 reserved context for kernel
(II) I810(0): [drm] unmapping 8192 bytes of SAREA 0xe0212000 at 0xb7e52000
(WW) I810(0): Setting the original video mode instead of restoring
         the saved state
(II) I810(0): xf86UnbindGARTMemory: unbind key 7
(II) I810(0): xf86UnbindGARTMemory: unbind key 0
(II) I810(0): xf86UnbindGARTMemory: unbind key 2
(II) I810(0): xf86UnbindGARTMemory: unbind key 1
(II) I810(0): xf86UnbindGARTMemory: unbind key 3
(II) I810(0): xf86UnbindGARTMemory: unbind key 4
(II) I810(0): xf86UnbindGARTMemory: unbind key 5
(II) I810(0): xf86UnbindGARTMemory: unbind key 6



More information about the driverloader mailing list