Project

General

Profile

Bug #1128

Contexts can be added multiple times to a kernel channel

Added by Jérémie Galarneau about 2 years ago.

Status:
Confirmed
Priority:
Normal
Assignee:
-
Target version:
Start date:
08/02/2017
Due date:
% Done:

0%

Estimated time:

Description

The session daemon checks for duplicate user space contexts being enabled on a user space channel (using trace_ust_match_context()). A similar check is missing for kernel channels, allowing users to add the same context multiple times.

Extract from a session profile demonstrating the problem:

                        <domain>
                                <type>KERNEL</type>
                                <buffer_type>GLOBAL</buffer_type>
                                <channels>
                                        <channel>
                                                <name>lol</name>
                                                <enabled>true</enabled>
                                                <overwrite_mode>DISCARD</overwrite_mode>
                                                <subbuffer_size>1048576</subbuffer_size>
                                                <subbuffer_count>4</subbuffer_count>
                                                <switch_timer_interval>0</switch_timer_interval>
                                                <read_timer_interval>200000</read_timer_interval>
                                                <output_type>SPLICE</output_type>
                                                <tracefile_size>0</tracefile_size>
                                                <tracefile_count>0</tracefile_count>
                                                <live_timer_interval>4294967295</live_timer_interval>
                                                <monitor_timer_interval>1000000</monitor_timer_interval>
                                                <blocking_timeout>0</blocking_timeout>
                                                <events/>
                                                <contexts>
                                                        <context>
                                                                <type>PID</type>
                                                        </context>
                                                        <context>
                                                                <type>PID</type>
                                                        </context>
                                                        <context>
                                                                <type>PID</type>
                                                        </context>
                                                        <context>
                                                                <type>PID</type>
                                                        </context>
                                                        <context>
                                                                <type>PID</type>
                                                        </context>
                                                        <context>
                                                                <type>PID</type>
                                                        </context>
                                                        <context>
                                                                <type>PID</type>
                                                        </context>
                                                </contexts>
                                        </channel>
                                </channels>
                                <trackers/>
                        </domain>

Also available in: Atom PDF