Messages in this thread | | | Date | Fri, 16 Dec 2011 19:05:01 +0900 | Subject | Re: KGTP (Linux Kernel debugger and tracer) 20111111 release (Android support OK) | From | Geunsik Lim <> |
| |
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/ -- 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/
| |