public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
* KGTP (Linux Kernel debugger and tracer) 20111111 release (Android support OK)
@ 2011-11-14  5:15 Hui Zhu
  2011-12-12 11:13 ` Geunsik Lim
  0 siblings, 1 reply; 6+ messages in thread
From: Hui Zhu @ 2011-11-14  5:15 UTC (permalink / raw)
  To: linux-kernel, gdb, kgtp
  Cc: Marc Khouzam, Thiago Jung Bauermann, Steven, colyli,
	Christoph Hellwig, Steven Rostedt, Randy Dunlap

KGTP is a realtime and lightweight Linux Kernel GDB debugger and tracer.

It makes Linux Kernel supply a GDB remote debug interface. Then GDB in
current machine or remote machine can debug and trace Linux through
GDB tracepoint without stopping the Linux Kernel.
And even if the board doesn't have GDB on it and doesn't have
interface for remote debug. It can debug the Linux Kernel using
offline debug.
Now, it supports X86-32, X86-64, MIPS and ARM.

Now, KGTP 20111111 release.

The change of this release is:
Add a doc for use KGTP with Android in
https://code.google.com/p/kgtp/wiki/HowToUseKGTPinAndroid
post_handler will make kprobes-optimization cannot be used. So make
gtp_kp_post_handler be call only when tpe->step is true.
Make rdtsc_current to x86 special.
Register easy Kprobe handler to speed up it when no tracepoint access
$cooked_clock, $cooked_rdtsc or "pc_pe" tvariable.
Fix a bug of ARM build.
To get other change info please goto https://code.google.com/p/kgtp/wiki/UPDATE

According to the comments of Christoph.  I make a patch for Linux
Kernel and make it looks OK with checkpatch.pl.  The file gtp.patch is
include in the source of KGTP code.

Thanks,
Hui

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: KGTP (Linux Kernel debugger and tracer) 20111111 release (Android support OK)
  2011-11-14  5:15 KGTP (Linux Kernel debugger and tracer) 20111111 release (Android support OK) Hui Zhu
@ 2011-12-12 11:13 ` Geunsik Lim
  2011-12-12 14:06   ` Hui Zhu
  0 siblings, 1 reply; 6+ messages in thread
From: Geunsik Lim @ 2011-12-12 11:13 UTC (permalink / raw)
  To: Hui Zhu
  Cc: linux-kernel, gdb, kgtp, Marc Khouzam, Thiago Jung Bauermann,
	Steven, colyli, Christoph Hellwig, Steven Rostedt, Randy Dunlap

On Mon, Nov 14, 2011 at 2:15 PM, Hui Zhu <teawater@gmail.com> wrote:
> KGTP is a realtime and lightweight Linux Kernel GDB debugger and tracer.
>
> It makes Linux Kernel supply a GDB remote debug interface. Then GDB in
> current machine or remote machine can debug and trace Linux through
> GDB tracepoint without stopping the Linux Kernel.
> And even if the board doesn't have GDB on it and doesn't have
> interface for remote debug. It can debug the Linux Kernel using
> offline debug.
> Now, it supports X86-32, X86-64, MIPS and ARM.
>
> Now, KGTP 20111111 release.
>
> The change of this release is:
> Add a doc for use KGTP with Android in
> https://code.google.com/p/kgtp/wiki/HowToUseKGTPinAndroid
> post_handler will make kprobes-optimization cannot be used. So make
> gtp_kp_post_handler be call only when tpe->step is true.
> Make rdtsc_current to x86 special.
> Register easy Kprobe handler to speed up it when no tracepoint access
> $cooked_clock, $cooked_rdtsc or "pc_pe" tvariable.
> Fix a bug of ARM build.
> To get other change info please goto https://code.google.com/p/kgtp/wiki/UPDATE
>
> According to the comments of Christoph.  I make a patch for Linux
> Kernel and make it looks OK with checkpatch.pl.  The file gtp.patch is
> include in the source of KGTP code.
Dear Hui Zhu,

Recently, I synchronized KGTP kernel source with svn 838 to test
built-in kernel
after adjusting recent bug-fix. I still had a compilation error.
Please, adjust the below patch content to support  X86/ARM
architecture normally.

==========
From 39d58cc7dab8df5e57fa106e8e7f00e562b45212 Mon Sep 17 00:00:00 2001
From: Geunsik Lim <geunsik.lim@samsung.com>
Date: Mon, 10 Dec 2011 18:08:03 +0900
Subject: [PATCH] Modify perf related func interface.

Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
---
 lib/gtp.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/lib/gtp.c b/lib/gtp.c
index 9bdf82c..9a2670e 100644
--- a/lib/gtp.c
+++ b/lib/gtp.c
@@ -4480,7 +4480,7 @@ restart:
                tve->pts->event =
                        perf_event_create_kernel_counter(&(tve->pts->attr),
                                                         tve->pts->cpu,
-                                                        NULL, NULL, NULL);
+                                                        NULL, NULL);
                if (IS_ERR(tve->pts->event)) {
                        int     ret = PTR_ERR(tve->pts->event);

-- 
1.7.3.4
==========

Thank you for your contribution for embedded kernel debugging

>
> Thanks,
> Hui
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/



-- 
Best regards,
Geunsik Lim ( Samsung Electronics )
Blog : http://blog.naver.com/invain/
Homepage: http://leemgs.fedorapeople.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: KGTP (Linux Kernel debugger and tracer) 20111111 release (Android support OK)
  2011-12-12 11:13 ` Geunsik Lim
