* Systemtap is broken on latest ElRepo LT kernels (4.4.x)
@ 2019-02-01 9:38 Kirill Borodin
2019-02-01 11:35 ` Hou Tao
0 siblings, 1 reply; 4+ messages in thread
From: Kirill Borodin @ 2019-02-01 9:38 UTC (permalink / raw)
To: systemtap
Hi, All!
I've tried all systemtap versions 3.x and 4.x for ELRepo LT-kernels, latest
kernels are not supported, for example 4.4.169, 4.4.172 (last one) but it
is working on 4.4.145 !
If it's known bug, please, point me to the thread
I've builded systemtap on the same machines where I trying to use it and
got following errors:
# stap -ve 'probe begin { log("hello world") exit () }' 2>&1 | less
Pass 1: parsed user script and 483 library scripts using
275600virt/76472res/6872shr/69832data kb, in 650usr/30sys/688real ms.
Pass 2: analyzed script: 1 probe, 2 functions, 0 embeds, 0 globals using
277184virt/78116res/6944shr/71416data kb, in 10usr/0sys/9real ms.
Pass 3: translated to C into
"/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c" using
277316virt/79084res/7828shr/71548data kb, in 0usr/0sys/0real ms.
In file included from /usr/share/systemtap/runtime/linux/runtime.h:214:0,
from /usr/share/systemtap/runtime/runtime.h:26,
from
/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
/usr/share/systemtap/runtime/linux/access_process_vm.h: In function
‘__access_process_vm_’:
/usr/share/systemtap/runtime/linux/access_process_vm.h:54:7: error: passing
argument 6 of ‘get_user_pages’ makes pointer from integer without a cast
[-Werror]
ret = get_user_pages (tsk, mm, addr, 1, write, 1, &page, &vma);
^
In file included from include/linux/pid_namespace.h:6:0,
from include/linux/ptrace.h:8,
from include/linux/ftrace.h:13,
from include/linux/kprobes.h:42,
from /usr/share/systemtap/runtime/linux/runtime.h:21,
from /usr/share/systemtap/runtime/runtime.h:26,
from
/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
include/linux/mm.h:1200:6: note: expected ‘struct page **’ but argument is
of type ‘int’
long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
^
In file included from /usr/share/systemtap/runtime/linux/runtime.h:214:0,
from /usr/share/systemtap/runtime/runtime.h:26,
from
/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
/usr/share/systemtap/runtime/linux/access_process_vm.h:54:7: error: passing
argument 7 of ‘get_user_pages’ from incompatible pointer type [-Werror]
ret = get_user_pages (tsk, mm, addr, 1, write, 1, &page, &vma);
^
In file included from include/linux/pid_namespace.h:6:0,
from include/linux/ptrace.h:8,
from include/linux/ftrace.h:13,
from include/linux/kprobes.h:42,
from /usr/share/systemtap/runtime/linux/runtime.h:21,
from /usr/share/systemtap/runtime/runtime.h:26,
from
/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
include/linux/mm.h:1200:6: note: expected ‘struct vm_area_struct **’ but
argument is of type ‘struct page **’
long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
^
In file included from /usr/share/systemtap/runtime/linux/runtime.h:214:0,
from /usr/share/systemtap/runtime/runtime.h:26,
from
/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
/usr/share/systemtap/runtime/linux/access_process_vm.h:54:7: error: too
many arguments to function ‘get_user_pages’
ret = get_user_pages (tsk, mm, addr, 1, write, 1, &page, &vma);
^
In file included from include/linux/pid_namespace.h:6:0,
from include/linux/ptrace.h:8,
from include/linux/ftrace.h:13,
from include/linux/kprobes.h:42,
from /usr/share/systemtap/runtime/linux/runtime.h:21,
from /usr/share/systemtap/runtime/runtime.h:26,
from
/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
include/linux/mm.h:1200:6: note: declared here
long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
^
/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c: At top
level:
cc1: error: unrecognized command line option "-Wno-tautological-compare"
[-Werror]
cc1: all warnings being treated as errors
make[1]: ***
[/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.o] Error 1
make: *** [_module_/tmp/stap38hdTg] Error 2
WARNING: kbuild exited with status: 2
Pass 4: compiled C into "stap_4937637228108ffaaea1709160cfed96_1147.ko" in
8030usr/1810sys/9721real ms.
Pass 4: compilation failed. [man error::pass4]
Thanks!
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Systemtap is broken on latest ElRepo LT kernels (4.4.x)
2019-02-01 9:38 Systemtap is broken on latest ElRepo LT kernels (4.4.x) Kirill Borodin
@ 2019-02-01 11:35 ` Hou Tao
2019-02-01 13:32 ` Kirill Borodin
0 siblings, 1 reply; 4+ messages in thread
From: Hou Tao @ 2019-02-01 11:35 UTC (permalink / raw)
To: Kirill Borodin, systemtap
[-- Attachment #1: Type: text/plain, Size: 6198 bytes --]
Hi,
On 2019/2/1 17:38, Kirill Borodin wrote:
> Hi, All!
>
> I've tried all systemtap versions 3.x and 4.x for ELRepo LT-kernels, latest
> kernels are not supported, for example 4.4.169, 4.4.172 (last one) but it
> is working on 4.4.145 !
>
> If it's known bug, please, point me to the thread
That's because commit 768ae309a961 ("mm: replace get_user_pages() write/force parameters with gup_flags")
is back-ported to linux-stable-4.4 (the corresponding commit is 8e50b8b07f46), and it changes the function
signature of get_user_pages() as showed in the following diff-stat:
diff --git a/include/linux/mm.h b/include/linux/mm.h
index 5c18cd9c72d2..d1cfd3657cce 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -1199,7 +1199,7 @@ long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
struct vm_area_struct **vmas, int *nonblocking);
long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
unsigned long start, unsigned long nr_pages,
- int write, int force, struct page **pages,
+ unsigned int gup_flags, struct page **pages,
struct vm_area_struct **vmas);
long get_user_pages_locked(struct task_struct *tsk, struct mm_struct *mm,
unsigned long start, unsigned long nr_pages,
Could you please try the attached patch for Systemtap ?
Regards,
Tao
>
> I've builded systemtap on the same machines where I trying to use it and
> got following errors:
>
> # stap -ve 'probe begin { log("hello world") exit () }' 2>&1 | less
>
>
> Pass 1: parsed user script and 483 library scripts using
> 275600virt/76472res/6872shr/69832data kb, in 650usr/30sys/688real ms.
>
> Pass 2: analyzed script: 1 probe, 2 functions, 0 embeds, 0 globals using
> 277184virt/78116res/6944shr/71416data kb, in 10usr/0sys/9real ms.
>
> Pass 3: translated to C into
> "/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c" using
> 277316virt/79084res/7828shr/71548data kb, in 0usr/0sys/0real ms.
>
> In file included from /usr/share/systemtap/runtime/linux/runtime.h:214:0,
>
> from /usr/share/systemtap/runtime/runtime.h:26,
>
> from
> /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
>
> /usr/share/systemtap/runtime/linux/access_process_vm.h: In function
> â__access_process_vm_â:
>
> /usr/share/systemtap/runtime/linux/access_process_vm.h:54:7: error: passing
> argument 6 of âget_user_pagesâ makes pointer from integer without a cast
> [-Werror]
>
> ret = get_user_pages (tsk, mm, addr, 1, write, 1, &page, &vma);
>
> ^
>> In file included from include/linux/pid_namespace.h:6:0,
>
> from include/linux/ptrace.h:8,
>
> from include/linux/ftrace.h:13,
>
> from include/linux/kprobes.h:42,
>
> from /usr/share/systemtap/runtime/linux/runtime.h:21,
>
> from /usr/share/systemtap/runtime/runtime.h:26,
>
> from
> /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
>
> include/linux/mm.h:1200:6: note: expected âstruct page **â but argument is
> of type âintâ
>
> long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
>
> ^
>
> In file included from /usr/share/systemtap/runtime/linux/runtime.h:214:0,
>
> from /usr/share/systemtap/runtime/runtime.h:26,
>
> from
> /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
>
> /usr/share/systemtap/runtime/linux/access_process_vm.h:54:7: error: passing
> argument 7 of âget_user_pagesâ from incompatible pointer type [-Werror]
>
> ret = get_user_pages (tsk, mm, addr, 1, write, 1, &page, &vma);
>
> ^
>
> In file included from include/linux/pid_namespace.h:6:0,
>
> from include/linux/ptrace.h:8,
>
> from include/linux/ftrace.h:13,
>
> from include/linux/kprobes.h:42,
>
> from /usr/share/systemtap/runtime/linux/runtime.h:21,
>
> from /usr/share/systemtap/runtime/runtime.h:26,
>
> from
> /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
>
> include/linux/mm.h:1200:6: note: expected âstruct vm_area_struct **â but
> argument is of type âstruct page **â
>
> long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
>
> ^
>
> In file included from /usr/share/systemtap/runtime/linux/runtime.h:214:0,
>
> from /usr/share/systemtap/runtime/runtime.h:26,
>
> from
> /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
>
> /usr/share/systemtap/runtime/linux/access_process_vm.h:54:7: error: too
> many arguments to function âget_user_pagesâ
>
> ret = get_user_pages (tsk, mm, addr, 1, write, 1, &page, &vma);
>
> ^
>
> In file included from include/linux/pid_namespace.h:6:0,
>
> from include/linux/ptrace.h:8,
>
> from include/linux/ftrace.h:13,
>
> from include/linux/kprobes.h:42,
>
> from /usr/share/systemtap/runtime/linux/runtime.h:21,
>
> from /usr/share/systemtap/runtime/runtime.h:26,
>
> from
> /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
>
> include/linux/mm.h:1200:6: note: declared here
>
> long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
>
> ^
>
> /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c: At top
> level:
>
> cc1: error: unrecognized command line option "-Wno-tautological-compare"
> [-Werror]
>
> cc1: all warnings being treated as errors
>
> make[1]: ***
> [/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.o] Error 1
>
> make: *** [_module_/tmp/stap38hdTg] Error 2
>
> WARNING: kbuild exited with status: 2
>
> Pass 4: compiled C into "stap_4937637228108ffaaea1709160cfed96_1147.ko" in
> 8030usr/1810sys/9721real ms.
>
> Pass 4: compilation failed. [man error::pass4]
>
> Thanks!
>
> .
>
[-- Attachment #2: 0001-Fix-get_user_pages-autoconf-test-for-4.4.y-kernel.patch --]
[-- Type: text/plain, Size: 4545 bytes --]
From 5aac815209f36bbfd1f696ac1cb8b65bf48fe102 Mon Sep 17 00:00:00 2001
From: Hou Tao <houtao1@huawei.com>
Date: Fri, 1 Feb 2019 19:22:57 +0800
Subject: [PATCH] Fix get_user_pages() autoconf test for 4.4.y kernel
The following kernel commit has been back-ported to linux-4.4.y kernel:
commit 8e50b8b07f462ab4b91bc1491b1c91bd75e4ad40
Author: Lorenzo Stoakes <lstoakes@gmail.com>
Date: Thu Oct 13 01:20:16 2016 +0100
mm: replace get_user_pages() write/force parameters with gup_flags
commit 768ae309a96103ed02eb1e111e838c87854d8b51 upstream.
This removes the 'write' and 'force' from get_user_pages() and replaces
them with 'gup_flags' to make the use of FOLL_FORCE explicit in callers
as use of this flag can result in surprising behaviour (and hence bugs)
within the mm subsystem.
And it changes the function signature of get_user_pages(), so introduce
an extra flag STAPCONF_GET_USER_PAGES_FLAGS and the corresponding test program
to fix it.
Signed-off-by: Hou Tao <houtao1@huawei.com>
---
buildrun.cxx | 2 ++
runtime/linux/access_process_vm.h | 7 +++++
runtime/linux/autoconf-get_user_pages-flags.c | 41 +++++++++++++++++++++++++++
3 files changed, 50 insertions(+)
create mode 100644 runtime/linux/autoconf-get_user_pages-flags.c
diff --git a/buildrun.cxx b/buildrun.cxx
index cef14addc..3bc5cfdd6 100644
--- a/buildrun.cxx
+++ b/buildrun.cxx
@@ -463,6 +463,8 @@ compile_pass (systemtap_session& s)
"STAPCONF_GET_USER_PAGES_REMOTE_FLAGS", NULL);
output_autoconf(s, o, "autoconf-get_user_pages_remote-flags_locked.c",
"STAPCONF_GET_USER_PAGES_REMOTE_FLAGS_LOCKED", NULL);
+ output_autoconf(s, o, "autoconf-get_user_pages-flags.c",
+ "STAPCONF_GET_USER_PAGES_FLAGS", NULL);
output_autoconf(s, o, "autoconf-bio-bi_opf.c", "STAPCONF_BIO_BI_OPF", NULL);
output_autoconf(s, o, "autoconf-linux-sched_headers.c",
"STAPCONF_LINUX_SCHED_HEADERS", NULL);
diff --git a/runtime/linux/access_process_vm.h b/runtime/linux/access_process_vm.h
index 52144e725..94c480496 100644
--- a/runtime/linux/access_process_vm.h
+++ b/runtime/linux/access_process_vm.h
@@ -51,7 +51,14 @@ __access_process_vm_ (struct task_struct *tsk, unsigned long addr, void *buf,
ret = get_user_pages_remote (tsk, mm, addr, 1, write, 1, &page, &vma);
#endif
#else /* !STAPCONF_GET_USER_PAGES_REMOTE* */
+#if defined(STAPCONF_GET_USER_PAGES_FLAGS)
+ unsigned int flags = FOLL_FORCE;
+ if (write)
+ flags |= FOLL_WRITE;
+ ret = get_user_pages (tsk, mm, addr, 1, flags, &page, &vma);
+#else
ret = get_user_pages (tsk, mm, addr, 1, write, 1, &page, &vma);
+#endif
#endif
if (ret <= 0)
break;
diff --git a/runtime/linux/autoconf-get_user_pages-flags.c b/runtime/linux/autoconf-get_user_pages-flags.c
new file mode 100644
index 000000000..f135afa11
--- /dev/null
+++ b/runtime/linux/autoconf-get_user_pages-flags.c
@@ -0,0 +1,41 @@
+#include <linux/mm.h>
+
+//
+// The following kernel commit changed the get_user_pages() function signature
+// on linux-4.4.y:
+//
+// commit 8e50b8b07f462ab4b91bc1491b1c91bd75e4ad40
+// Author: Lorenzo Stoakes <lstoakes@gmail.com>
+// Date: Thu Oct 13 01:20:16 2016 +0100
+//
+// mm: replace get_user_pages() write/force parameters with gup_flags
+//
+// commit 768ae309a96103ed02eb1e111e838c87854d8b51 upstream.
+//
+// This removes the 'write' and 'force' from get_user_pages() and replaces
+// them with 'gup_flags' to make the use of FOLL_FORCE explicit in callers
+// as use of this flag can result in surprising behaviour (and hence bugs)
+// within the mm subsystem.
+//
+// This changed the function signature from:
+//
+// long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
+// unsigned long start, unsigned long nr_pages,
+// int write, int force, struct page **pages,
+// struct vm_area_struct **vmas);
+//
+// to:
+//
+// long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
+// unsigned long start, unsigned long nr_pages,
+// unsigned int gup_flags, struct page **pages,
+// struct vm_area_struct **vmas);
+//
+
+long gupr_wrapper(struct task_struct *tsk, struct mm_struct *mm,
+ unsigned long start, unsigned long nr_pages,
+ unsigned int gup_flags, struct page **pages,
+ struct vm_area_struct **vmas)
+{
+ return get_user_pages(tsk, mm, start, nr_pages, gup_flags, pages, vmas);
+}
--
2.16.2.dirty
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Systemtap is broken on latest ElRepo LT kernels (4.4.x)
2019-02-01 11:35 ` Hou Tao
@ 2019-02-01 13:32 ` Kirill Borodin
2019-02-04 16:58 ` Frank Ch. Eigler
0 siblings, 1 reply; 4+ messages in thread
From: Kirill Borodin @ 2019-02-01 13:32 UTC (permalink / raw)
To: Hou Tao; +Cc: systemtap
Hi Hou!
Thanks, patch works fine for 4.0 systemtap and for both el6/el7 lt-kernels!
I think we need ping ElRepo with this patch, but they support only 3.3
version AFAIK
Thanks again Hou!
On Fri, Feb 1, 2019 at 2:35 PM Hou Tao <houtao1@huawei.com> wrote:
> Hi,
>
> On 2019/2/1 17:38, Kirill Borodin wrote:
> > Hi, All!
> >
> > I've tried all systemtap versions 3.x and 4.x for ELRepo LT-kernels,
> latest
> > kernels are not supported, for example 4.4.169, 4.4.172 (last one) but it
> > is working on 4.4.145 !
> >
> > If it's known bug, please, point me to the thread
> That's because commit 768ae309a961 ("mm: replace get_user_pages()
> write/force parameters with gup_flags")
> is back-ported to linux-stable-4.4 (the corresponding commit is
> 8e50b8b07f46), and it changes the function
> signature of get_user_pages() as showed in the following diff-stat:
>
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index 5c18cd9c72d2..d1cfd3657cce 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -1199,7 +1199,7 @@ long __get_user_pages(struct task_struct *tsk,
> struct mm_struct *mm,
> struct vm_area_struct **vmas, int *nonblocking);
> long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
> unsigned long start, unsigned long nr_pages,
> - int write, int force, struct page **pages,
> + unsigned int gup_flags, struct page **pages,
> struct vm_area_struct **vmas);
> long get_user_pages_locked(struct task_struct *tsk, struct mm_struct *mm,
> unsigned long start, unsigned long nr_pages,
>
> Could you please try the attached patch for Systemtap ?
>
> Regards,
> Tao
> >
> > I've builded systemtap on the same machines where I trying to use it and
> > got following errors:
> >
> > # stap -ve 'probe begin { log("hello world") exit () }' 2>&1 | less
> >
> >
> > Pass 1: parsed user script and 483 library scripts using
> > 275600virt/76472res/6872shr/69832data kb, in 650usr/30sys/688real ms.
> >
> > Pass 2: analyzed script: 1 probe, 2 functions, 0 embeds, 0 globals using
> > 277184virt/78116res/6944shr/71416data kb, in 10usr/0sys/9real ms.
> >
> > Pass 3: translated to C into
> > "/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c" using
> > 277316virt/79084res/7828shr/71548data kb, in 0usr/0sys/0real ms.
> >
> > In file included from /usr/share/systemtap/runtime/linux/runtime.h:214:0,
> >
> > from /usr/share/systemtap/runtime/runtime.h:26,
> >
> > from
> > /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
> >
> > /usr/share/systemtap/runtime/linux/access_process_vm.h: In function
> > ‘__access_process_vm_’:
> >
> > /usr/share/systemtap/runtime/linux/access_process_vm.h:54:7: error:
> passing
> > argument 6 of ‘get_user_pages’ makes pointer from integer without a cast
> > [-Werror]
> >
> > ret = get_user_pages (tsk, mm, addr, 1, write, 1, &page, &vma);
> >
> > ^
> >> In file included from include/linux/pid_namespace.h:6:0,
> >
> > from include/linux/ptrace.h:8,
> >
> > from include/linux/ftrace.h:13,
> >
> > from include/linux/kprobes.h:42,
> >
> > from /usr/share/systemtap/runtime/linux/runtime.h:21,
> >
> > from /usr/share/systemtap/runtime/runtime.h:26,
> >
> > from
> > /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
> >
> > include/linux/mm.h:1200:6: note: expected ‘struct page **’ but argument
> is
> > of type ‘int’
> >
> > long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
> >
> > ^
> >
> > In file included from /usr/share/systemtap/runtime/linux/runtime.h:214:0,
> >
> > from /usr/share/systemtap/runtime/runtime.h:26,
> >
> > from
> > /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
> >
> > /usr/share/systemtap/runtime/linux/access_process_vm.h:54:7: error:
> passing
> > argument 7 of ‘get_user_pages’ from incompatible pointer type [-Werror]
> >
> > ret = get_user_pages (tsk, mm, addr, 1, write, 1, &page, &vma);
> >
> > ^
> >
> > In file included from include/linux/pid_namespace.h:6:0,
> >
> > from include/linux/ptrace.h:8,
> >
> > from include/linux/ftrace.h:13,
> >
> > from include/linux/kprobes.h:42,
> >
> > from /usr/share/systemtap/runtime/linux/runtime.h:21,
> >
> > from /usr/share/systemtap/runtime/runtime.h:26,
> >
> > from
> > /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
> >
> > include/linux/mm.h:1200:6: note: expected ‘struct vm_area_struct **’ but
> > argument is of type ‘struct page **’
> >
> > long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
> >
> > ^
> >
> > In file included from /usr/share/systemtap/runtime/linux/runtime.h:214:0,
> >
> > from /usr/share/systemtap/runtime/runtime.h:26,
> >
> > from
> > /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
> >
> > /usr/share/systemtap/runtime/linux/access_process_vm.h:54:7: error: too
> > many arguments to function ‘get_user_pages’
> >
> > ret = get_user_pages (tsk, mm, addr, 1, write, 1, &page, &vma);
> >
> > ^
> >
> > In file included from include/linux/pid_namespace.h:6:0,
> >
> > from include/linux/ptrace.h:8,
> >
> > from include/linux/ftrace.h:13,
> >
> > from include/linux/kprobes.h:42,
> >
> > from /usr/share/systemtap/runtime/linux/runtime.h:21,
> >
> > from /usr/share/systemtap/runtime/runtime.h:26,
> >
> > from
> > /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c:25:
> >
> > include/linux/mm.h:1200:6: note: declared here
> >
> > long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
> >
> > ^
> >
> > /tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.c: At top
> > level:
> >
> > cc1: error: unrecognized command line option "-Wno-tautological-compare"
> > [-Werror]
> >
> > cc1: all warnings being treated as errors
> >
> > make[1]: ***
> > [/tmp/stap38hdTg/stap_4937637228108ffaaea1709160cfed96_1147_src.o] Error
> 1
> >
> > make: *** [_module_/tmp/stap38hdTg] Error 2
> >
> > WARNING: kbuild exited with status: 2
> >
> > Pass 4: compiled C into "stap_4937637228108ffaaea1709160cfed96_1147.ko"
> in
> > 8030usr/1810sys/9721real ms.
> >
> > Pass 4: compilation failed. [man error::pass4]
> >
> > Thanks!
> >
> > .
> >
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Systemtap is broken on latest ElRepo LT kernels (4.4.x)
2019-02-01 13:32 ` Kirill Borodin
@ 2019-02-04 16:58 ` Frank Ch. Eigler
0 siblings, 0 replies; 4+ messages in thread
From: Frank Ch. Eigler @ 2019-02-04 16:58 UTC (permalink / raw)
To: Kirill Borodin; +Cc: Hou Tao, systemtap
> Thanks, patch works fine for 4.0 systemtap and for both el6/el7 lt-kernels!
Thanks for the patch & testing: merged!
- FChE
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2019-02-04 16:58 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-01 9:38 Systemtap is broken on latest ElRepo LT kernels (4.4.x) Kirill Borodin
2019-02-01 11:35 ` Hou Tao
2019-02-01 13:32 ` Kirill Borodin
2019-02-04 16:58 ` Frank Ch. Eigler
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).