LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Kernel (https://www.linuxquestions.org/questions/linux-kernel-70/)
-   -   Need some help to resolve a kernel oops (https://www.linuxquestions.org/questions/linux-kernel-70/need-some-help-to-resolve-a-kernel-oops-4175424224/)

_core 08-27-2012 10:10 AM

Need some help to resolve a kernel oops
 
Hi,

i'm writing an extension for the r8169 kernel module.
When i compile my code, i have no errors or warnings, so everything seems to be fine.

But when i try to load my module i get an kernel oops.
The good thing is that i know where the crash occurs, but i need help to understand the function and why the error occurs.

Distribution: Ubuntu 12.04 with realtime-patch

the trace shows this:
Code:

[ 2272.051924] ------------[ cut here ]------------
[ 2272.051930] kernel BUG at arch/x86/kernel/alternative.c:282!
[ 2272.051933] invalid opcode: 0000 [#2] PREEMPT SMP
[ 2272.051936] Modules linked in: rfcomm bnep bluetooth snd_hda_codec_realtek snd_hda_intel snd_hda_codec usbhid snd_hwdep hid snd_pcm snd_seq_midi snd_rawmidi
snd_seq_midi_event radeon snd_seq hp_wmi sparse_keymap ppdev snd_timer microcode snd_seq_device mac_hid parport_pc ttm drm_kms_helper snd psmouse serio_raw wmi drm
 soundcore snd_page_alloc i2c_algo_bit lp parport floppy tg3 [last unloaded: r8169]
[ 2272.051958]
[ 2272.051962] Pid: 4842, comm: modprobe Tainted: G      D    O 3.4.0-rt14 #1 Hewlett-Packard HP Compaq dc7600 Convertible Minitower/09F0h
[ 2272.051968] EIP: 0060:[<c10171ff>] EFLAGS: 00010212 CPU: 0
[ 2272.051976] EIP is at apply_alternatives+0x17f/0x1b0
[ 2272.051978] EAX: f9297640 EBX: f9297654 ECX: f2528c13 EDX: 00000519
[ 2272.051981] ESI: f9297634 EDI: f252ab90 EBP: ef079ee4 ESP: ef079db8
[ 2272.051984]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
[ 2272.051987] CR0: 80050033 CR2: b75d1000 CR3: 2f0c4000 CR4: 000007f0
[ 2272.051990] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
[ 2272.051993] DR6: ffff0ff0 DR7: 00000400
[ 2272.051996] Process modprobe (pid: 4842, ti=ef078000 task=f3a57120 task.ti=ef078000)
[ 2272.051998] Stack:
[ 2272.052000]  f7bb2b54 0000001e 000008f8 000008fa f9297663 f2528c13 00079df0 ae0f8205
[ 2272.052006]  c1f689f0 f9422802 c17df834 c15c9c60 ef079e38 00000000 ef079e1c c10a06ba
[ 2272.052012]  00000008 c10a0520 c17db074 000002d2 ef079eb0 c1107f87 00000000 ef079e38
[ 2272.052018] Call Trace:
[ 2272.052018]  [<c10a06ba>] ? find_symbol_in_section+0x3a/0x100
[ 2272.052018]  [<c10a0520>] ? mod_find_symname+0x80/0x80
[ 2272.052018]  [<c1107f87>] ? __alloc_pages_nodemask+0x147/0x790
[ 2272.052018]  [<c10a0680>] ? find_module+0x60/0x60
[ 2272.052018]  [<c10a0ec1>] ? each_symbol_section+0x21/0x50
[ 2272.052018]  [<c10a1287>] ? check_version.isra.27.part.28+0x37/0xb0
[ 2272.052018]  [<c1070101>] ? ftrace_raw_event_sched_wakeup_template+0x31/0xd0
[ 2272.052018]  [<c15b8d9d>] ? _mutex_unlock+0xd/0x10
[ 2272.052018]  [<c10a2008>] ? resolve_symbol.isra.40+0x88/0xc0
[ 2272.052018]  [<c10a20ca>] ? simplify_symbols+0x8a/0x310
[ 2272.052018]  [<c107440b>] ? get_parent_ip+0xb/0x40
[ 2272.052018]  [<c113e2ac>] ? __kmalloc_track_caller+0x10c/0x210
[ 2272.052018]  [<c10338be>] module_finalize+0xde/0x160
[ 2272.052018]  [<c10a3e3d>] sys_init_module+0x123d/0x1b00
[ 2272.052018]  [<c109e48d>] ? rt_up_read+0x1d/0x30
[ 2272.052018]  [<c15bc1af>] ? do_page_fault+0x25f/0x510
[ 2272.052018]  [<c15bf59f>] sysenter_do_call+0x12/0x28
[ 2272.052018] Code: c4 20 01 00 00 5b 5e 5f 5d c3 66 90 80 bd ef fe ff ff 05 75 a3 2b bd e8 fe ff ff 03 bd f3 fe ff ff 89 bd f3 fe ff ff eb 8f 0f 0b <0f> 0b 0f 0b 89 54 24 0c 89 74 24 08 c7 44 24 04 c8 36 5c c1 c7
[ 2272.052018] EIP: [<c10171ff>] apply_alternatives+0x17f/0x1b0 SS:ESP 0068:ef079db8
[ 2272.147109] ---[ end trace 0000000000000003 ]---

The EIP-Code says that it occurs in function apply_alternatives.
Code:

[ 2272.051930] kernel BUG at arch/x86/kernel/alternative.c:282!
with an

Code:

[ 2272.051933] invalid opcode: 0000 [#2] PREEMPT SMP
I've read that i can disable the replacement of instructions by the kernel.

Do anybody know how i can disable that or have an other idea how i can resolve the error?

best regards
stephan


All times are GMT -5. The time now is 04:46 PM.