@ 2011-12-12 14:06   ` Hui Zhu
  2011-12-13  1:37     ` Geunsik Lim
  0 siblings, 1 reply; 6+ messages in thread
From: Hui Zhu @ 2011-12-12 14:06 UTC (permalink / raw)
  To: Geunsik Lim
  Cc: linux-kernel, gdb, kgtp, Marc Khouzam, Thiago Jung Bauermann,
	Steven, colyli, Christoph Hellwig, Steven Rostedt, Randy Dunlap

Hi Geunsik,

Thanks for your patch.
But  Kernel upstream:
struct perf_event *
perf_event_create_kernel_counter(struct perf_event_attr *attr, int cpu,
				 struct task_struct *task,
				 perf_overflow_handler_t overflow_handler,
				 void *context)

I am sorry that gtp.patch is just for the Kernel upstream (Actually,
it just for review).

I suggest you use LKM if it is OK for you.

If you want include KGTP into your kernel tree or something, maybe I
can supply a special patch for you.

BTW looks I need release an gtp_auto.patch that can patch to most of
Linux kernel.

Thanks,
Hui

On Mon, Dec 12, 2011 at 19:13, Geunsik Lim <leemgs1@gmail.com> wrote:
> On Mon, Nov 14, 2011 at 2:15 PM, Hui Zhu <teawater@gmail.com> wrote:
>> KGTP is a realtime and lightweight Linux Kernel GDB debugger and tracer.
>>
>> It makes Linux Kernel supply a GDB remote debug interface. Then GDB in
>> current machine or remote machine can debug and trace Linux through
>> GDB tracepoint without stopping the Linux Kernel.
>> And even if the board doesn't have GDB on it and doesn't have
>> interface for remote debug. It can debug the Linux Kernel using
>> offline debug.
>> Now, it supports X86-32, X86-64, MIPS and ARM.
>>
>> Now, KGTP 20111111 release.
>>
>> The change of this release is:
>> Add a doc for use KGTP with Android in
>> https://code.google.com/p/kgtp/wiki/HowToUseKGTPinAndroid
>> post_handler will make kprobes-optimization cannot be used. So make
>> gtp_kp_post_handler be call only when tpe->step is true.
>> Make rdtsc_current to x86 special.
>> Register easy Kprobe handler to speed up it when no tracepoint access
>> $cooked_clock, $cooked_rdtsc or "pc_pe" tvariable.
>> Fix a bug of ARM build.
>> To get other change info please goto https://code.google.com/p/kgtp/wiki/UPDATE
>>
>> According to the comments of Christoph.  I make a patch for Linux
>> Kernel and make it looks OK with checkpatch.pl.  The file gtp.patch is
>> include in the source of KGTP code.
> Dear Hui Zhu,
>
> Recently, I synchronized KGTP kernel source with svn 838 to test
> built-in kernel
> after adjusting recent bug-fix. I still had a compilation error.
> Please, adjust the below patch content to support  X86/ARM
> architecture normally.
>
> ==========
> From 39d58cc7dab8df5e57fa106e8e7f00e562b45212 Mon Sep 17 00:00:00 2001
> From: Geunsik Lim <geunsik.lim@samsung.com>
> Date: Mon, 10 Dec 2011 18:08:03 +0900
> Subject: [PATCH] Modify perf related func interface.
>
> Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
> ---
>  lib/gtp.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/lib/gtp.c b/lib/gtp.c
> index 9bdf82c..9a2670e 100644
> --- a/lib/gtp.c
> +++ b/lib/gtp.c
> @@ -4480,7 +4480,7 @@ restart:
>                tve->pts->event =
>                        perf_event_create_kernel_counter(&(tve->pts->attr),
>                                                         tve->pts->cpu,
> -                                                        NULL, NULL, NULL);
> +                                                        NULL, NULL);
>                if (IS_ERR(tve->pts->event)) {
>                        int     ret = PTR_ERR(tve->pts->event);
>
> --
> 1.7.3.4
> ==========
>
> Thank you for your contribution for embedded kernel debugging
>
>>
>> Thanks,
>> Hui
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at  http://www.tux.org/lkml/
>
>
>
> --
> Best regards,
> Geunsik Lim ( Samsung Electronics )
> Blog : http://blog.naver.com/invain/
> Homepage: http://leemgs.fedorapeople.org
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: KGTP (Linux Kernel debugger and tracer) 20111111 release (Android support OK)
  2011-12-12 14:06   ` Hui Zhu
@ 2011-12-13  1:37     ` Geunsik Lim
  2011-12-14 13:09       ` Hui Zhu
  0 siblings, 1 reply; 6+ messages in thread
From: Geunsik Lim @ 2011-12-13  1:37 UTC (permalink / raw)
  To: Hui Zhu
  Cc: linux-kernel, gdb, kgtp, Marc Khouzam, Thiago Jung Bauermann,
	Steven, colyli, Christoph Hellwig, Steven Rostedt, Randy Dunlap

On Mon, Dec 12, 2011 at 11:05 PM, Hui Zhu <teawater@gmail.com> wrote:
> Hi Geunsik,
>
> Thanks for your patch.
> But  Kernel upstream:
> struct perf_event *
> perf_event_create_kernel_counter(struct perf_event_attr *attr, int cpu,
>                                 struct task_struct *task,
>                                 perf_overflow_handler_t overflow_handler,
>                                 void *context)
>
> I am sorry that gtp.patch is just for the Kernel upstream (Actually,
> it just for review).
>
> I suggest you use LKM if it is OK for you.
As you mentioned, LKM is normal in my experience.
But, In embedded environment, built-in kernel including KGTP is important
to debugging instantly without any manipulation and  to review according to
volunteers easily.

>
> If you want include KGTP into your kernel tree or something, maybe I
> can supply a special patch for you.
I think that you can just append exception handling to solve this
issue like belows.
Or, I will suggest for you will keep kgtp-3.1.1.patch  without
kgtp.patch like linux-kernel-rt patch for each kernel version

====
diff --git a/lib/gtp.c b/lib/gtp.c
index 9bdf82c..6253811 100644
--- a/lib/gtp.c
+++ b/lib/gtp.c
@@ -4477,10 +4477,17 @@ restart:
                        continue;

                /* Get event.  */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 1, 0)
                tve->pts->event =
                        perf_event_create_kernel_counter(&(tve->pts->attr),
                                                         tve->pts->cpu,
                                                         NULL, NULL, NULL);
+#else
+               tve->pts->event =
+                       perf_event_create_kernel_counter(&(tve->pts->attr),
+                                                        tve->pts->cpu,
+                                                        NULL, NULL);
+#endif
                if (IS_ERR(tve->pts->event)) {
                        int     ret = PTR_ERR(tve->pts->event);

====

>
> BTW looks I need release an gtp_auto.patch that can patch to most of
> Linux kernel.
>
> Thanks,
> Hui
>
> On Mon, Dec 12, 2011 at 19:13, Geunsik Lim <leemgs1@gmail.com> wrote:
>> On Mon, Nov 14, 2011 at 2:15 PM, Hui Zhu <teawater@gmail.com> wrote:
>>> KGTP is a realtime and lightweight Linux Kernel GDB debugger and tracer.
>>>
>>> It makes Linux Kernel supply a GDB remote debug interface. Then GDB in
>>> current machine or remote machine can debug and trace Linux through
>>> GDB tracepoint without stopping the Linux Kernel.
>>> And even if the board doesn't have GDB on it and doesn't have
>>> interface for remote debug. It can debug the Linux Kernel using
>>> offline debug.
>>> Now, it supports X86-32, X86-64, MIPS and ARM.
>>>
>>> Now, KGTP 20111111 release.
>>>
>>> The change of this release is:
>>> Add a doc for use KGTP with Android in
>>> https://code.google.com/p/kgtp/wiki/HowToUseKGTPinAndroid
>>> post_handler will make kprobes-optimization cannot be used. So make
>>> gtp_kp_post_handler be call only when tpe->step is true.
>>> Make rdtsc_current to x86 special.
>>> Register easy Kprobe handler to speed up it when no tracepoint access
>>> $cooked_clock, $cooked_rdtsc or "pc_pe" tvariable.
>>> Fix a bug of ARM build.
>>> To get other change info please goto https://code.google.com/p/kgtp/wiki/UPDATE
>>>
>>> According to the comments of Christoph.  I make a patch for Linux
>>> Kernel and make it looks OK with checkpatch.pl.  The file gtp.patch is
>>> include in the source of KGTP code.
>> Dear Hui Zhu,
>>
>> Recently, I synchronized KGTP kernel source with svn 838 to test
>> built-in kernel
>> after adjusting recent bug-fix. I still had a compilation error.
>> Please, adjust the below patch content to support  X86/ARM
>> architecture normally.
>>
>> ==========
>> From 39d58cc7dab8df5e57fa106e8e7f00e562b45212 Mon Sep 17 00:00:00 2001
>> From: Geunsik Lim <geunsik.lim@samsung.com>
>> Date: Mon, 10 Dec 2011 18:08:03 +0900
>> Subject: [PATCH] Modify perf related func interface.
>>
>> Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
>> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
>> ---
>>  lib/gtp.c |    2 +-
>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/lib/gtp.c b/lib/gtp.c
>> index 9bdf82c..9a2670e 100644
>> --- a/lib/gtp.c
>> +++ b/lib/gtp.c
>> @@ -4480,7 +4480,7 @@ restart:
>>                tve->pts->event =
>>                        perf_event_create_kernel_counter(&(tve->pts->attr),
>>                                                         tve->pts->cpu,
>> -                                                        NULL, NULL, NULL);
>> +                                                        NULL, NULL);
>>                if (IS_ERR(tve->pts->event)) {
>>                        int     ret = PTR_ERR(tve->pts->event);
>>
>> --
>> 1.7.3.4
>> ==========
>>
>> Thank you for your contribution for embedded kernel debugging
>>
>>>
>>> Thanks,
>>> Hui
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>>> the body of a message to majordomo@vger.kernel.org
>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>> Please read the FAQ at  http://www.tux.org/lkml/
>>
>>
>>
>> --
>> Best regards,
>> Geunsik Lim ( Samsung Electronics )
>> Blog : http://blog.naver.com/invain/
>> Homepage: http://leemgs.fedorapeople.org
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at  http://www.tux.org/lkml/



-- 
Best regards,
Geunsik Lim ( Samsung Electronics )
Blog : http://blog.naver.com/invain/
Homepage: http://leemgs.fedorapeople.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: KGTP (Linux Kernel debugger and tracer) 20111111 release (Android support OK)
  2011-12-13  1:37     ` Geunsik Lim
@ 2011-12-14 13:09       ` Hui Zhu
  2011-12-16 10:05         ` Geunsik Lim
  0 siblings, 1 reply; 6+ messages in thread
From: Hui Zhu @ 2011-12-14 13:09 UTC (permalink / raw)
  To: Geunsik Lim
  Cc: linux-kernel, gdb, kgtp, Marc Khouzam, Thiago Jung Bauermann,
	Steven, colyli, Christoph Hellwig, Steven Rostedt, Randy Dunlap

Hi Geunsik,

I just add a new patch gtp_3.0_to_upstream.patch that can patch Linux
Kernel from 3.0 to upstream in kgtp trunk.
I think maybe it can handle your issue.

Could you help me try it?

Thanks,
Hui

On Tue, Dec 13, 2011 at 09:36, Geunsik Lim <leemgs1@gmail.com> wrote:
> On Mon, Dec 12, 2011 at 11:05 PM, Hui Zhu <teawater@gmail.com> wrote:
>> Hi Geunsik,
>>
>> Thanks for your patch.
>> But  Kernel upstream:
>> struct perf_event *
>> perf_event_create_kernel_counter(struct perf_event_attr *attr, int cpu,
>>                                 struct task_struct *task,
>>                                 perf_overflow_handler_t overflow_handler,
>>                                 void *context)
>>
>> I am sorry that gtp.patch is just for the Kernel upstream (Actually,
>> it just for review).
>>
>> I suggest you use LKM if it is OK for you.
> As you mentioned, LKM is normal in my experience.
> But, In embedded environment, built-in kernel including KGTP is important
> to debugging instantly without any manipulation and  to review according to
> volunteers easily.
>
>>
>> If you want include KGTP into your kernel tree or something, maybe I
>> can supply a special patch for you.
> I think that you can just append exception handling to solve this
> issue like belows.
> Or, I will suggest for you will keep kgtp-3.1.1.patch  without
> kgtp.patch like linux-kernel-rt patch for each kernel version
>
> ====
> diff --git a/lib/gtp.c b/lib/gtp.c
> index 9bdf82c..6253811 100644
> --- a/lib/gtp.c
> +++ b/lib/gtp.c
> @@ -4477,10 +4477,17 @@ restart:
>                        continue;
>
>                /* Get event.  */
> +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 1, 0)
>                tve->pts->event =
>                        perf_event_create_kernel_counter(&(tve->pts->attr),
>                                                         tve->pts->cpu,
>                                                         NULL, NULL, NULL);
> +#else
> +               tve->pts->event =
> +                       perf_event_create_kernel_counter(&(tve->pts->attr),
> +                                                        tve->pts->cpu,
> +                                                        NULL, NULL);
> +#endif
>                if (IS_ERR(tve->pts->event)) {
>                        int     ret = PTR_ERR(tve->pts->event);
>
> ====
>
>>
>> BTW looks I need release an gtp_auto.patch that can patch to most of
>> Linux kernel.
>>
>> Thanks,
>> Hui
>>
>> On Mon, Dec 12, 2011 at 19:13, Geunsik Lim <leemgs1@gmail.com> wrote:
>>> On Mon, Nov 14, 2011 at 2:15 PM, Hui Zhu <teawater@gmail.com> wrote:
>>>> KGTP is a realtime and lightweight Linux Kernel GDB debugger and tracer.
>>>>
>>>> It makes Linux Kernel supply a GDB remote debug interface. Then GDB in
>>>> current machine or remote machine can debug and trace Linux through
>>>> GDB tracepoint without stopping the Linux Kernel.
>>>> And even if the board doesn't have GDB on it and doesn't have
>>>> interface for remote debug. It can debug the Linux Kernel using
>>>> offline debug.
>>>> Now, it supports X86-32, X86-64, MIPS and ARM.
>>>>
>>>> Now, KGTP 20111111 release.
>>>>
>>>> The change of this release is:
>>>> Add a doc for use KGTP with Android in
>>>> https://code.google.com/p/kgtp/wiki/HowToUseKGTPinAndroid
>>>> post_handler will make kprobes-optimization cannot be used. So make
>>>> gtp_kp_post_handler be call only when tpe->step is true.
>>>> Make rdtsc_current to x86 special.
>>>> Register easy Kprobe handler to speed up it when no tracepoint access
>>>> $cooked_clock, $cooked_rdtsc or "pc_pe" tvariable.
>>>> Fix a bug of ARM build.
>>>> To get other change info please goto https://code.google.com/p/kgtp/wiki/UPDATE
>>>>
>>>> According to the comments of Christoph.  I make a patch for Linux
>>>> Kernel and make it looks OK with checkpatch.pl.  The file gtp.patch is
>>>> include in the source of KGTP code.
>>> Dear Hui Zhu,
>>>
>>> Recently, I synchronized KGTP kernel source with svn 838 to test
>>> built-in kernel
>>> after adjusting recent bug-fix. I still had a compilation error.
>>> Please, adjust the below patch content to support  X86/ARM
>>> architecture normally.
>>>
>>> ==========
>>> From 39d58cc7dab8df5e57fa106e8e7f00e562b45212 Mon Sep 17 00:00:00 2001
>>> From: Geunsik Lim <geunsik.lim@samsung.com>
>>> Date: Mon, 10 Dec 2011 18:08:03 +0900
>>> Subject: [PATCH] Modify perf related func interface.
>>>
>>> Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
>>> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
>>> ---
>>>  lib/gtp.c |    2 +-
>>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/lib/gtp.c b/lib/gtp.c
>>> index 9bdf82c..9a2670e 100644
>>> --- a/lib/gtp.c
>>> +++ b/lib/gtp.c
>>> @@ -4480,7 +4480,7 @@ restart:
>>>                tve->pts->event =
>>>                        perf_event_create_kernel_counter(&(tve->pts->attr),
>>>                                                         tve->pts->cpu,
>>> -                                                        NULL, NULL, NULL);
>>> +                                                        NULL, NULL);
>>>                if (IS_ERR(tve->pts->event)) {
>>>                        int     ret = PTR_ERR(tve->pts->event);
>>>
>>> --
>>> 1.7.3.4
>>> ==========
>>>
>>> Thank you for your contribution for embedded kernel debugging
>>>
>>>>
>>>> Thanks,
>>>> Hui
>>>> --
>>>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>>>> the body of a message to majordomo@vger.kernel.org
>>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>>> Please read the FAQ at  http://www.tux.org/lkml/
>>>
>>>
>>>
>>> --
>>> Best regards,
>>> Geunsik Lim ( Samsung Electronics )
>>> Blog : http://blog.naver.com/invain/
>>> Homepage: http://leemgs.fedorapeople.org
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>>> the body of a message to majordomo@vger.kernel.org
>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>> Please read the FAQ at  http://www.tux.org/lkml/
>
>
>
> --
> Best regards,
> Geunsik Lim ( Samsung Electronics )
> Blog : http://blog.naver.com/invain/
> Homepage: http://leemgs.fedorapeople.org
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: KGTP (Linux Kernel debugger and tracer) 20111111 release (Android support OK)
  2011-12-14 13:09       ` Hui Zhu
@ 2011-12-16 10:05         ` Geunsik Lim
  0 siblings, 0 replies; 6+ messages in thread
From: Geunsik Lim @ 2011-12-16 10:05 UTC (permalink / raw)
  To: Hui Zhu
  Cc: linux-kernel, gdb, kgtp, Marc Khouzam, Thiago Jung Bauermann,
	Steven, colyli, Christoph Hellwig, Steven Rostedt, Randy Dunlap

On Wed, Dec 14, 2011 at 10:08 PM, Hui Zhu <teawater@gmail.com> wrote:
> Hi Geunsik,
>
> I just add a new patch gtp_3.0_to_upstream.patch that can patch Linux
> Kernel from 3.0 to upstream in kgtp trunk.
I checked changed patch files after syncing svn 853. It's good.
> I think maybe it can handle your issue.
Yepp. But, I can help you by spending my valuable time as a hobby when
I am free.
>
> Could you help me try it?
>
> Thanks,
> Hui
>
> On Tue, Dec 13, 2011 at 09:36, Geunsik Lim <leemgs1@gmail.com> wrote:
>> On Mon, Dec 12, 2011 at 11:05 PM, Hui Zhu <teawater@gmail.com> wrote:
>>> Hi Geunsik,
>>>
>>> Thanks for your patch.
>>> But  Kernel upstream:
>>> struct perf_event *
>>> perf_event_create_kernel_counter(struct perf_event_attr *attr, int cpu,
>>>                                 struct task_struct *task,
>>>                                 perf_overflow_handler_t overflow_handler,
>>>                                 void *context)
>>>
>>> I am sorry that gtp.patch is just for the Kernel upstream (Actually,
>>> it just for review).
>>>
>>> I suggest you use LKM if it is OK for you.
>> As you mentioned, LKM is normal in my experience.
>> But, In embedded environment, built-in kernel including KGTP is important
>> to debugging instantly without any manipulation and  to review according to
>> volunteers easily.
>>
>>>
>>> If you want include KGTP into your kernel tree or something, maybe I
>>> can supply a special patch for you.
>> I think that you can just append exception handling to solve this
>> issue like belows.
>> Or, I will suggest for you will keep kgtp-3.1.1.patch  without
>> kgtp.patch like linux-kernel-rt patch for each kernel version
>>
>> ====
>> diff --git a/lib/gtp.c b/lib/gtp.c
>> index 9bdf82c..6253811 100644
>> --- a/lib/gtp.c
>> +++ b/lib/gtp.c
>> @@ -4477,10 +4477,17 @@ restart:
>>                        continue;
>>
>>                /* Get event.  */
>> +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 1, 0)
>>                tve->pts->event =
>>                        perf_event_create_kernel_counter(&(tve->pts->attr),
>>                                                         tve->pts->cpu,
>>                                                         NULL, NULL, NULL);
>> +#else
>> +               tve->pts->event =
>> +                       perf_event_create_kernel_counter(&(tve->pts->attr),
>> +                                                        tve->pts->cpu,
>> +                                                        NULL, NULL);
>> +#endif
>>                if (IS_ERR(tve->pts->event)) {
>>                        int     ret = PTR_ERR(tve->pts->event);
>>
>> ====
>>
>>>
>>> BTW looks I need release an gtp_auto.patch that can patch to most of
>>> Linux kernel.
>>>
>>> Thanks,
>>> Hui
>>>
>>> On Mon, Dec 12, 2011 at 19:13, Geunsik Lim <leemgs1@gmail.com> wrote:
>>>> On Mon, Nov 14, 2011 at 2:15 PM, Hui Zhu <teawater@gmail.com> wrote:
>>>>> KGTP is a realtime and lightweight Linux Kernel GDB debugger and tracer.
>>>>>
>>>>> It makes Linux Kernel supply a GDB remote debug interface. Then GDB in
>>>>> current machine or remote machine can debug and trace Linux through
>>>>> GDB tracepoint without stopping the Linux Kernel.
>>>>> And even if the board doesn't have GDB on it and doesn't have
>>>>> interface for remote debug. It can debug the Linux Kernel using
>>>>> offline debug.
>>>>> Now, it supports X86-32, X86-64, MIPS and ARM.
>>>>>
>>>>> Now, KGTP 20111111 release.
>>>>>
>>>>> The change of this release is:
>>>>> Add a doc for use KGTP with Android in
>>>>> https://code.google.com/p/kgtp/wiki/HowToUseKGTPinAndroid
>>>>> post_handler will make kprobes-optimization cannot be used. So make
>>>>> gtp_kp_post_handler be call only when tpe->step is true.
>>>>> Make rdtsc_current to x86 special.
>>>>> Register easy Kprobe handler to speed up it when no tracepoint access
>>>>> $cooked_clock, $cooked_rdtsc or "pc_pe" tvariable.
>>>>> Fix a bug of ARM build.
>>>>> To get other change info please goto https://code.google.com/p/kgtp/wiki/UPDATE
>>>>>
>>>>> According to the comments of Christoph.  I make a patch for Linux
>>>>> Kernel and make it looks OK with checkpatch.pl.  The file gtp.patch is
>>>>> include in the source of KGTP code.
>>>> Dear Hui Zhu,
>>>>
>>>> Recently, I synchronized KGTP kernel source with svn 838 to test
>>>> built-in kernel
>>>> after adjusting recent bug-fix. I still had a compilation error.
>>>> Please, adjust the below patch content to support  X86/ARM
>>>> architecture normally.
>>>>
>>>> ==========
>>>> From 39d58cc7dab8df5e57fa106e8e7f00e562b45212 Mon Sep 17 00:00:00 2001
>>>> From: Geunsik Lim <geunsik.lim@samsung.com>
>>>> Date: Mon, 10 Dec 2011 18:08:03 +0900
>>>> Subject: [PATCH] Modify perf related func interface.
>>>>
>>>> Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
>>>> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
>>>> ---
>>>>  lib/gtp.c |    2 +-
>>>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>>>
>>>> diff --git a/lib/gtp.c b/lib/gtp.c
>>>> index 9bdf82c..9a2670e 100644
>>>> --- a/lib/gtp.c
>>>> +++ b/lib/gtp.c
>>>> @@ -4480,7 +4480,7 @@ restart:
>>>>                tve->pts->event =
>>>>                        perf_event_create_kernel_counter(&(tve->pts->attr),
>>>>                                                         tve->pts->cpu,
>>>> -                                                        NULL, NULL, NULL);
>>>> +                                                        NULL, NULL);
>>>>                if (IS_ERR(tve->pts->event)) {
>>>>                        int     ret = PTR_ERR(tve->pts->event);
>>>>
>>>> --
>>>> 1.7.3.4
>>>> ==========
>>>>
>>>> Thank you for your contribution for embedded kernel debugging
>>>>
>>>>>
>>>>> Thanks,
>>>>> Hui
>>>>> --
>>>>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>>>>> the body of a message to majordomo@vger.kernel.org
>>>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>>>> Please read the FAQ at  http://www.tux.org/lkml/
>>>>
>>>>
>>>>
>>>> --
>>>> Best regards,
>>>> Geunsik Lim ( Samsung Electronics )
>>>> Blog : http://blog.naver.com/invain/
>>>> Homepage: http://leemgs.fedorapeople.org
>>>> --
>>>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>>>> the body of a message to majordomo@vger.kernel.org
>>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>>> Please read the FAQ at  http://www.tux.org/lkml/
>>
>>
>>
>> --
>> Best regards,
>> Geunsik Lim ( Samsung Electronics )
>> Blog : http://blog.naver.com/invain/
>> Homepage: http://leemgs.fedorapeople.org
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at  http://www.tux.org/lkml/



-- 
Best regards,
Geunsik Lim ( Samsung Electronics )
Blog : http://blog.naver.com/invain/
Homepage: http://leemgs.fedorapeople.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2011-12-16 10:05 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-11-14  5:15 KGTP (Linux Kernel debugger and tracer) 20111111 release (Android support OK) Hui Zhu
2011-12-12 11:13 ` Geunsik Lim
2011-12-12 14:06   ` Hui Zhu
2011-12-13  1:37     ` Geunsik Lim
2011-12-14 13:09       ` Hui Zhu
2011-12-16 10:05         ` Geunsik Lim

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).