tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
lttng-modules: fix build on kernel 3.18
Domen Kožar
11 years ago
ac80e36e
024a28e5
+72
-1
2 changed files
expand all
collapse all
unified
split
pkgs
os-specific
linux
lttng-modules
6f0af2643c40b57280796eaa4fe60ce4f678b6dc.patch
default.nix
+71
pkgs/os-specific/linux/lttng-modules/6f0af2643c40b57280796eaa4fe60ce4f678b6dc.patch
···
1
1
+
From 6f0af2643c40b57280796eaa4fe60ce4f678b6dc Mon Sep 17 00:00:00 2001
2
2
+
From: =?UTF-8?q?Andr=C3=A9=20Goddard=20Rosa?= <andre.goddard@gmail.com>
3
3
+
Date: Thu, 13 Nov 2014 21:33:02 -0800
4
4
+
Subject: [PATCH] Fix compilation on Linux kernel >= 3.18.0
5
5
+
MIME-Version: 1.0
6
6
+
Content-Type: text/plain; charset=UTF-8
7
7
+
Content-Transfer-Encoding: 8bit
8
8
+
9
9
+
Since kernel commit 8a9522d2fe compilation fails as kvm_age_page
10
10
+
tracepoint had its signature changed, so update it accordingly.
11
11
+
12
12
+
Tested pointing to kernels:
13
13
+
git reset --hard v3.17; make init/version.o
14
14
+
git reset --hard v3.18-rc1; make init/version.o
15
15
+
16
16
+
Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
17
17
+
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
18
18
+
---
19
19
+
instrumentation/events/lttng-module/kvm.h | 29 +++++++++++++++++++++++++++++
20
20
+
1 file changed, 29 insertions(+)
21
21
+
mode change 100644 => 100755 instrumentation/events/lttng-module/kvm.h
22
22
+
23
23
+
diff --git a/instrumentation/events/lttng-module/kvm.h b/instrumentation/events/lttng-module/kvm.h
24
24
+
old mode 100644
25
25
+
new mode 100755
26
26
+
index c0d42e2..4f95095
27
27
+
--- a/instrumentation/events/lttng-module/kvm.h
28
28
+
+++ b/instrumentation/events/lttng-module/kvm.h
29
29
+
@@ -232,6 +232,34 @@ LTTNG_TRACEPOINT_EVENT(kvm_fpu,
30
30
+
TP_printk("%s", __print_symbolic(__entry->load, kvm_fpu_load_symbol))
31
31
+
)
32
32
+
33
33
+
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,18,0))
34
34
+
+
35
35
+
+LTTNG_TRACEPOINT_EVENT(kvm_age_page,
36
36
+
+ TP_PROTO(ulong gfn, int level, struct kvm_memory_slot *slot, int ref),
37
37
+
+ TP_ARGS(gfn, level, slot, ref),
38
38
+
+
39
39
+
+ TP_STRUCT__entry(
40
40
+
+ __field( u64, hva )
41
41
+
+ __field( u64, gfn )
42
42
+
+ __field( u8, level )
43
43
+
+ __field( u8, referenced )
44
44
+
+ ),
45
45
+
+
46
46
+
+ TP_fast_assign(
47
47
+
+ tp_assign(gfn, gfn)
48
48
+
+ tp_assign(level, level)
49
49
+
+ tp_assign(hva, ((gfn - slot->base_gfn) <<
50
50
+
+ PAGE_SHIFT) + slot->userspace_addr)
51
51
+
+ tp_assign(referenced, ref)
52
52
+
+ ),
53
53
+
+
54
54
+
+ TP_printk("hva %llx gfn %llx level %u %s",
55
55
+
+ __entry->hva, __entry->gfn, __entry->level,
56
56
+
+ __entry->referenced ? "YOUNG" : "OLD")
57
57
+
+)
58
58
+
+
59
59
+
+#else
60
60
+
+
61
61
+
LTTNG_TRACEPOINT_EVENT(kvm_age_page,
62
62
+
TP_PROTO(ulong hva, struct kvm_memory_slot *slot, int ref),
63
63
+
TP_ARGS(hva, slot, ref),
64
64
+
@@ -254,6 +282,7 @@ LTTNG_TRACEPOINT_EVENT(kvm_age_page,
65
65
+
__entry->referenced ? "YOUNG" : "OLD")
66
66
+
)
67
67
+
#endif
68
68
+
+#endif
69
69
+
70
70
+
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38))
71
71
+
+1
-1
pkgs/os-specific/linux/lttng-modules/default.nix
···
14
14
};
15
15
16
16
# from upstream ML, should be in the next release
17
17
-
patches = [ ./build-fix.patch ];
17
17
+
patches = [ ./build-fix.patch ./6f0af2643c40b57280796eaa4fe60ce4f678b6dc.patch ];
18
18
19
19
preConfigure = ''
20
20
export KERNELDIR="${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"