From: Jakub Bogusz <qboosh@pld-linux.org>
To: linux-sound@vger.kernel.org
Subject: [BUG] 2.6.0-test8: Oops on "rmmod es1371"
Date: Sun, 19 Oct 2003 12:08:52 +0000 [thread overview]
Message-ID: <marc-linux-sound-106656514725428@msgid-missing> (raw)
Hello,
I got an Oops on just "rmmod es1371".
kernel: es1371: unloading
kernel: Unable to handle kernel paging request at virtual address d88a3920
kernel: printing eip:
kernel: d88a3920
kernel: *pde = 17dca067
kernel: *pte = 00000000
kernel: Oops: 0000 [#1]
kernel: CPU: 0
kernel: EIP: 0060:[<d88a3920>] Not tainted
kernel: EFLAGS: 00010282
kernel: EIP is at 0xd88a3920
kernel: eax: e891d840 ebx: d7f2b800 ecx: d7f2b854 edx: d88a3920
kernel: esi: e891d864 edi: 00000000 ebp: 00000880 esp: ce89ff00
kernel: ds: 007b es: 007b ss: 0068
kernel: Process rmmod (pid: 32505, threadinfoŒ89e000 task÷4a0cc0)
kernel: Stack: c01b884b d7f2b800 d7f2b854 c01d1d14 d7f2b854 d7f2b880 e891d8b0 e891d8b0
kernel: c01d1d40 d7f2b854 e891d864 c0288238 c01d1f6d e891d864 e891d864 c0288238
kernel: c01d2383 e891d864 e891d900 c01b89e2 e891d864 e891be8b e891d840 c012f709
kernel: Call Trace:
kernel: [<c01b884b>] pci_device_remove+0x3b/0x40
kernel: [<c01d1d14>] device_release_driver+0x64/0x70
kernel: [<c01d1d40>] driver_detach+0x20/0x30
kernel: [<c01d1f6d>] bus_remove_driver+0x3d/0x80
kernel: [<c01d2383>] driver_unregister+0x13/0x28
kernel: [<c01b89e2>] pci_unregister_driver+0x12/0x20
kernel: [<e891be8b>] cleanup_es1371+0x1b/0x1f [es1371]
kernel: [<c012f709>] sys_delete_module+0x119/0x190
kernel: [<c0143597>] do_munmap+0x147/0x190
kernel: [<c01091db>] syscall_call+0x7/0xb
kernel:
kernel: Code: Bad EIP value.
Some investigation:
pci_device_remove():
1c5: 89 1c 24 mov %ebx,(%esp,1)
=> 1c8: ff 50 14 call *0x14(%eax)
1cb: eb df jmp 1ac <pci_device_remove+0x1c>
linux/drivers/pci/pci-driver.c:289-293
if (drv) {
if (drv->remove)
=> drv->remove(pci_dev);
pci_dev->driver = NULL;
}
It tries to call es1371_remove() (linux/sound/oss/es1371.c:3004), which is
marked as __devinit, thus (I think) inaccessible on rmmod.
Is just removing the "__devinit" word the proper way to fix this problem?
(it works for me)
BTW, I found the same (*_remove() functions marked as __devinit) in other
drivers in linux/sound/oss beside es1371.c (but I didn't have how to test
if they cause Oops on rmmod too - but I suppose that they do):
au1000.c
cs46xx.c
es1370.c
essolo1.c
ite8172.c
rme96xx.c
nec_vcr5477.c
nm256_audio.c
sonicvibes.c
cs4281/cs4281m.c
PS. please Cc replies to me
--
Jakub Bogusz http://cyber.cs.net.pl/~qboosh/
PLD Linux http://www.pld-linux.org/
-
To unsubscribe from this list: send the line "unsubscribe linux-sound" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next reply other threads:[~2003-10-19 12:08 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-10-19 12:08 Jakub Bogusz [this message]
-- strict thread matches above, loose matches on Subject: below --
2003-10-19 12:08 [BUG] 2.6.0-test8: Oops on "rmmod es1371" Jakub Bogusz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=marc-linux-sound-106656514725428@msgid-missing \
--to=qboosh@pld-linux.org \
--cc=linux-sound@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.