The reason I set kgdboe option to M because I was having some issues (can't remember what there were) to make it work. And I though it's good idea to set it up as module. Can't you use kgdboe as module?
-Tushar >-----Original Message----- >From: Naresh Bhat [mailto:[email protected]] >Sent: Wednesday, March 14, 2012 6:24 AM >To: Dave, Tushar N >Cc: [email protected] >Subject: Re: [PATCH] kgdboe patch > >Hi Tushar, > >Sorry for the delay in reply. I know why you are not able to see >invoking kgdboe.c file. In your configuration file KGDBOE is set as M >(module). > >Please, set it to Y ( * ) - built-in and re-test it. You will be able >to reproduce the issue > >Thanks >-Naresh Bhat > >On 2/28/12, Dave, Tushar N <[email protected]> wrote: >>>One more thing..I am not able to see invoking of the kgdboe.c file >>>while debugging in your logs. >> >> Yeah , I saw that and I don't know why. >> Attaching my kernel config file here. >> >> -Tushar >>> >>>Thanks >>>-Naresh Bhat >>> >>>On 2/23/12, Naresh Bhat <[email protected]> wrote: >>>> Hi Tushar, >>>> >>>> Thank you very much. I appreciate you help. >>>> >>>> Can you please provide me your Kernel configuration file ? I hope you >>>> have not configured your kernel for x86 32bit architecture ? BTW I >>>> know it is working for x86 32bit architecture. >>>> >>>> I am really wondering how can KGDBOE work without any issues for x86 >>>> 64bit configured Kernel with SMP !!! >>>> >>>> Any way, I am using the following configuration (I have attached my >>>> Ethernet card photos too with this e-mail). >>>> >>>> Hardware machine : x86 64bit Intel Nehalum machine or Intel Westmere >>>> machine >>>> >>>> Linux Kernel: linux-stable (2.6.32.41) + KGDBOE patch and KGDBOE >>>> enabled in kernel + SMP Enabled + Used x86_64_defconfig file - Kernel >>>> is cross compiled for x86 64bit architecture. >>>> >>>> Ethernet card: Intel E1000 looks like you are also using the same >card. >>>> >>>> >>>======================================================================== >== >>>= >>>> >>>> nareshbhat@Lenovo-Y310:~/Projects/Development/linux-stable$ gdb >vmlinux >>>> GNU gdb (GDB) 7.0.1-debian >>>> Copyright (C) 2009 Free Software Foundation, Inc. >>>> License GPLv3+: GNU GPL version 3 or later >>>> <http://gnu.org/licenses/gpl.html> >>>> This is free software: you are free to change and redistribute it. >>>> There is NO WARRANTY, to the extent permitted by law. Type "show >>>copying" >>>> and "show warranty" for details. >>>> This GDB was configured as "x86_64-linux-gnu". >>>> For bug reporting instructions, please see: >>>> <http://www.gnu.org/software/gdb/bugs/>... >>>> Reading symbols from >>>> /home/nareshbhat/Projects/Development/linux-stable/vmlinux...done. >>>> (gdb) target remote udp:10.162.100.52:6443 >>>> warning: The remote protocol may be unreliable over UDP. >>>> Some events may be lost, rendering further debugging impossible. >>>> Remote debugging using udp:10.162.100.52:6443 >>>> kgdb_breakpoint (new_kgdb_io_ops=0xffffffff817c52c0) at >>>kernel/kgdb.c:1745 >>>> 1745 wmb(); /* Sync point after breakpoint */ >>>> (gdb) n >>>> 1746 atomic_set(&kgdb_setting_breakpoint, 0); >>>> (gdb) n >>>> kgdb_register_io_module (new_kgdb_io_ops=0xffffffff817c52c0) at >>>> kernel/kgdb.c:1700 >>>> 1700 } >>>> (gdb) n >>>> configure_kgdboe () at drivers/net/kgdboe.c:200 >>>> 200 configured = 2; >>>> (gdb) n >>>> 203 } >>>> (gdb) n >>>> init_kgdboe () at drivers/net/kgdboe.c:216 >>>> 216 if (configured == 2) >>>> (gdb) n >>>> 214 ret = configure_kgdboe(); >>>> (gdb) n >>>> 216 if (configured == 2) >>>> (gdb) n >>>> 217 printk(KERN_INFO "kgdboe: debugging over >>>> ethernet >>>enabled\n"); >>>> (gdb) n >>>> 220 } >>>> (gdb) n >>>> do_one_initcall (fn=0xffffffff8131836c <init_kgdboe>) at >init/main.c:726 >>>> 726 if (initcall_debug) { >>>> (gdb) n >>>> 724 ret.result = fn(); >>>> (gdb) n >>>> 726 if (initcall_debug) { >>>> (gdb) n >>>> 738 if (ret.result && ret.result != -ENODEV && >initcall_debug) >>>> (gdb) n >>>> 736 msgbuf[0] = 0; >>>> (gdb) n >>>> 738 if (ret.result && ret.result != -ENODEV && >initcall_debug) >>>> (gdb) n >>>> 741 if (preempt_count() != count) { >>>> (gdb) n >>>> 745 if (irqs_disabled()) { >>>> (gdb) n >>>> 749 if (msgbuf[0]) { >>>> (gdb) n >>>> 754 } >>>> (gdb) n >>>> do_initcalls (unused=<value optimized out>) at init/main.c:763 >>>> 763 for (call = __early_initcall_end; call < >__initcall_end; >>>call++) >>>> (gdb) n >>>> do_basic_setup (unused=<value optimized out>) at init/main.c:786 >>>> 786 do_initcalls(); >>>> (gdb) n >>>> Ignoring packet error, continuing... >>>> Ignoring packet error, continuing... >>>> Ignoring packet error, continuing... >>>> Ignoring packet error, continuing... >>>> Ignoring packet error, continuing... >>>> Ignoring packet error, continuing... >>>> Ignoring packet error, continuing... >>>> ^Z >>>> [1]+ Stopped gdb vmlinux >>>> nareshbhat@Lenovo-Y310:~/Projects/Development/linux-stable$ >>>> >>>> >>>======================================================================== >== >>>= >>>> >>>> On 2/23/12, Dave, Tushar N <[email protected]> wrote: >>>>> Naresh, >>>>> >>>>> Thanks for your patience and working with me. >>>>> I have done testing with 82540EM and 82546GB Intel Ethernet gigabit >>>>> controller and found no issues. >>>>> To be sure, >>>>> I have cloned linux-stable kernel and checkout v2.6.32.41. >>>>> Apply kgdboe patches that you sent. >>>>> Revert e1000 changes made (i.e. remove [PATCH] e1000: test/debug >patch >>>>> for >>>>> things like netconsole). >>>>> >>>>> FYI, these cards are very old and EOL. I am not saying that I won't >>>>> support >>>>> your issue with this card however it may possible that the issue may >>>only >>>>> occur with the card that you own. If you have any other Intel NIC >would >>>>> you >>>>> give it a try? >>>>> >>>>> Below is my command line interaction from host. I don't see any >errors >>>>> and >>>>> everything just works fine. >>>>> >>>>> [tushar@tlinux-devel linux-stable]$ gdb vmlinux >>>>> GNU gdb (GDB) Fedora (7.2-52.fc14) >>>>> Copyright (C) 2010 Free Software Foundation, Inc. >>>>> License GPLv3+: GNU GPL version 3 or later >>>>> <http://gnu.org/licenses/gpl.html> >>>>> This is free software: you are free to change and redistribute it. >>>>> There is NO WARRANTY, to the extent permitted by law. Type "show >>>>> copying" >>>>> and "show warranty" for details. >>>>> This GDB was configured as "i686-redhat-linux-gnu". >>>>> For bug reporting instructions, please see: >>>>> <http://www.gnu.org/software/gdb/bugs/>... >>>>> Reading symbols from >>>>> /var/shared/git_work/external_tree/linux-stable/vmlinux...done. >>>>> (gdb) target remote udp:192.168.1.5:6443 >>>>> warning: The remote protocol may be unreliable over UDP. >>>>> Some events may be lost, rendering further debugging impossible. >>>>> Remote debugging using udp:192.168.1.5:6443 >>>>> kgdb_breakpoint () at kernel/kgdb.c:1745 >>>>> 1745 wmb(); /* Sync point after breakpoint */ >>>>> (gdb) n >>>>> 1746 atomic_set(&kgdb_setting_breakpoint, 0); >>>>> (gdb) n >>>>> 1747 } >>>>> (gdb) n >>>>> kgdb_tasklet_bpt (ing=<value optimized out>) at kernel/kgdb.c:1634 >>>>> 1634 atomic_set(&kgdb_break_tasklet_var, 0); >>>>> (gdb) n >>>>> 1635 } >>>>> (gdb) n >>>>> tasklet_action (a=<value optimized out>) at kernel/softirq.c:442 >>>>> 442 tasklet_unlock(t); >>>>> (gdb) n >>>>> Warning: >>>>> Cannot insert breakpoint 0. >>>>> Error accessing memory address 0xffffffff81042f97: Unknown error >>>>> 4294967295. >>>>> >>>>> tasklet_unlock (t=0xffffffff817ca840) at >include/linux/interrupt.h:454 >>>>> 454 { >>>>> (gdb) n >>>>> 456 clear_bit(TASKLET_STATE_RUN, &(t)->state); >>>>> (gdb) n >>>>> 457 } >>>>> (gdb) n >>>>> tasklet_action (a=<value optimized out>) at kernel/softirq.c:443 >>>>> 443 continue; >>>>> (gdb) n >>>>> 423 { >>>>> (gdb) n >>>>> 432 while (list) { >>>>> (gdb) n >>>>> 455 } >>>>> (gdb) n >>>>> __do_softirq () at kernel/softirq.c:237 >>>>> 237 trace_softirq_exit(h, softirq_vec); >>>>> (gdb) n >>>>> 238 if (unlikely(prev_count != >preempt_count())) { >>>>> (gdb) n >>>>> 247 rcu_bh_qs(cpu); >>>>> (gdb) n >>>>> Warning: >>>>> Cannot insert breakpoint 0. >>>>> Error accessing memory address 0xffffffff8104447a: Unknown error >>>>> 4294967295. >>>>> >>>>> rcu_bh_qs (cpu=0) at kernel/rcutree.c:111 >>>>> 111 rdp = &per_cpu(rcu_bh_data, cpu); >>>>> (gdb) n >>>>> 108 { >>>>> (gdb) n >>>>> 111 rdp = &per_cpu(rcu_bh_data, cpu); >>>>> (gdb) n >>>>> 108 { >>>>> (gdb) n >>>>> 112 rdp->passed_quiesc_completed = rdp->completed; >>>>> (gdb) n >>>>> 114 rdp->passed_quiesc = 1; >>>>> (gdb) n >>>>> 115 } >>>>> (gdb) n >>>>> __do_softirq () at kernel/softirq.c:251 >>>>> 251 } while (pending); >>>>> (gdb) n >>>>> 253 local_irq_disable(); >>>>> (gdb) n >>>>> 255 pending = local_softirq_pending(); >>>>> (gdb) n >>>>> 256 if (pending && --max_restart) >>>>> (gdb) n >>>>> 224 set_softirq_pending(0); >>>>> (gdb) n >>>>> 226 local_irq_enable(); >>>>> (gdb) n >>>>> 231 if (pending & 1) { >>>>> (gdb) n >>>>> 251 } while (pending); >>>>> (gdb) n >>>>> 249 h++; >>>>> (gdb) info r >>>>> rax 0xffff88002820e770 -131940722088080 >>>>> rbx 0xffffffff817bc080 -2122596224 >>>>> rcx 0xdead000000200200 -2401263026316508672 >>>>> rdx 0x0 0 >>>>> rsi 0xffffffff817ca848 -2122536888 >>>>> rdi 0x0 0 >>>>> rbp 0xffff880028203f30 0xffff880028203f30 >>>>> rsp 0xffff880028203ed0 0xffff880028203ed0 >>>>> r8 0x2 2 >>>>> r9 0x0 0 >>>>> r10 0xffff88017fac9880 -131934958348160 >>>>> r11 0xffff88017d9e35c0 -131934992845376 >>>>> r12 0x6 6 >>>>> r13 0xffffffff817bbfd8 -2122596392 >>>>> r14 0x100 256 >>>>> r15 0x107 263 >>>>> rip 0xffffffff8104447f 0xffffffff8104447f ><__do_softirq+331> >>>>> eflags 0x302 [ TF IF ] >>>>> cs 0x10 16 >>>>> ss 0x18 24 >>>>> ds 0x0 0 >>>>> es 0x0 0 >>>>> fs 0x0 0 >>>>> gs 0x0 0 >>>>> (gdb) where >>>>> #0 __do_softirq () at kernel/softirq.c:249 >>>>> #1 0xffffffff8100cadc in ?? () at arch/x86/kernel/entry_64.S:1261 >>>>> #2 0xffff880028203f48 in ?? () >>>>> #3 0xffff880028203f68 in ?? () >>>>> #4 0xffffffff8100e0da in do_softirq () at >arch/x86/kernel/irq_64.c:138 >>>>> Backtrace stopped: frame did not save the PC >>>>> (gdb) n >>>>> 231 if (pending & 1) { >>>>> (gdb) n >>>>> 232 int prev_count = preempt_count(); >>>>> (gdb) n >>>>> 233 kstat_incr_softirqs_this_cpu(h - >softirq_vec); >>>>> (gdb) n >>>>> 232 int prev_count = preempt_count(); >>>>> (gdb) n >>>>> 233 kstat_incr_softirqs_this_cpu(h - >softirq_vec); >>>>> (gdb) n >>>>> 235 trace_softirq_entry(h, softirq_vec); >>>>> (gdb) n >>>>> 236 h->action(h); >>>>> (gdb) n >>>>> Warning: >>>>> Cannot insert breakpoint 0. >>>>> Error accessing memory address 0xffffffff81044409: Unknown error >>>>> 4294967295. >>>>> >>>>> run_timer_softirq (h=0xffffffff817bc088) at kernel/timer.c:1217 >>>>> 1217 { >>>>> (gdb) n >>>>> 1218 struct tvec_base *base = __get_cpu_var(tvec_bases); >>>>> (gdb) n >>>>> 1217 { >>>>> (gdb) n >>>>> 1218 struct tvec_base *base = __get_cpu_var(tvec_bases); >>>>> (gdb) n >>>>> 1220 perf_event_do_pending(); >>>>> (gdb) n >>>>> Warning: >>>>> Cannot insert breakpoint 0. >>>>> Error accessing memory address 0xffffffff8104afec: Unknown error >>>>> 4294967295. >>>>> >>>>> perf_event_do_pending () at kernel/perf_event.c:2611 >>>>> 2611 { >>>>> (gdb) n >>>>> 2612 __perf_pending_run(); >>>>> (gdb) n >>>>> Warning: >>>>> Cannot insert breakpoint 0. >>>>> Error accessing memory address 0xffffffff810a09a4: Unknown error >>>>> 4294967295. >>>>> >>>>> __perf_pending_run () at kernel/perf_event.c:2560 >>>>> 2560 { >>>>> (gdb) n >>>>> 2564 list = xchg(&__get_cpu_var(perf_pending_head), >>>PENDING_TAIL); >>>>> (gdb) n >>>>> 2560 { >>>>> (gdb) n >>>>> 2564 list = xchg(&__get_cpu_var(perf_pending_head), >>>PENDING_TAIL); >>>>> (gdb) n >>>>> 2560 { >>>>> (gdb) n >>>>> 2564 list = xchg(&__get_cpu_var(perf_pending_head), >>>PENDING_TAIL); >>>>> (gdb) n >>>>> 2562 int nr = 0; >>>>> (gdb) n >>>>> 2564 list = xchg(&__get_cpu_var(perf_pending_head), >>>PENDING_TAIL); >>>>> (gdb) n >>>>> Warning: >>>>> Cannot insert breakpoint 0. >>>>> Error accessing memory address 0xffffffff8109e1bf: Unknown error >>>>> 4294967295. >>>>> >>>>> __xchg (x=18446744073709551615, ptr=0xffff88002820fa90, size=8) >>>>> at >>>>> /media/nfs/git_work/external_tree/linux- >>>stable/arch/x86/include/asm/cmpxchg_64.h:23 >>>>> 23 >>>>> /media/nfs/git_work/external_tree/linux- >>>stable/arch/x86/include/asm/cmpxchg_64.h: >>>>> No such file or directory. >>>>> in >>>>> /media/nfs/git_work/external_tree/linux- >>>stable/arch/x86/include/asm/cmpxchg_64.h >>>>> (gdb) n >>>>> 24 in >>>>> /media/nfs/git_work/external_tree/linux- >>>stable/arch/x86/include/asm/cmpxchg_64.h >>>>> (gdb) n >>>>> 23 in >>>>> /media/nfs/git_work/external_tree/linux- >>>stable/arch/x86/include/asm/cmpxchg_64.h >>>>> (gdb) n >>>>> 24 in >>>>> /media/nfs/git_work/external_tree/linux- >>>stable/arch/x86/include/asm/cmpxchg_64.h >>>>> (gdb) n >>>>> 44 in >>>>> /media/nfs/git_work/external_tree/linux- >>>stable/arch/x86/include/asm/cmpxchg_64.h >>>>> (gdb) n >>>>> 51 in >>>>> /media/nfs/git_work/external_tree/linux- >>>stable/arch/x86/include/asm/cmpxchg_64.h >>>>> (gdb) n >>>>> __perf_pending_run () at kernel/perf_event.c:2565 >>>>> 2565 while (list != PENDING_TAIL) { >>>>> (gdb) n >>>>> 2585 } >>>>> (gdb) n >>>>> perf_event_do_pending () at kernel/perf_event.c:2613 >>>>> 2613 } >>>>> (gdb) n >>>>> run_timer_softirq (h=<value optimized out>) at kernel/timer.c:1222 >>>>> 1222 hrtimer_run_pending(); >>>>> (gdb) n >>>>> Warning: >>>>> Cannot insert breakpoint 0. >>>>> Error accessing memory address 0xffffffff8104aff1: Unknown error >>>>> 4294967295. >>>>> >>>>> hrtimer_run_pending () at kernel/hrtimer.c:1413 >>>>> 1413 { >>>>> (gdb) n >>>>> 1414 if (hrtimer_hres_active()) >>>>> (gdb) n >>>>> Warning: >>>>> Cannot insert breakpoint 0. >>>>> Error accessing memory address 0xffffffff81059293: Unknown error >>>>> 4294967295. >>>>> >>>>> hrtimer_hres_active () at kernel/hrtimer.c:503 >>>>> 503 { >>>>> (gdb) list >>>>> 498 >>>>> 499 /* >>>>> 500 * Is the high resolution mode active ? >>>>> 501 */ >>>>> 502 static inline int hrtimer_hres_active(void) >>>>> 503 { >>>>> 504 return __get_cpu_var(hrtimer_bases).hres_active; >>>>> 505 } >>>>> 506 >>>>> 507 /* >>>>> (gdb) c >>>>> Continuing. >>>>> ^C >>>>> Program received signal SIGTRAP, Trace/breakpoint trap. >>>>> kgdb_breakpoint () at kernel/kgdb.c:1745 >>>>> 1745 wmb(); /* Sync point after breakpoint */ >>>>> (gdb) where >>>>> #0 kgdb_breakpoint () at kernel/kgdb.c:1745 >>>>> #1 0xffffffff810836fb in kgdb_tasklet_bpt (ing=<value optimized >out>) >>>at >>>>> kernel/kgdb.c:1633 >>>>> #2 0xffffffff81042f8f in tasklet_action (a=<value optimized out>) at >>>>> kernel/softirq.c:441 >>>>> #3 0xffffffff81044409 in __do_softirq () at kernel/softirq.c:236 >>>>> #4 0xffffffff8100cadc in ?? () at arch/x86/kernel/entry_64.S:1261 >>>>> #5 0xffff880028203f48 in ?? () >>>>> #6 0xffff880028203f68 in ?? () >>>>> #7 0xffffffff8100e0da in do_softirq () at >arch/x86/kernel/irq_64.c:138 >>>>> Backtrace stopped: frame did not save the PC >>>>> (gdb) l >>>>> 1740 void kgdb_breakpoint(void) >>>>> 1741 { >>>>> 1742 atomic_set(&kgdb_setting_breakpoint, 1); >>>>> 1743 wmb(); /* Sync point before breakpoint */ >>>>> 1744 arch_kgdb_breakpoint(); >>>>> 1745 wmb(); /* Sync point after breakpoint */ >>>>> 1746 atomic_set(&kgdb_setting_breakpoint, 0); >>>>> 1747 } >>>>> 1748 EXPORT_SYMBOL_GPL(kgdb_breakpoint); >>>>> 1749 >>>>> (gdb) n >>>>> 1746 atomic_set(&kgdb_setting_breakpoint, 0); >>>>> (gdb) n >>>>> 1747 } >>>>> (gdb) n >>>>> kgdb_tasklet_bpt (ing=<value optimized out>) at kernel/kgdb.c:1634 >>>>> 1634 atomic_set(&kgdb_break_tasklet_var, 0); >>>>> (gdb) n >>>>> 1635 } >>>>> (gdb) n >>>>> tasklet_action (a=<value optimized out>) at kernel/softirq.c:442 >>>>> 442 tasklet_unlock(t); >>>>> (gdb) n >>>>> Warning: >>>>> Cannot insert breakpoint 0. >>>>> Error accessing memory address 0xffffffff81042f97: Unknown error >>>>> 4294967295. >>>>> >>>>> tasklet_unlock (t=0xffffffff817ca840) at >include/linux/interrupt.h:454 >>>>> 454 { >>>>> (gdb) n >>>>> 456 clear_bit(TASKLET_STATE_RUN, &(t)->state); >>>>> (gdb) n >>>>> 457 } >>>>> (gdb) n >>>>> tasklet_action (a=<value optimized out>) at kernel/softirq.c:443 >>>>> 443 continue; >>>>> (gdb) info r >>>>> rax 0xffffffff 4294967295 >>>>> rbx 0xffffffff817ca840 -2122536896 >>>>> rcx 0xdead000000200200 -2401263026316508672 >>>>> rdx 0xffff88002820e3b0 -131940722089040 >>>>> rsi 0xffffffff817ca848 -2122536888 >>>>> rdi 0xffffffff817ca840 -2122536896 >>>>> rbp 0xffff880028203ec0 0xffff880028203ec0 >>>>> rsp 0xffff880028203ea0 0xffff880028203ea0 >>>>> r8 0x1 1 >>>>> r9 0x0 0 >>>>> r10 0xffff88017fac9880 -131934958348160 >>>>> r11 0xffffffff817bbeb8 -2122596680 >>>>> r12 0xffffffff817ca848 -2122536888 >>>>> r13 0xe3b0 58288 >>>>> r14 0x0 0 >>>>> r15 0x1 1 >>>>> rip 0xffffffff81042f97 0xffffffff81042f97 >>><tasklet_action+124> >>>>> eflags 0x346 [ PF ZF TF IF ] >>>>> cs 0x10 16 >>>>> ss 0x18 24 >>>>> ds 0x0 0 >>>>> es 0x0 0 >>>>> fs 0x0 0 >>>>> gs 0x0 0 >>>>> (gdb) >>>>> >>>>> >>>>> >>>>> >>>>> - Tushar >>>>> >>>>> >>>>> >>>>>>-----Original Message----- >>>>>>From: Naresh Bhat [mailto:[email protected]] >>>>>>Sent: Wednesday, February 22, 2012 4:49 AM >>>>>>To: Dave, Tushar N >>>>>>Cc: [email protected] >>>>>>Subject: Re: [PATCH] kgdboe patch >>>>>> >>>>>>Hi Tushar, >>>>>> >>>>>> >>>>>>Thank you very much, I have attached my kernel configuration file too >>>>>> with >>>>>>this e-mail. Since I was suspecting the GDB, I have tried debugging >>>>>> >>>>>>Host machines: >>>>>>1. x86 32bit (FC13 x86 32bit GDB) - Refer my earlier e-mail logs 2. >>>x86 >>>>>>64bit GDB (Debian squeze 64bit GDB) - Logs on host as below >>>>>> >>>>>>I am still able to reproduce the issue "Ignoring packet error, >>>>>>continue..." >>>>>> >>>>>>Logs on x86 64bit host machine: >>>>>>========================== >>>>>>nareshbhat@Lenovo-Y310:~/Projects/Development/linux-stable$ gdb >vmlinux >>>>>>GNU gdb (GDB) 7.0.1-debian Copyright (C) 2009 Free Software >Foundation, >>>>>>Inc. >>>>>>License GPLv3+: GNU GPL version 3 or later >>>>>><http://gnu.org/licenses/gpl.html> >>>>>>This is free software: you are free to change and redistribute it. >>>>>>There is NO WARRANTY, to the extent permitted by law. Type "show >>>>>> copying" >>>>>>and "show warranty" for details. >>>>>>This GDB was configured as "x86_64-linux-gnu". >>>>>>For bug reporting instructions, please see: >>>>>><http://www.gnu.org/software/gdb/bugs/>... >>>>>>Reading symbols from >>>>>>/home/nareshbhat/Projects/Development/linux-stable/vmlinux...done. >>>>>>(gdb) target remote udp:10.162.100.52:6443 >>>>>>warning: The remote protocol may be unreliable over UDP. >>>>>>Some events may be lost, rendering further debugging impossible. >>>>>>Remote debugging using udp:10.162.100.52:6443 kgdb_breakpoint >>>>>>(new_kgdb_io_ops=0xffffffff817c52c0) at kernel/kgdb.c:1745 >>>>>>1745 wmb(); /* Sync point after breakpoint */ >>>>>>(gdb) n >>>>>>1746 atomic_set(&kgdb_setting_breakpoint, 0); >>>>>>(gdb) n >>>>>>kgdb_register_io_module (new_kgdb_io_ops=0xffffffff817c52c0) at >>>>>>kernel/kgdb.c:1700 >>>>>>1700 } >>>>>>(gdb) n >>>>>>configure_kgdboe () at drivers/net/kgdboe.c:189 >>>>>>189 configured = 2; >>>>>>(gdb) n >>>>>>192 } >>>>>>(gdb) n >>>>>>init_kgdboe () at drivers/net/kgdboe.c:205 >>>>>>205 if (configured == 2) >>>>>>(gdb) n >>>>>>203 ret = configure_kgdboe(); >>>>>>(gdb) n >>>>>>205 if (configured == 2) >>>>>>(gdb) n >>>>>>206 printk(KERN_INFO "kgdboe: debugging over >>>>>>ethernet >>>>>>enabled\n"); >>>>>>(gdb) n >>>>>>209 } >>>>>>(gdb) n >>>>>>do_one_initcall (fn=0xffffffff8131831b <init_kgdboe>) at >>>init/main.c:726 >>>>>>726 if (initcall_debug) { >>>>>>(gdb) n >>>>>>724 ret.result = fn(); >>>>>>(gdb) n >>>>>>726 if (initcall_debug) { >>>>>>(gdb) n >>>>>>738 if (ret.result && ret.result != -ENODEV && >initcall_debug) >>>>>>(gdb) n >>>>>>736 msgbuf[0] = 0; >>>>>>(gdb) n >>>>>>738 if (ret.result && ret.result != -ENODEV && >initcall_debug) >>>>>>(gdb) n >>>>>>741 if (preempt_count() != count) { >>>>>>(gdb) n >>>>>>745 if (irqs_disabled()) { >>>>>>(gdb) n >>>>>>749 if (msgbuf[0]) { >>>>>>(gdb) n >>>>>>754 } >>>>>>(gdb) n >>>>>>do_initcalls (unused=<value optimized out>) at init/main.c:763 >>>>>>763 for (call = __early_initcall_end; call < >__initcall_end; >>>>>>call++) >>>>>>(gdb) n >>>>>>do_basic_setup (unused=<value optimized out>) at init/main.c:786 >>>>>>786 do_initcalls(); >>>>>>(gdb) n >>>>>>n >>>>>>Ignoring packet error, continuing... >>>>>>Ignoring packet error, continuing... >>>>>>Ignoring packet error, continuing... >>>>>>Ignoring packet error, continuing... >>>>>>^C^Z >>>>>>[1]+ Stopped gdb vmlinux >>>>>>nareshbhat@Lenovo-Y310:~/Projects/Development/linux-stable$ >>>>>> >>>>>> >>>>>>Thanks and Regards >>>>>>-Naresh Bhat >>>>>> >>>>>> >>>>>>On 2/22/12, Dave, Tushar N <[email protected]> wrote: >>>>>>> Okay. I see what you mean. I will execute the same commands >tomorrow >>>>>>> and get back to you. >>>>>>> >>>>>>> -Tushar >>>>>>> >>>>>>>>-----Original Message----- >>>>>>>>From: Naresh Bhat [mailto:[email protected]] >>>>>>>>Sent: Wednesday, February 22, 2012 12:04 AM >>>>>>>>To: Dave, Tushar N >>>>>>>>Cc: [email protected] >>>>>>>>Subject: Re: [PATCH] kgdboe patch >>>>>>>> >>>>>>>>Hi Tushar, >>>>>>>> >>>>>>>>Thank you very much for your time and efforts. >>>>>>>> >>>>>>>>With the provided patch I am still able to reproduce the issue :( >on >>>>>>>>linux-stable (2.6.32.41 kernel). I have attached the target screen >>>>>>>>shot and I have the following question >>>>>>>> >>>>>>>>"Is there any legacy issue between KGDBOE and NAPI ? Is that the >>>>>>>>reason KGDBOE is not working on NAPI supported drivers ?" (Well I >am >>>>>>>>not sure about this) >>>>>>>> >>>>>>>>I have never faced such issues with any other Ethernet card, in >which >>>>>>>>drivers does not have NAPI support say e.g. TIGON3 (BCM95786) >>>>>>>> >>>>>>>>Is it possible to disable the NAPI in E1000 driver ? >>>>>>>> >>>>>>>>-- Thanks and Regards >>>>>>>>Naresh Bhat >>>>>>>> >>>>>>>> >>>>>>>>On Desktop host machine: >>>>>>>> >>>>>>>>=================================================================== >== >>>= >>>>>>>>==== >>>>>>>>======= >>>>>>>>[nareshbhat@nareshbhat linux-stable]$ gdb vmlinux GNU gdb (GDB) >>>Fedora >>>>>>>>(7.1-34.fc13) Copyright (C) 2010 Free Software Foundation, Inc. >>>>>>>>License GPLv3+: GNU GPL version 3 or later >>>>>>>><http://gnu.org/licenses/gpl.html> >>>>>>>>This is free software: you are free to change and redistribute it. >>>>>>>>There is NO WARRANTY, to the extent permitted by law. Type "show >>>>>>copying" >>>>>>>>and "show warranty" for details. >>>>>>>>This GDB was configured as "i686-redhat-linux-gnu". >>>>>>>>For bug reporting instructions, please see: >>>>>>>><http://www.gnu.org/software/gdb/bugs/>... >>>>>>>>Reading symbols from >>>>>>>>/mnt/sda3/gitRepositories/opensource-git/linux- >stable/vmlinux...done. >>>>>>>>(gdb) target remote udp:<target-IP>:6443 >>>>>>>>warning: The remote protocol may be unreliable over UDP. >>>>>>>>Some events may be lost, rendering further debugging impossible. >>>>>>>>Remote debugging using udp:<target IP>:6443 kgdb_breakpoint >>>>>>>>(new_kgdb_io_ops=<value optimized out>) at kernel/kgdb.c:1748 >>>>>>>>1748 wmb(); /* Sync point after breakpoint */ >>>>>>>>(gdb) n >>>>>>>>1749 atomic_set(&kgdb_setting_breakpoint, 0); >>>>>>>>(gdb) n >>>>>>>>kgdb_register_io_module (new_kgdb_io_ops=<value optimized out>) at >>>>>>>>kernel/kgdb.c:1703 >>>>>>>>1703 } >>>>>>>>(gdb) n >>>>>>>>configure_kgdboe () at drivers/net/kgdboe.c:189 >>>>>>>>189 configured = 2; >>>>>>>>(gdb) n >>>>>>>>192 } >>>>>>>>(gdb) n >>>>>>>>init_kgdboe () at drivers/net/kgdboe.c:205 >>>>>>>>205 if (configured == 2) >>>>>>>>(gdb) n >>>>>>>>203 ret = configure_kgdboe(); >>>>>>>>(gdb) n >>>>>>>>205 if (configured == 2) >>>>>>>>(gdb) n >>>>>>>>206 printk(KERN_INFO "kgdboe: debugging over ethernet >>>>>>>>enabled\n"); >>>>>>>>(gdb) n >>>>>>>>209 } >>>>>>>>(gdb) n >>>>>>>>do_one_initcall (fn=0xc1289be4 <init_kgdboe>) at init/main.c:726 >>>>>>>>726 if (initcall_debug) { >>>>>>>>(gdb) n >>>>>>>>724 ret.result = fn(); >>>>>>>>(gdb) n >>>>>>>>726 if (initcall_debug) { >>>>>>>>(gdb) n >>>>>>>>738 if (ret.result && ret.result != -ENODEV && >initcall_debug) >>>>>>>>(gdb) n >>>>>>>>736 msgbuf[0] = 0; >>>>>>>>(gdb) n >>>>>>>>738 if (ret.result && ret.result != -ENODEV && >initcall_debug) >>>>>>>>(gdb) n >>>>>>>>741 if (preempt_count() != count) { >>>>>>>>(gdb) n >>>>>>>>745 if (irqs_disabled()) { >>>>>>>>(gdb) n >>>>>>>>749 if (msgbuf[0]) { >>>>>>>>(gdb) n >>>>>>>>754 } >>>>>>>>(gdb) n >>>>>>>>do_initcalls (unused=<value optimized out>) at init/main.c:763 >>>>>>>>763 for (call = __early_initcall_end; call < __initcall_end; >>>>>>>>call++) >>>>>>>>(gdb) n >>>>>>>>do_basic_setup (unused=<value optimized out>) at init/main.c:786 >>>>>>>>786 do_initcalls(); >>>>>>>>(gdb) n >>>>>>>> >>>>>>>>Ignoring packet error, continuing... >>>>>>>>Ignoring packet error, continuing... >>>>>>>>Ignoring packet error, continuing... >>>>>>>>Ignoring packet error, continuing... >>>>>>>>Ignoring packet error, continuing... >>>>>>>>Ignoring packet error, continuing... >>>>>>>>^C^Z >>>>>>>>[1]+ Stopped gdb vmlinux [nareshbhat@nareshbhat >>>linux- >>>>>>>>stable]$ >>>>>>>> >>>>>>>>=================================================================== >== >>>= >>>>>>>>==== >>>>>>>>======= >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>On Wed, Feb 22, 2012 at 10:15 AM, Dave, Tushar N >>>>>>>><[email protected]> >>>>>>>>wrote: >>>>>>>>> >>>>>>>>> Correcting the rx_hook (struct netpoll) method as defined in >>>>>>>>> include/linux/netpoll.h >>>>>>>>> >>>>>>>>> Signed-off-by: Tushar Dave <[email protected]> >>>>>>>>> --- >>>>>>>>> >>>>>>>>> drivers/net/kgdboe.c | 10 +--------- >>>>>>>>> 1 files changed, 1 insertions(+), 9 deletions(-) >>>>>>>>> >>>>>>>>> diff --git a/drivers/net/kgdboe.c b/drivers/net/kgdboe.c index >>>>>>>>> a82ed15..2efa3a6 100644 >>>>>>>>> --- a/drivers/net/kgdboe.c >>>>>>>>> +++ b/drivers/net/kgdboe.c >>>>>>>>> @@ -50,20 +50,12 @@ static struct kparam_string kps = { >>>>>>>>> .maxlen = MAX_CONFIG_LEN, >>>>>>>>> }; >>>>>>>>> >>>>>>>>> -static void rx_hook(struct netpoll *np, int port, char *msg, int >>>>>>>>> len, >>>>>>>>> - struct sk_buff *skb) >>>>>>>>> +static void rx_hook(struct netpoll *np, int port, char *msg, int >>>>>>>>> +len) >>>>>>>>> { >>>>>>>>> int i; >>>>>>>>> >>>>>>>>> np->remote_port = port; >>>>>>>>> >>>>>>>>> - /* Copy the MAC address if we need to. */ >>>>>>>>> - if (use_dynamic_mac) { >>>>>>>>> - memcpy(np->remote_mac, eth_hdr(skb)->h_source, >>>>>>>>> - sizeof(np->remote_mac)); >>>>>>>>> - use_dynamic_mac = 0; >>>>>>>>> - } >>>>>>>>> - >>>>>>>>> /* >>>>>>>>> * This could be GDB trying to attach. But it could also >be >>>>>>>>> GDB >>>>>>>>> * finishing up a session, with kgdb_connected=0 but GDB >>>>>>>>> sending >>>>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>>-- >>>>>>"For things to change, we must change" >>>>>>-Naresh Bhat >>>>> >>>> >>>> >>>> -- >>>> "For things to change, we must change" >>>> -Naresh Bhat >>>> >>> >>> >>>-- >>>"For things to change, we must change" >>>-Naresh Bhat >> > > >-- >"For things to change, we must change" >-Naresh Bhat ------------------------------------------------------------------------------ Virtualization & Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/ _______________________________________________ E1000-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/e1000-devel To learn more about Intel® Ethernet, visit http://communities.intel.com/community/wired
