Bug 88581 - speakup_dtlk - oops on module load
Summary: speakup_dtlk - oops on module load
Status: NEEDINFO
Alias: None
Product: Drivers
Classification: Unclassified
Component: Staging (show other bugs)
Hardware: x86-64 Linux
: P1 normal
Assignee: drivers_staging@kernel-bugs.osdl.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-11-20 16:53 UTC by Roland Kletzing
Modified: 2014-12-12 18:00 UTC (History)
2 users (show)

See Also:
Kernel Version: 3.2.63-2+deb7u1
Subsystem:
Regression: No
Bisected commit-id:


Attachments
Stop dtlk oopsing on failed probe (1.61 KB, patch)
2014-12-08 21:42 UTC, Alan
Details | Diff

Description Roland Kletzing 2014-11-20 16:53:54 UTC
modprobe speakup_dtlk on a system without that device attached gibves the following ooops:

[   50.091282] speakup: module is from the staging directory, the quality is unk                     nown, you have been warned.
[   50.093306] input: Speakup as /devices/virtual/input/input6
[   50.093753] initialized device: /dev/synth, node (MAJOR 10, MINOR 25)
[   50.095553] speakup 3.1.6: initialized
[   50.095556] synth name on entry is: (null)
[   50.104925] speakup_dtlk: module is from the staging directory, the quality i                     s unknown, you have been warned.
[   50.105378] synth probe
[   50.105380] Probing for DoubleTalk.
[   50.105402] DoubleTalk PC: not found
[   50.105409] BUG: unable to handle kernel NULL pointer dereference at 00000000                     00000030
[   50.106971] IP: [<ffffffff8104cd59>] release_resource+0x18/0x4c
[   50.107930] PGD 0
[   50.108743] Oops: 0000 [#1] SMP
[   50.108752] CPU 0
[   50.108752] Modules linked in: speakup_dtlk(C+) speakup(C) nfsd nfs nfs_acl a                     uth_rpcgss fscache lockd sunrpc loop snd_intel8x0 snd_ac97_codec snd_pcm snd_pag                     e_alloc parport_pc ac i2c_piix4 psmouse i2c_core pcspkr serio_raw joydev evdev s                     nd_seq snd_seq_device snd_timer parport power_supply processor snd thermal_sys s                     oundcore ac97_bus button ext4 crc16 jbd2 mbcache btrfs crc32c libcrc32c zlib_def                     late usbhid hid sg sr_mod sd_mod crc_t10dif cdrom ata_generic ohci_hcd ata_piix                      ahci libahci ehci_hcd libata usbcore usb_common e1000 scsi_mod [last unloaded: s                     csi_wait_scan]
[   50.108752]
[   50.108752] Pid: 3081, comm: modprobe Tainted: G         C   3.2.0-4-amd64 #1                      Debian 3.2.63-2+deb7u1 innotek GmbH VirtualBox/VirtualBox
[   50.108752] RIP: 0010:[<ffffffff8104cd59>]  [<ffffffff8104cd59>] release_reso                     urce+0x18/0x4c
[   50.108752] RSP: 0018:ffff8800371bfe98  EFLAGS: 00010206
[   50.108752] RAX: 0000000000000030 RBX: ffffffffa03bf490 RCX: 000000000000163d
[   50.108752] RDX: 0000000000000000 RSI: 0000000000000002 RDI: ffffffff81617d88
[   50.108752] RBP: 0000000000000018 R08: 0000000000000002 R09: 00000000fffffffe
[   50.108752] R10: 0000000000000000 R11: 0000000000000000 R12: 000000000000039e
[   50.108752] R13: 0000000000000000 R14: 000000000000fbff R15: 0000000000040000
[   50.108752] FS:  00007fa500498700(0000) GS:ffff88003fc00000(0000) knlGS:00000                     00000000000
[   50.108752] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[   50.108752] CR2: 0000000000000030 CR3: 000000003c37c000 CR4: 00000000000006f0
[   50.108752] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[   50.108752] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[   50.108752] Process modprobe (pid: 3081, threadinfo ffff8800371be000, task ff                     ff880037779880)
[   50.108752] Stack:
[   50.108752]  ffffffffa03ff000 ffffffffa03fd426 0000000000036c75 0000000000000                     200
[   50.108752]  ffffffffa03ff000 ffffffffa0051000 0000000000000000 0000000000001                     d9f
[   50.108752]  0000000000000000 ffffffffa03b3422 ffffffffa03ff000 ffffffffa03b3                     8ac
[   50.108752] Call Trace:
[   50.108752]  [<ffffffffa03fd426>] ? synth_probe+0x134/0x2f2 [speakup_dtlk]
[   50.108752]  [<ffffffffa0051000>] ? 0xffffffffa0050fff
[   50.108752]  [<ffffffffa03b3422>] ? do_synth_init.part.4+0x30/0x159 [speakup]
[   50.108752]  [<ffffffffa03b38ac>] ? synth_add+0x81/0xc1 [speakup]
[   50.108752]  [<ffffffff8102f2a6>] ? change_page_attr_set+0x23/0x28
[   50.108752]  [<ffffffff81002085>] ? do_one_initcall+0x75/0x12c
[   50.108752]  [<ffffffffa0051000>] ? 0xffffffffa0050fff
[   50.108752]  [<ffffffff81075bad>] ? sys_init_module+0x10c/0x25b
[   50.108752]  [<ffffffff81355a92>] ? system_call_fastpath+0x16/0x1b
[   50.108752] Code: 48 89 f0 48 8b 56 10 48 8b 76 08 48 8b 38 e9 e2 fe ff ff 53                      48 89 fb 48 c7 c7 88 7d 61 81 e8 43 3d 30 00 48 8b 43 20 48 83 c0 30 <48> 8b 10                      48 85 d2 74 1e 48 39 da 75 13 48 8b 53 28 48 89 10 48
[   50.108752] RIP  [<ffffffff8104cd59>] release_resource+0x18/0x4c
[   50.108752]  RSP <ffff8800371bfe98>
[   50.108752] CR2: 0000000000000030
[   50.178443] ---[ end trace 3d00354a1b669198 ]---
Comment 1 Alan 2014-12-08 21:42:06 UTC
Created attachment 160111 [details]
Stop dtlk oopsing on failed probe

Please test this
Comment 2 Roland Kletzing 2014-12-12 18:00:09 UTC
now i`m getting "device probe failed" - so this works as expected.

btw, 3.16 does not only oops but crashes without your fix

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