1TAPSET::SIGNAL(3stap)                                    TAPSET::SIGNAL(3stap)
2
3
4

NAME

6       tapset::signal - systemtap signal probe points
7
8
9

DESCRIPTION

11       This  family  of  probe  points is used to probe signal activities.  It
12       contains the following probe points:
13
14
15       signal.send
16
17              Fires when a signal is sent to a process
18
19              Arguments:
20
21              sig
22                signal number
23
24              sig_name
25                a string representation of the signal
26
27              sig_pid
28                pid of the signal recipient process
29
30              pid_name
31                name of the signal recipient process
32
33              si_code
34                indicates the signal type
35
36              task
37                a task handle to the signal recipient
38
39              sinfo
40                the address of siginfo struct
41
42              shared
43                indicates whether this signal is shared by the thread group
44
45              send2queue
46                indicates whether this signal is sent to an existing sigqueue
47
48              name
49                name of the function used to send out this signal
50
51
52       signal.send.return
53
54              Fires when return from sending a signal
55
56              Arguments:
57
58              retstr
59                the return value
60
61                Return   values   for   "__group_send_sig_info"   and    "spe‐
62              cific_send_sig_info"
63
64                     -  return  0  if  the  signal  is  successfully sent to a
65                     process, which means the following:
66
67                     <1> the signal is ignored by receiving process
68
69                     <2> this is a non-RT  signal  and  we  already  have  one
70                     queued
71
72                     <3> the signal is successfully added into the sigqueue of
73                     receiving process
74
75                     - return -EAGAIN if the sigqueue is overflow  the  signal
76                     was RT and sent by user using something other than kill()
77
78                Return values for "send_group_sigqueue"
79
80                     -  return  0  if  the signal is either successfully added
81                     into the sigqueue of  receiving  process  or  a  SI_TIMER
82                     entry  is  already  queued  so just increment the overrun
83                     count
84
85                     - return 1 if this signal is ignored by receiving process
86
87                Return values for "send_sigqueue"
88
89                     - return 0 if the signal  is  either  successfully  added
90                     into  the  sigqueue  of  receiving  process or a SI_TIMER
91                     entry is already queued so  just  increment  the  overrun
92                     count
93
94                     - return 1 if this signal is ignored by receiving process
95
96                     -   return   -1   if  the  task  is  marked  exiting,  so
97                     posix_timer_event can redirect it to the group leader
98
99              shared
100                indicates whether this signal is shared by the thread group
101
102              send2queue
103                indicates whether this signal is sent to an existing sigqueue
104
105              name
106                name of the function used to send out this signal
107
108
109
110       signal.checkperm
111
112              Fires when check permissions for sending the signal
113
114              Arguments:
115
116              sig
117                the number of the signal
118
119              sig_name
120                a string representation of the signal
121
122              sig_pid
123                pid of the signal recipient process
124
125              pid_name
126                name of the signal recipient process
127
128              si_code
129                indicates the signal type
130
131              task
132                a task handle to the signal recipient
133
134              sinfo
135                the address of siginfo struct
136
137              name
138                name of the probe point, is set to "signal.checkperm"
139
140
141       signal.checkperm.return
142
143              Fires when return from permissions check for sending a signal
144
145              Arguments:
146
147              retstr
148                the return value
149
150              name
151                name of the probe point, is set to "signal.checkperm"
152
153
154       signal.wakeup
155
156              Fires when wake up the process for new active signals
157
158              Arguments:
159
160              sig_pid
161                pid of the process to be woke up
162
163              pid_name
164                name of the process to be woke up
165
166              resume
167                indicate whether to wake up a task in STOPPED or TRACED state
168
169              state_mask
170                a string representation indicate the mask of task states  that
171              can    be    woken.   Possible   values   are   (TASK_INTERRUPT‐
172              IBLE|TASK_STOPPED|TASK_TRACED) and TASK_INTERRUPTIBLE.
173
174
175       signal.check_ignored
176
177              Fires when check whether the signal is ignored or not
178
179              Arguments:
180
181              sig_pid
182                pid of the signal recipient process
183
184              pid_name
185                name of the signal recipient process
186
187              sig
188                the signal to be checked
189
190              sig_name
191                name of the signal
192
193
194       signal.check_ignored.return
195
196              Fires when return from signal.check_ignored
197
198              Arguments:
199
200              retstr
201                return value. 0 indicate the current signal isn't ignored.
202
203
204       signal.force_segv
205
206              Forces SIGSEGV when there are some issues while handling signals
207              for the process
208
209              Arguments:
210
211              sig_pid
212                pid of the signal recipient process
213
214              pid_name
215                name of the signal recipient process
216
217              sig
218                the signal being handled
219
220              sig_name
221                name of this signal
222
223
224       signal.force_segv.return
225
226              Fires when return from signal.force_segv
227
228              Arguments:
229
230              retstr
231                return value. Always return 0
232
233
234       signal.syskill
235
236              Fires when sys_kill is called to send a signal to a process.
237
238              Arguments:
239
240              pid
241                pid of the recipient process
242
243              sig
244                the signal to be sent
245
246
247       signal.syskill.return
248
249              Fires when returning from sys_kill
250
251
252       signal.tgkill
253
254              Fires when sys_tgkill is called to send a signal to one specific
255              thread
256
257              Arguments:
258
259              pid
260                pid of the recipient thread
261
262              tgid
263                thread group id which the target thread should have
264
265              sig
266                the signal to be sent
267
268
269       signal.tgkill.return
270
271              Fires when returning from sys_tgkill
272
273
274       signal.tkill
275
276              Fires when sys_tkill is called to send  a  signal  to  a  single
277              process.
278
279              Arguments:
280
281              pid
282                pid of the recipient process
283
284              sig
285                the signal to be sent
286
287
288       signal.tkill.return
289
290              Fires when returning from sys_tkill
291
292
293       signal.send_sig_queue
294
295              Fires when queue a signal to a process
296
297              Arguments:
298
299              sig
300                the signal to be queued
301
302              sig_name
303                name of this signal
304
305              sig_pid
306                pid of the process to which the signal is queued
307
308              pid_name
309                name of the process  to which the signal is queued
310
311              sigqueue_addr
312                address of the signal queue
313
314
315       signal.send_sig_queue.return
316
317              Fires when return from signal.send_sig_queue
318
319              Arguments:
320
321              retstr
322                return value
323
324
325       signal.pending
326
327              Fires  when  examine  the  set  of  signals that are pending for
328              delivery to the calling thread
329
330              Arguments:
331
332              sigset_add
333                address of user space sigset_t
334
335              sigset_size
336                sigset size
337
338
339       signal.pending.return
340
341              Fires when return from signal.pending
342
343              Arguments:
344
345              retstr
346                return value
347
348
349       signal.handle
350
351              Fires when invoking the signal handler
352
353              Arguments:
354
355              sig
356                signal number
357
358              sig_name
359                signal name
360
361              sinfo
362                address of siginfo struct
363
364              sig_code
365                the si_code of siginfo
366
367              ka_addr
368                Address of the k_sigaction struct associated with the signal
369
370              oldset_addr
371                Address of a bit mask array of blocked signals
372
373              sig_mode
374                indicates whether the signal is a User  Mode  or  Kernel  mode
375              Signal
376
377
378       signal.handle.return
379
380              Fires when return from signal.handle
381
382              Arguments:
383
384              retstr
385                return value of handle_signal()
386
387
388       signal.do_action
389
390              Fires by calling thread to examine and change a signal action
391
392              Arguments:
393
394              sig
395                signal number
396
397              sigact_addr
398                address of the new sigaction struct associated with the signal
399
400              oldsigact_addr
401                address  of  a  previous  sigaction struct associated with the
402              signal
403
404              sa_handler
405                the new handler of the signal
406
407              sa_mask
408                the new mask of the signal
409
410
411       signal.do_action.return
412
413              Fires when return from signal.do_action
414
415              Arguments:
416
417              retstr
418                return value of do_sigaction()
419
420
421       signal.procmask
422
423              Fires by calling thread to examine and change blocked signals
424
425              Arguments:
426
427              how
428                indicates how to change the blocked signals.
429                Possible values are:
430                  SIG_BLOCK=0 for blocking signals
431                  SIG_UNBLOCK=1 for unblocking signals
432                  SIG_SETMASK=2 for setting the signal mask
433
434              sigset_addr
435                address of sigset_t to be set
436
437              oldsigset_addr
438                address of the old sigset_t
439
440              sigset
441                the actual sigset to be set
442
443
444       signal.procmask.return
445
446              Fires when return from signal.procmask
447
448              Arguments:
449
450              retstr
451                return value of sigprocmask()
452
453
454       signal.flush
455
456              Fires when flush all pending signals for a task
457
458              Arguments:
459
460              task
461                the task handler of the process
462
463              sig_pid
464                pid of the task
465
466              pid_name
467                name of the task
468
469

SEE ALSO

471       stap(1), stapprobes(3stap)
472
473
474
475
476IBM                                                      TAPSET::SIGNAL(3stap)
Impressum