Bug 9158 - OOPS while bluetooth reconnect
Summary: OOPS while bluetooth reconnect
Status: RESOLVED CODE_FIX
Alias: None
Product: Drivers
Classification: Unclassified
Component: Input Devices (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Dmitry Torokhov
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-10-13 04:55 UTC by Ortwin Glück
Modified: 2007-10-23 11:42 UTC (History)
3 users (show)

See Also:
Kernel Version: 2.6.23
Subsystem:
Regression: Yes
Bisected commit-id:


Attachments

Description Ortwin Glück 2007-10-13 04:55:49 UTC
Most recent kernel where this bug did not occur: 2.6.22.9
Distribution: Gentoo (vanilla kernel)

I left my MacBook Pro alone for some minutes. Usually the Bluetooth Mouse (Apple Mighty Mouse) goes into some kind of suspend mode after some time. When I came back and moved the mouse it probably tried to reconnect. That's when I saw the OOPS in the log:

Oct 13 13:20:23 mithril BUG: unable to handle kernel paging request at virtual address 00100100
Oct 13 13:20:23 mithril printing eip:
Oct 13 13:20:23 mithril c02e8ec1
Oct 13 13:20:23 mithril *pde = 35b58067
Oct 13 13:20:23 mithril *pte = 00000000
Oct 13 13:20:23 mithril Oops: 0000 [#1]
Oct 13 13:20:23 mithril PREEMPT SMP
Oct 13 13:20:23 mithril Modules linked in: uvcvideo compat_ioctl32 videodev v4l1_compat v4l2_common fglrx(P) ndiswrapper ipv6 rfcomm sha1 video output ohci1394 appletouch
Oct 13 13:20:23 mithril CPU:    0
Oct 13 13:20:23 mithril EIP:    0060:[<c02e8ec1>]    Tainted: P        VLI
Oct 13 13:20:23 mithril EFLAGS: 00010206   (2.6.23 #6)
Oct 13 13:20:23 mithril EIP is at evdev_disconnect+0x91/0xd0
Oct 13 13:20:23 mithril eax: 00000000   ebx: 000ffcf0   ecx: ffffffff   edx: c23f0030
Oct 13 13:20:23 mithril esi: f5272254   edi: f5272200   ebp: f527225c   esp: f5287f2c
Oct 13 13:20:23 mithril ds: 007b   es: 007b   fs: 00d8  gs: 0000  ss: 0068
Oct 13 13:20:23 mithril Process khidpd_05ac030c (pid: 9855, ti=f5286000 task=f7f92030 task.ti=f5286000)
Oct 13 13:20:23 mithril Stack: c235e800 f6657fb0 f6657800 f6657fc4 f758d400 c02e69b6 00000000 000663d4
Oct 13 13:20:23 mithril 00000000 00000003 f4313c58 f446f2c0 f4313c58 c02f9ff1 00000708 f44ee840
Oct 13 13:20:23 mithril 00000001 c03be197 00000007 00000001 0000030c f44ee8c8 f70d9478 f758d478
Oct 13 13:20:23 mithril Call Trace:
Oct 13 13:20:23 mithril [<c02e69b6>] input_unregister_device+0x86/0x120
Oct 13 13:20:23 mithril [<c02f9ff1>] hidinput_disconnect+0x41/0x60
Oct 13 13:20:23 mithril [<c03be197>] hidp_session+0x477/0x580
Oct 13 13:20:23 mithril [<c01264f7>] schedule_tail+0x37/0xa0
Oct 13 13:20:23 mithril [<c01243d0>] default_wake_function+0x0/0x10
Oct 13 13:20:23 mithril [<c01243d0>] default_wake_function+0x0/0x10
Oct 13 13:20:23 mithril [<c03bdd20>] hidp_session+0x0/0x580
Oct 13 13:20:23 mithril [<c0104f8f>] kernel_thread_helper+0x7/0x18
Oct 13 13:20:23 mithril =======================
Oct 13 13:20:23 mithril Code: 00 00 00 8d bc 27 00 00 00 00 8d 83 08 04 00 00 b9 06 00 02 00 ba 1d 00 00 00 e8 fb b6 e9 ff 8b 9b 10 04 00 00 81 eb 10 04 00 00 <8b> 83 10 04 00 00 0f 18 00 90 8d 83 10 04 00 00 39 f0 75 cb 8d
Oct 13 13:20:23 mithril EIP: [<c02e8ec1>] evdev_disconnect+0x91/0xd0 SS:ESP 0068:f5287f2c
Comment 1 Jiri Kosina 2007-10-16 13:15:47 UTC
This could be well solved by Dmitry's input locking patches, that will appear in 2.6.24-rc1 (and they are already in Linus' current git tree). Could you please verify whether this solves the problem you are seeing?
Comment 2 Ortwin Glück 2007-10-17 14:32:29 UTC
Indeed, they solve the OOPS.

As Linus' tree didn't boot, I have applied these commits to a 2.6.23 and it works:
8006479c9b75fb6594a7b746af3d7f1fbb68f18f
6addb1d6de1968b84852f54561cc9a999909b5a9
464b241575f3700e14492e34f26bcd1794280f55

Would be nice to have them in 2.6.23.y
Comment 3 Dmitry Torokhov 2007-10-17 21:07:28 UTC
The patches are way too intrusive for -stable I am afraid.
Comment 4 Ortwin Glück 2007-10-18 00:29:41 UTC
Any idea what could have caused the regression then (to find a workaround for -stable)? Or is this just a race on a dual core which has been lurking there for ages but only surfaces now with the new scheduler?
Comment 5 Dmitry Torokhov 2007-10-23 11:42:10 UTC
You could try reverting this commit 1dfa2812404c37d7571622195f907cea3331616c but then some other boxes will break. You can't really do anything about missing locking in 2.6.23 and earlier kernels.

Since my patches fixes the issue and they are now in mainline to be released with 2.6.24-rc1 I am marking this as resolved.

Note You need to log in before you can comment on or make changes to this bug.