lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CABiHV1QBxvWD_VZa2554+c6u-JL5mzas6RxZtEBz5YiaqUP_Cw@mail.gmail.com>
Date:	Tue, 13 Dec 2011 10:36:40 +0900
From:	Geunsik Lim <leemgs1@...il.com>
To:	Hui Zhu <teawater@...il.com>
Cc:	linux-kernel@...r.kernel.org,
	"gdb@...rceware.org" <gdb@...rceware.org>,
	kgtp <kgtp@...elists.org>,
	Marc Khouzam <marc.khouzam@...csson.com>,
	Thiago Jung Bauermann <thiago.bauermann@...il.com>,
	Steven <mqyoung@...il.com>, colyli@...il.com,
	Christoph Hellwig <hch@...radead.org>,
	Steven Rostedt <rostedt@...dmis.org>,
	Randy Dunlap <rdunlap@...otime.net>
Subject: Re: KGTP (Linux Kernel debugger and tracer) 20111111 release (Android
 support OK)

On Mon, Dec 12, 2011 at 11:05 PM, Hui Zhu <teawater@...il.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@...il.com> wrote:
>> On Mon, Nov 14, 2011 at 2:15 PM, Hui Zhu <teawater@...il.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@...sung.com>
>> Date: Mon, 10 Dec 2011 18:08:03 +0900
>> Subject: [PATCH] Modify perf related func interface.
>>
>> Signed-off-by: Geunsik Lim <geunsik.lim@...sung.com>
>> Signed-off-by: Kyungmin Park <kyungmin.park@...sung.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@...r.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@...r.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@...r.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@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