summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorQuanyang Wang <quanyang.wang@windriver.com>2019-12-13 14:19:52 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-12-16 23:25:49 +0000
commit666616121d4b15a0b0682cfb4bdcaa68a1397dcb (patch)
tree1ad406d1f278b2effc8d45ba94f79fc708c464ac /meta
parent44e809c1e66be9420042342805f14dd7abe9fbb6 (diff)
downloadpoky-666616121d4b15a0b0682cfb4bdcaa68a1397dcb.tar.gz
lttng-modules: fix NULL pointer deference error when testing rpc_task_running
This is a backport from upstream https://github.com/lttng/lttng-modules.git stable-2.10 to fix NULL pointer deference error when running kts testcase lttng_syscall_events. (From OE-Core rev: a522ccff838ba1577255c90e64d98dd75470fb0a) Signed-off-by: Quanyang Wang <quanyang.wang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0001-Fix-SUNRPC-Fix-oops-when-trace-sunrpc_task-events-in.patch94
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0002-Fix-sunrpc-null-rpc_clnt-dereference-in-rpc_task_que.patch44
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0003-Fix-sunrpc-use-signed-integer-for-client-id.patch105
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0004-sunrpc-introduce-lttng_get_clid-helper.patch130
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules_2.10.11.bb4
5 files changed, 377 insertions, 0 deletions
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-SUNRPC-Fix-oops-when-trace-sunrpc_task-events-in.patch b/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-SUNRPC-Fix-oops-when-trace-sunrpc_task-events-in.patch
new file mode 100644
index 0000000000..bdbc4f811e
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-SUNRPC-Fix-oops-when-trace-sunrpc_task-events-in.patch
@@ -0,0 +1,94 @@
1From 1ff7013bcf7f068cf4371d12d758f9c0fd16a619 Mon Sep 17 00:00:00 2001
2From: Quanyang Wang <quanyang.wang@windriver.com>
3Date: Thu, 5 Dec 2019 15:35:32 +0800
4Subject: [PATCH 1/4] Fix: SUNRPC: Fix oops when trace sunrpc_task events in
5 nfs client
6
7See upstream commit :
8
9 commit 2ca310fc4160ed0420da65534a21ae77b24326a8
10 Author: Ditang Chen <chendt.fnst@cn.fujitsu.com>
11 Date: Fri, 7 Mar 2014 13:27:57 +0800
12 Subject: SUNRPC: Fix oops when trace sunrpc_task events in nfs client
13
14 When tracking sunrpc_task events in nfs client, the clnt pointer may be NULL.
15
16 [ 139.269266] BUG: unable to handle kernel NULL pointer dereference at 0000000000000004
17 [ 139.269915] IP: [<ffffffffa026f216>] ftrace_raw_event_rpc_task_running+0x86/0xf0 [sunrpc]
18 [ 139.269915] PGD 1d293067 PUD 1d294067 PMD 0
19 [ 139.269915] Oops: 0000 [#1] SMP
20 [ 139.269915] Modules linked in: nfsv4 dns_resolver nfs lockd sunrpc fscache sg ppdev e1000
21 serio_raw pcspkr parport_pc parport i2c_piix4 i2c_core microcode xfs libcrc32c sd_mod sr_mod
22 cdrom ata_generic crc_t10dif crct10dif_common pata_acpi ahci libahci ata_piix libata dm_mirror
23 dm_region_hash dm_log dm_mod
24 [ 139.269915] CPU: 0 PID: 59 Comm: kworker/0:2 Not tainted 3.10.0-84.el7.x86_64 #1
25 [ 139.269915] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS VirtualBox 12/01/2006
26 [ 139.269915] Workqueue: rpciod rpc_async_schedule [sunrpc]
27 [ 139.269915] task: ffff88001b598000 ti: ffff88001b632000 task.ti: ffff88001b632000
28 [ 139.269915] RIP: 0010:[<ffffffffa026f216>] [<ffffffffa026f216>] ftrace_raw_event_rpc_task_running+0x86/0xf0 [sunrpc]
29 [ 139.269915] RSP: 0018:ffff88001b633d70 EFLAGS: 00010206
30 [ 139.269915] RAX: ffff88001dfc5338 RBX: ffff88001cc37a00 RCX: ffff88001dfc5334
31 [ 139.269915] RDX: ffff88001dfc5338 RSI: 0000000000000000 RDI: ffff88001dfc533c
32 [ 139.269915] RBP: ffff88001b633db0 R08: 000000000000002c R09: 000000000000000a
33 [ 139.269915] R10: 0000000000062180 R11: 00000020759fb9dc R12: ffffffffa0292c20
34 [ 139.269915] R13: ffff88001dfc5334 R14: 0000000000000000 R15: 0000000000000000
35 [ 139.269915] FS: 0000000000000000(0000) GS:ffff88001fc00000(0000) knlGS:0000000000000000
36 [ 139.269915] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
37 [ 139.269915] CR2: 0000000000000004 CR3: 000000001d290000 CR4: 00000000000006f0
38 [ 139.269915] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
39 [ 139.269915] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
40 [ 139.269915] Stack:
41 [ 139.269915] 000000001b633d98 0000000000000246 ffff88001df1dc00 ffff88001cc37a00
42 [ 139.269915] ffff88001bc35e60 0000000000000000 ffff88001ffa0a48 ffff88001bc35ee0
43 [ 139.269915] ffff88001b633e08 ffffffffa02704b5 0000000000010000 ffff88001cc37a70
44 [ 139.269915] Call Trace:
45 [ 139.269915] [<ffffffffa02704b5>] __rpc_execute+0x1d5/0x400 [sunrpc]
46 [ 139.269915] [<ffffffffa0270706>] rpc_async_schedule+0x26/0x30 [sunrpc]
47 [ 139.269915] [<ffffffff8107867b>] process_one_work+0x17b/0x460
48 [ 139.269915] [<ffffffff8107942b>] worker_thread+0x11b/0x400
49 [ 139.269915] [<ffffffff81079310>] ? rescuer_thread+0x3e0/0x3e0
50 [ 139.269915] [<ffffffff8107fc80>] kthread+0xc0/0xd0
51 [ 139.269915] [<ffffffff8107fbc0>] ? kthread_create_on_node+0x110/0x110
52 [ 139.269915] [<ffffffff815d122c>] ret_from_fork+0x7c/0xb0
53 [ 139.269915] [<ffffffff8107fbc0>] ? kthread_create_on_node+0x110/0x110
54 [ 139.269915] Code: 4c 8b 45 c8 48 8d 7d d0 89 4d c4 41 89 c9 b9 28 00 00 00 e8 9d b4 e9
55 e0 48 85 c0 49 89 c5 74 a2 48 89 c7 e8 9d 3f e9 e0 48 89 c2 <41> 8b 46 04 48 8b 7d d0 4c
56 89 e9 4c 89 e6 89 42 0c 0f b7 83 d4
57 [ 139.269915] RIP [<ffffffffa026f216>] ftrace_raw_event_rpc_task_running+0x86/0xf0 [sunrpc]
58 [ 139.269915] RSP <ffff88001b633d70>
59 [ 139.269915] CR2: 0000000000000004
60 [ 140.946406] ---[ end trace ba486328b98d7622 ]---
61
62Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/2b228b503cad10bf0c5a99b42a908ca906eab5b9]
63
64Signed-off-by: Quanyang Wang <quanyang.wang@windriver.com>
65Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
66---
67 instrumentation/events/lttng-module/rpc.h | 4 ++--
68 1 file changed, 2 insertions(+), 2 deletions(-)
69
70diff --git a/instrumentation/events/lttng-module/rpc.h b/instrumentation/events/lttng-module/rpc.h
71index 3798e8e..fb13106 100644
72--- a/instrumentation/events/lttng-module/rpc.h
73+++ b/instrumentation/events/lttng-module/rpc.h
74@@ -139,7 +139,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_running,
75
76 TP_FIELDS(
77 ctf_integer(unsigned int, task_id, task->tk_pid)
78- ctf_integer(unsigned int, client_id, task->tk_client->cl_clid)
79+ ctf_integer(unsigned int, client_id, task->tk_client ? task->tk_client->cl_clid : -1)
80 ctf_integer_hex(const void *, action, action)
81 ctf_integer(unsigned long, runstate, task->tk_runstate)
82 ctf_integer(int, status, task->tk_status)
83@@ -208,7 +208,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_running,
84
85 TP_FIELDS(
86 ctf_integer(unsigned int, task_id, task->tk_pid)
87- ctf_integer(unsigned int, client_id, task->tk_client->cl_clid)
88+ ctf_integer(unsigned int, client_id, task->tk_client ? task->tk_client->cl_clid : -1)
89 ctf_integer_hex(const void *, action, action)
90 ctf_integer(unsigned long, runstate, task->tk_runstate)
91 ctf_integer(int, status, task->tk_status)
92--
932.17.1
94
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-sunrpc-null-rpc_clnt-dereference-in-rpc_task_que.patch b/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-sunrpc-null-rpc_clnt-dereference-in-rpc_task_que.patch
new file mode 100644
index 0000000000..03264bac68
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-sunrpc-null-rpc_clnt-dereference-in-rpc_task_que.patch
@@ -0,0 +1,44 @@
1From 032a74d83b263c4faead8e4c25d497fb8ea07b6e Mon Sep 17 00:00:00 2001
2From: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
3Date: Thu, 12 Dec 2019 10:29:02 -0500
4Subject: [PATCH 2/4] Fix: sunrpc: null rpc_clnt dereference in rpc_task_queued
5 tracepoint
6
7Based on upstream Linux commit:
8
9commit 0be283f676a1e7b208db0c992283197ef8b52158
10Author: Benjamin Coddington <bcodding@redhat.com>
11Date: Tue Jan 23 09:32:35 2018 -0500
12
13 SUNRPC: Fix null rpc_clnt dereference in rpc_task_queued tracepoint
14
15 Backchannel tasks will not have a reference to the rpc_clnt. Return -1 for
16 cl_clid in that case.
17
18 Signed-off-by: Benjamin Coddington <bcodding@redhat.com>
19 Signed-off-by: Trond Myklebust <trondmy@gmail.com>
20
21Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
22Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/8f83a9103dcdf4f6b73783427fc5ded4869309d5]
23Signed-off-by: Quanyang Wang <quanyang.wang@windriver.com>
24---
25 instrumentation/events/lttng-module/rpc.h | 3 ++-
26 1 file changed, 2 insertions(+), 1 deletion(-)
27
28diff --git a/instrumentation/events/lttng-module/rpc.h b/instrumentation/events/lttng-module/rpc.h
29index fb13106..68c622c 100644
30--- a/instrumentation/events/lttng-module/rpc.h
31+++ b/instrumentation/events/lttng-module/rpc.h
32@@ -176,7 +176,8 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_queued,
33
34 TP_FIELDS(
35 ctf_integer(unsigned int, task_id, task->tk_pid)
36- ctf_integer(unsigned int, client_id, task->tk_client->cl_clid)
37+ ctf_integer(unsigned int, client_id, task->tk_client ?
38+ task->tk_client->cl_clid : -1)
39 ctf_integer(unsigned long, timeout, task->tk_timeout)
40 ctf_integer(unsigned long, runstate, task->tk_runstate)
41 ctf_integer(int, status, task->tk_status)
42--
432.17.1
44
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-sunrpc-use-signed-integer-for-client-id.patch b/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-sunrpc-use-signed-integer-for-client-id.patch
new file mode 100644
index 0000000000..c7529f16dd
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-sunrpc-use-signed-integer-for-client-id.patch
@@ -0,0 +1,105 @@
1From 70389e422dd3146161089d454f525367c9046ecd Mon Sep 17 00:00:00 2001
2From: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
3Date: Thu, 12 Dec 2019 10:29:37 -0500
4Subject: [PATCH 3/4] Fix: sunrpc: use signed integer for client id
5
6Within include/linux/sunrpc/clnt.h:struct rpc_cltn, the cl_clid field
7is an unsigned integer, which is the type expected by the tracepoint
8signature.
9
10However, looking into net/sunrpc/clnt.c:rpc_alloc_clid(), its allocation
11considers negative signed integer as errors.
12
13Therefore, in order to properly show "-1" in the trace output (rather
14than MAX_INT) when called with a NULL task->tk_client, move to a
15signed integer as backing type for the client_id field.
16
17Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
18Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/cc7bb0aa52cae22255581d67841449bb8ea36fda]
19Signed-off-by: Quanyang Wang <quanyang.wang@windriver.com>
20---
21 instrumentation/events/lttng-module/rpc.h | 19 +++++++++++--------
22 1 file changed, 11 insertions(+), 8 deletions(-)
23
24diff --git a/instrumentation/events/lttng-module/rpc.h b/instrumentation/events/lttng-module/rpc.h
25index 68c622c..2d06e55 100644
26--- a/instrumentation/events/lttng-module/rpc.h
27+++ b/instrumentation/events/lttng-module/rpc.h
28@@ -18,7 +18,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status,
29
30 TP_FIELDS(
31 ctf_integer(unsigned int, task_id, task->tk_pid)
32- ctf_integer(unsigned int, client_id, task->tk_client->cl_clid)
33+ ctf_integer(int, client_id, task->tk_client->cl_clid)
34 ctf_integer(int, status, task->tk_status)
35 )
36 )
37@@ -43,7 +43,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status,
38
39 TP_FIELDS(
40 ctf_integer(unsigned int, task_id, task->tk_pid)
41- ctf_integer(unsigned int, client_id, task->tk_client->cl_clid)
42+ ctf_integer(int, client_id, task->tk_client->cl_clid)
43 ctf_integer(int, status, task->tk_status)
44 )
45 )
46@@ -100,7 +100,7 @@ LTTNG_TRACEPOINT_EVENT(rpc_connect_status,
47
48 TP_FIELDS(
49 ctf_integer(unsigned int, task_id, task->tk_pid)
50- ctf_integer(unsigned int, client_id, task->tk_client->cl_clid)
51+ ctf_integer(int, client_id, task->tk_client->cl_clid)
52 ctf_integer(int, status, task->tk_status)
53 )
54 )
55@@ -112,7 +112,7 @@ LTTNG_TRACEPOINT_EVENT(rpc_connect_status,
56
57 TP_FIELDS(
58 ctf_integer(unsigned int, task_id, task->tk_pid)
59- ctf_integer(unsigned int, client_id, task->tk_client->cl_clid)
60+ ctf_integer(int, client_id, task->tk_client->cl_clid)
61 ctf_integer(int, status, status)
62 )
63 )
64@@ -139,7 +139,8 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_running,
65
66 TP_FIELDS(
67 ctf_integer(unsigned int, task_id, task->tk_pid)
68- ctf_integer(unsigned int, client_id, task->tk_client ? task->tk_client->cl_clid : -1)
69+ ctf_integer(int, client_id, task->tk_client ?
70+ task->tk_client->cl_clid : -1)
71 ctf_integer_hex(const void *, action, action)
72 ctf_integer(unsigned long, runstate, task->tk_runstate)
73 ctf_integer(int, status, task->tk_status)
74@@ -176,7 +177,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_queued,
75
76 TP_FIELDS(
77 ctf_integer(unsigned int, task_id, task->tk_pid)
78- ctf_integer(unsigned int, client_id, task->tk_client ?
79+ ctf_integer(int, client_id, task->tk_client ?
80 task->tk_client->cl_clid : -1)
81 ctf_integer(unsigned long, timeout, task->tk_timeout)
82 ctf_integer(unsigned long, runstate, task->tk_runstate)
83@@ -209,7 +210,8 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_running,
84
85 TP_FIELDS(
86 ctf_integer(unsigned int, task_id, task->tk_pid)
87- ctf_integer(unsigned int, client_id, task->tk_client ? task->tk_client->cl_clid : -1)
88+ ctf_integer(int, client_id, task->tk_client ?
89+ task->tk_client->cl_clid : -1)
90 ctf_integer_hex(const void *, action, action)
91 ctf_integer(unsigned long, runstate, task->tk_runstate)
92 ctf_integer(int, status, task->tk_status)
93@@ -246,7 +248,8 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_queued,
94
95 TP_FIELDS(
96 ctf_integer(unsigned int, task_id, task->tk_pid)
97- ctf_integer(unsigned int, client_id, task->tk_client->cl_clid)
98+ ctf_integer(int, client_id, task->tk_client ?
99+ task->tk_client->cl_clid : -1)
100 ctf_integer(unsigned long, timeout, task->tk_timeout)
101 ctf_integer(unsigned long, runstate, task->tk_runstate)
102 ctf_integer(int, status, task->tk_status)
103--
1042.17.1
105
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0004-sunrpc-introduce-lttng_get_clid-helper.patch b/meta/recipes-kernel/lttng/lttng-modules/0004-sunrpc-introduce-lttng_get_clid-helper.patch
new file mode 100644
index 0000000000..4dd726cf2c
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0004-sunrpc-introduce-lttng_get_clid-helper.patch
@@ -0,0 +1,130 @@
1From b6903d57e4c3234ec5b1c7f72e232023cdee0fab Mon Sep 17 00:00:00 2001
2From: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
3Date: Thu, 12 Dec 2019 10:39:38 -0500
4Subject: [PATCH 4/4] sunrpc: introduce lttng_get_clid helper
5
6Introduce the lttng_get_clid helper to always check for NULL pointer
7when getting the client id. While not always strictly needed depending
8on the tracepoint callsite, prefer robustness of instrumentation and
9always check for NULL rather than play whack-a-mole.
10
11Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/1330a091a687a406513c3a326c2fc2a0dbe75536]
13Signed-off-by: Quanyang Wang <quanyang.wang@windriver.com>
14---
15 instrumentation/events/lttng-module/rpc.h | 43 ++++++++++++++++-------
16 1 file changed, 31 insertions(+), 12 deletions(-)
17
18diff --git a/instrumentation/events/lttng-module/rpc.h b/instrumentation/events/lttng-module/rpc.h
19index 2d06e55..ceaf9db 100644
20--- a/instrumentation/events/lttng-module/rpc.h
21+++ b/instrumentation/events/lttng-module/rpc.h
22@@ -9,6 +9,29 @@
23 #include <linux/sunrpc/sched.h>
24 #include <linux/sunrpc/clnt.h>
25
26+#ifndef ONCE_LTTNG_RPC_H
27+#define ONCE_LTTNG_RPC_H
28+
29+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0))
30+static inline
31+int lttng_get_clid(const struct rpc_task *task)
32+{
33+ struct rpc_clnt *tk_client;
34+
35+ tk_client = task->tk_client;
36+ if (!tk_client)
37+ return -1;
38+ /*
39+ * The cl_clid field is always initialized to positive signed
40+ * integers. Negative signed integer values are treated as
41+ * errors.
42+ */
43+ return (int) tk_client->cl_clid;
44+}
45+#endif /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) */
46+
47+#endif /* ONCE_LTTNG_RPC_H */
48+
49 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,0,0))
50 LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status,
51
52@@ -18,7 +41,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status,
53
54 TP_FIELDS(
55 ctf_integer(unsigned int, task_id, task->tk_pid)
56- ctf_integer(int, client_id, task->tk_client->cl_clid)
57+ ctf_integer(int, client_id, lttng_get_clid(task))
58 ctf_integer(int, status, task->tk_status)
59 )
60 )
61@@ -43,7 +66,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status,
62
63 TP_FIELDS(
64 ctf_integer(unsigned int, task_id, task->tk_pid)
65- ctf_integer(int, client_id, task->tk_client->cl_clid)
66+ ctf_integer(int, client_id, lttng_get_clid(task))
67 ctf_integer(int, status, task->tk_status)
68 )
69 )
70@@ -100,7 +123,7 @@ LTTNG_TRACEPOINT_EVENT(rpc_connect_status,
71
72 TP_FIELDS(
73 ctf_integer(unsigned int, task_id, task->tk_pid)
74- ctf_integer(int, client_id, task->tk_client->cl_clid)
75+ ctf_integer(int, client_id, lttng_get_clid(task))
76 ctf_integer(int, status, task->tk_status)
77 )
78 )
79@@ -112,7 +135,7 @@ LTTNG_TRACEPOINT_EVENT(rpc_connect_status,
80
81 TP_FIELDS(
82 ctf_integer(unsigned int, task_id, task->tk_pid)
83- ctf_integer(int, client_id, task->tk_client->cl_clid)
84+ ctf_integer(int, client_id, lttng_get_clid(task))
85 ctf_integer(int, status, status)
86 )
87 )
88@@ -139,8 +162,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_running,
89
90 TP_FIELDS(
91 ctf_integer(unsigned int, task_id, task->tk_pid)
92- ctf_integer(int, client_id, task->tk_client ?
93- task->tk_client->cl_clid : -1)
94+ ctf_integer(int, client_id, lttng_get_clid(task))
95 ctf_integer_hex(const void *, action, action)
96 ctf_integer(unsigned long, runstate, task->tk_runstate)
97 ctf_integer(int, status, task->tk_status)
98@@ -177,8 +199,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_queued,
99
100 TP_FIELDS(
101 ctf_integer(unsigned int, task_id, task->tk_pid)
102- ctf_integer(int, client_id, task->tk_client ?
103- task->tk_client->cl_clid : -1)
104+ ctf_integer(int, client_id, lttng_get_clid(task))
105 ctf_integer(unsigned long, timeout, task->tk_timeout)
106 ctf_integer(unsigned long, runstate, task->tk_runstate)
107 ctf_integer(int, status, task->tk_status)
108@@ -210,8 +231,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_running,
109
110 TP_FIELDS(
111 ctf_integer(unsigned int, task_id, task->tk_pid)
112- ctf_integer(int, client_id, task->tk_client ?
113- task->tk_client->cl_clid : -1)
114+ ctf_integer(int, client_id, lttng_get_clid(task))
115 ctf_integer_hex(const void *, action, action)
116 ctf_integer(unsigned long, runstate, task->tk_runstate)
117 ctf_integer(int, status, task->tk_status)
118@@ -248,8 +268,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_queued,
119
120 TP_FIELDS(
121 ctf_integer(unsigned int, task_id, task->tk_pid)
122- ctf_integer(int, client_id, task->tk_client ?
123- task->tk_client->cl_clid : -1)
124+ ctf_integer(int, client_id, lttng_get_clid(task))
125 ctf_integer(unsigned long, timeout, task->tk_timeout)
126 ctf_integer(unsigned long, runstate, task->tk_runstate)
127 ctf_integer(int, status, task->tk_status)
128--
1292.17.1
130
diff --git a/meta/recipes-kernel/lttng/lttng-modules_2.10.11.bb b/meta/recipes-kernel/lttng/lttng-modules_2.10.11.bb
index 789a3be850..cc4f44519a 100644
--- a/meta/recipes-kernel/lttng/lttng-modules_2.10.11.bb
+++ b/meta/recipes-kernel/lttng/lttng-modules_2.10.11.bb
@@ -14,6 +14,10 @@ COMPATIBLE_HOST = '(x86_64|i.86|powerpc|aarch64|mips|nios2|arm|riscv).*-linux'
14SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ 14SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \
15 file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ 15 file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \
16 file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \ 16 file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \
17 file://0001-Fix-SUNRPC-Fix-oops-when-trace-sunrpc_task-events-in.patch \
18 file://0002-Fix-sunrpc-null-rpc_clnt-dereference-in-rpc_task_que.patch \
19 file://0003-Fix-sunrpc-use-signed-integer-for-client-id.patch \
20 file://0004-sunrpc-introduce-lttng_get_clid-helper.patch \
17 " 21 "
18 22
19SRC_URI[md5sum] = "c618fb646514dfc1bf910cfd7cda4256" 23SRC_URI[md5sum] = "c618fb646514dfc1bf910cfd7cda4256"