I see. However I doubt it's a driver issue. If loading kgdboe with module works 
and if built into kernel doesn't!

-Tushar

>-----Original Message-----
>From: Naresh Bhat [mailto:[email protected]]
>Sent: Wednesday, March 14, 2012 11:52 AM
>To: Dave, Tushar N
>Cc: [email protected]
>Subject: Re: [PATCH] kgdboe patch
>
>If the x86 target booted via NFS, passed the kernel parameter with
>kgdbwait, in that case how one can insert the module ? I don't think
>it is possible.
>
>If we make it as a built-in in the kernel the target will be waiting
>for the GDB connection over Ethernet with the following command line
>arguments in the pxe configuration file.
>
>e.g.
>
>DEFAULT bzImage root=/dev/nfs rw ip=dhcp kgdboe=@<target
>IP>/eth0,@<Host IP>/ kgdbwait
>
>On 3/14/12, Dave, Tushar N <[email protected]> wrote:
>> 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
>>
>
>
>--
>"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&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to