From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: DKIM-Filter: OpenDKIM Filter v2.10.3 mail.efficios.com C7E6D32EF47 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=efficios.com; s=default; t=1619229319; bh=VlmtgdbUd94TPeyqFTReqSYBU5SCJlnb+HLl6vZhrEw=; h=Date:From:To:Message-ID:MIME-Version; b=kKj3JxnifIsV9yT1e4rW4iDb8kkkXR8uTh245Iq45q2SC42Phd7ivt2XmxpAmHoT4 oylAlr+tcp8D5DlgufM1Ixk7Ifkf4AmGkPMpRrOrErKUY+RhrjQb0ixZpT1iqacFeW SKDCQAvlPZABar5WjJI+EhPXz07Z/shWCc5dmtuUE3+LO201ZDEzem8VPYNITINjJ3 a7i+qvtSKMVqGqgHQ2sK0ubMMnaaxkYYp+sC43PzzG733vZxvDd4YlFxUMN3kITm5B /xbqZ8CnQGLrC5HUAlZDL4rwJ8SvNiN+AetPW9cSrOanE0VkNNSxeR4u8ql1SdMtcL VfaAo/13+3ifg== Date: Fri, 23 Apr 2021 21:55:19 -0400 (EDT) From: Mathieu Desnoyers Message-ID: <1127798495.12500.1619229319588.JavaMail.zimbra@efficios.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: [diamon-discuss] =?utf-8?q?=5BRELEASE=5D_LTTng_2=2E13=2E0-rc1_-_N?= =?utf-8?q?ordicit=C3=A9_-_Linux_kernel_and_user-space_tracer?= List-Id: DiaMon diagnostic and monitoring workgroup general discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: lttng-dev Cc: lwn , Diamon discuss , Jeremie Galarneau , linux-kernel , linux-trace-users Hi everyone, =20 Today we are releasing the first release candidate of LTTng 2.13 - Nordicit= =C3=A9! This release is the result of 1 year of development from most of the Effici= OS team. This release is named after "Nordicit=C3=A9", the product of a collaboratio= n between Champ Libre and Bor=C3=A9ale. This farmhouse IPA is brewed with Kveik yeast= and Qu=C3=A9bec-grown barley, oats and juniper branches. The result is a remark= able fruity hazy golden IPA that offers a balanced touch of resinous and woodsy bitterness. The most notable features of this new release are: - Event-rule matches condition triggers and new actions, - Notification payload capture, - vtracef and vtracelog (LTTng-UST), - Add user space time namespace context (LTTng-UST and LTTng-modules). Read on for a short description of each of the new features and the links to this release. A prettified version of this announcement will be available soon on GitHub: https://github.com/lttng/lttng-tools/releases/tag/v2.13.0-rc1 Note on LTTng-UST backward compatibility --- - soname major version change This release changes the LTTng-UST soname major from 0 to 1. The event notifier (triggers using an event-rule-matches condition) functionality required a significant rework of public data structures whi= ch should never have been made public in the first place. Bumping the soname major to 1, will require applications and tracepoint providers to be rebuilt against an updated LTTng-UST to use it. Old applications and tracepoint providers linked against libraries with major soname 0 should be able to co-exist on the same system. - Building probe providers using a C++ compiler requires C++11 - API namespaceing The LTTng-UST API is now systematically namespaced under `lttng_ust_*` (e= .g `tracepoint()` becomes `lttng_ust_tracepoint()`). However, the non-namespaced names are still exposed to maintain API compatibility. Event-rule matches condition and new actions --- Expanding the trigger infrastructure and making it usable through the `lttn= g` client was the core focus of this release. A trigger is an association between a condition and one or more actions. Wh= en the condition associated to a trigger is met, the actions associated to tha= t trigger are executed. The tracing does not have to be active for the condit= ions to be met, and triggers are independent from tracing sessions. Since their introduction as part of LTTng 2.10, new conditions and actions = were added to make this little-known mechanism more flexible. For instance, before this release, triggers supported the following conditi= on types: - Buffer usage exceeded a given threshold, - Buffer usage went under a configurable threshold, - A session rotation occurred, - A session rotation completed. A _notify_ action could be used to send a notification to a third party applications whenever those conditions were met. This made it possible, for instance, to disable certain event rules if the tracing buffers were almost full. It could also be used to wait for session rotations to be completed to start processing the resulting trace chunk archives as part of various post-processing trace analyses. This release introduces a new powerful condition type: event-rule matches. This type of condition is met when the tracer encounters an event matching = the given even rule. The arguments describing the event rule are the same as th= ose describing the event rules of the `enable-event` command. While this is not intended as a general replacement for the existing high-throughput tracing facilities, this makes it possible for an applicati= on to wait for a very-specific event to occur and take action whenever it occu= rs. The purpose of event-rule matches triggers is to react quickly to an event without the delay introduced by buffering. For example, the following command will create a trigger that emits a notification whenever the 'openat' system call is invoked with the '/etc/passwd' filename argument. $ lttng add-trigger --condition event-rule-matches --domain=3Dkernel --type=3Dsyscall --name=3D"openat" --action notify New actions were also introduced as part of this release: - Start session This action causes the LTTng session daemon to start tracing for the se= ssion with the given name. If no session with the given name exist at the tim= e the condition is met, nothing is done. - Stop session This action causes the LTTng session daemon to stop tracing for the ses= sion with the given name. If no session with the given name exist at the tim= e the condition is met, nothing is done. - Rotate session This action causes the LTTng session daemon to rotate the session with = the given name. See lttng-rotate(1) for more information about the session rotation concept. If no session with the given name exist at the time t= he condition is met, nothing is done. - Snapshot session This action causes the LTTng session daemon to take a snapshot of the session with the given name. See lttng-snapshot(1) for more information about the session snapshot concept. If no session with the given name e= xist at the time the condition is met, nothing is done. These new actions can also be combined together. For instance, the followin= g trigger will stop `my_session`, record a snapshot of `my_session`, and noti= fy any listening application when '/etc/passwd' is opened: $ lttng add-trigger --condition event-rule-matches --domain kernel --type syscall --name "openat" --filter 'filename =3D=3D "/etc/passwd"' --action stop-session my_session --action snapshot-session my_session --action notify For more information, see the following manual pages: - lttng-add-trigger(1), - lttng-remove-trigger(1), - lttng-list-triggers(1). Notification payload capture --- The new event-rule matches condition type also allows 'captures'. This allow event record and context fields to be captured when an event-rul= e matches condition is satisfied. The captured field values are made available in the evaluation object of th= e notifications transmitted to listening applications. Capture descriptors can be specified using a syntax reminiscent of the one = used by the filter expressions. The following example will capture a process's name and the 'filename' argu= ment of all `openat()` system calls: $ lttng add-trigger --condition event-rule-matches --domain kernel --type syscall --name "openat" --capture "filename" --capture "$ctx.procname" --action notify See the lttng-add-trigger(1) manual page for more information. vtracef and vtracelog (LTTng-UST) --- New versions of the `tracef()` and `tracelog()` tracing helpers accepting variable argument lists are introduced as `vtracef()` and `vtracelog()`. See the tracef(3) and tracelog(3) manual pages for more information. Add time namespace context (LTTng-UST and LTTng-modules) --- It is now possible to add the time namespace of a process as a context to channels (`time_ns`) using the `add-context` command. See the time_namespaces(7) manual page for more information. Links --- Project website: https://lttng.org Download links: https://lttng.org/files/lttng-tools/lttng-tools-2.13.0-rc1.tar.bz2 https://lttng.org/files/lttng-ust/lttng-ust-2.13.0-rc1.tar.bz2 https://lttng.org/files/lttng-modules/lttng-modules-2.13.0-rc1.tar.bz2 GPG signatures: https://lttng.org/files/lttng-tools/lttng-tools-2.13.0-rc1.tar.bz2.asc https://lttng.org/files/lttng-ust/lttng-ust-2.13.0-rc1.tar.bz2.asc https://lttng.org/files/lttng-modules/lttng-modules-2.13.0-rc1.tar.bz2.asc --=20 Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,PDS_BAD_THREAD_QP_64,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B5906C433ED for ; Sat, 24 Apr 2021 01:55:26 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 84AD061422 for ; Sat, 24 Apr 2021 01:55:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236492AbhDXBz7 (ORCPT ); Fri, 23 Apr 2021 21:55:59 -0400 Received: from mail.efficios.com ([167.114.26.124]:44738 "EHLO mail.efficios.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232106AbhDXBz6 (ORCPT ); Fri, 23 Apr 2021 21:55:58 -0400 Received: from localhost (localhost [127.0.0.1]) by mail.efficios.com (Postfix) with ESMTP id E42E732F025; Fri, 23 Apr 2021 21:55:20 -0400 (EDT) Received: from mail.efficios.com ([127.0.0.1]) by localhost (mail03.efficios.com [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id R7JC3_cj1W5k; Fri, 23 Apr 2021 21:55:19 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by mail.efficios.com (Postfix) with ESMTP id C7E6D32EF47; Fri, 23 Apr 2021 21:55:19 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.10.3 mail.efficios.com C7E6D32EF47 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=efficios.com; s=default; t=1619229319; bh=VlmtgdbUd94TPeyqFTReqSYBU5SCJlnb+HLl6vZhrEw=; h=Date:From:To:Message-ID:MIME-Version; b=kKj3JxnifIsV9yT1e4rW4iDb8kkkXR8uTh245Iq45q2SC42Phd7ivt2XmxpAmHoT4 oylAlr+tcp8D5DlgufM1Ixk7Ifkf4AmGkPMpRrOrErKUY+RhrjQb0ixZpT1iqacFeW SKDCQAvlPZABar5WjJI+EhPXz07Z/shWCc5dmtuUE3+LO201ZDEzem8VPYNITINjJ3 a7i+qvtSKMVqGqgHQ2sK0ubMMnaaxkYYp+sC43PzzG733vZxvDd4YlFxUMN3kITm5B /xbqZ8CnQGLrC5HUAlZDL4rwJ8SvNiN+AetPW9cSrOanE0VkNNSxeR4u8ql1SdMtcL VfaAo/13+3ifg== X-Virus-Scanned: amavisd-new at efficios.com Received: from mail.efficios.com ([127.0.0.1]) by localhost (mail03.efficios.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id Rj4XBSsRuT2e; Fri, 23 Apr 2021 21:55:19 -0400 (EDT) Received: from mail03.efficios.com (mail03.efficios.com [167.114.26.124]) by mail.efficios.com (Postfix) with ESMTP id AF30B32EFB6; Fri, 23 Apr 2021 21:55:19 -0400 (EDT) Date: Fri, 23 Apr 2021 21:55:19 -0400 (EDT) From: Mathieu Desnoyers To: lttng-dev Cc: Jeremie Galarneau , linux-kernel , Diamon discuss , linux-trace-users , lwn Message-ID: <1127798495.12500.1619229319588.JavaMail.zimbra@efficios.com> Subject: =?utf-8?Q?[RELEASE]_LTTng_2.13.0-rc1_-_Nordicit?= =?utf-8?Q?=C3=A9_-_Linux_kernel_and_user-space_tracer?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [167.114.26.124] X-Mailer: Zimbra 8.8.15_GA_4018 (ZimbraWebClient - FF87 (Linux)/8.8.15_GA_4007) Thread-Index: CU6heiwyyqEgTIkZQRbJAX32k/C24Q== Thread-Topic: LTTng 2.13.0-rc1 - =?utf-8?Q?Nordicit=C3=A9?= - Linux kernel and user-space tracer Precedence: bulk List-ID: X-Mailing-List: linux-trace-users@vger.kernel.org Hi everyone, =20 Today we are releasing the first release candidate of LTTng 2.13 - Nordicit= =C3=A9! This release is the result of 1 year of development from most of the Effici= OS team. This release is named after "Nordicit=C3=A9", the product of a collaboratio= n between Champ Libre and Bor=C3=A9ale. This farmhouse IPA is brewed with Kveik yeast= and Qu=C3=A9bec-grown barley, oats and juniper branches. The result is a remark= able fruity hazy golden IPA that offers a balanced touch of resinous and woodsy bitterness. The most notable features of this new release are: - Event-rule matches condition triggers and new actions, - Notification payload capture, - vtracef and vtracelog (LTTng-UST), - Add user space time namespace context (LTTng-UST and LTTng-modules). Read on for a short description of each of the new features and the links to this release. A prettified version of this announcement will be available soon on GitHub: https://github.com/lttng/lttng-tools/releases/tag/v2.13.0-rc1 Note on LTTng-UST backward compatibility --- - soname major version change This release changes the LTTng-UST soname major from 0 to 1. The event notifier (triggers using an event-rule-matches condition) functionality required a significant rework of public data structures whi= ch should never have been made public in the first place. Bumping the soname major to 1, will require applications and tracepoint providers to be rebuilt against an updated LTTng-UST to use it. Old applications and tracepoint providers linked against libraries with major soname 0 should be able to co-exist on the same system. - Building probe providers using a C++ compiler requires C++11 - API namespaceing The LTTng-UST API is now systematically namespaced under `lttng_ust_*` (e= .g `tracepoint()` becomes `lttng_ust_tracepoint()`). However, the non-namespaced names are still exposed to maintain API compatibility. Event-rule matches condition and new actions --- Expanding the trigger infrastructure and making it usable through the `lttn= g` client was the core focus of this release. A trigger is an association between a condition and one or more actions. Wh= en the condition associated to a trigger is met, the actions associated to tha= t trigger are executed. The tracing does not have to be active for the condit= ions to be met, and triggers are independent from tracing sessions. Since their introduction as part of LTTng 2.10, new conditions and actions = were added to make this little-known mechanism more flexible. For instance, before this release, triggers supported the following conditi= on types: - Buffer usage exceeded a given threshold, - Buffer usage went under a configurable threshold, - A session rotation occurred, - A session rotation completed. A _notify_ action could be used to send a notification to a third party applications whenever those conditions were met. This made it possible, for instance, to disable certain event rules if the tracing buffers were almost full. It could also be used to wait for session rotations to be completed to start processing the resulting trace chunk archives as part of various post-processing trace analyses. This release introduces a new powerful condition type: event-rule matches. This type of condition is met when the tracer encounters an event matching = the given even rule. The arguments describing the event rule are the same as th= ose describing the event rules of the `enable-event` command. While this is not intended as a general replacement for the existing high-throughput tracing facilities, this makes it possible for an applicati= on to wait for a very-specific event to occur and take action whenever it occu= rs. The purpose of event-rule matches triggers is to react quickly to an event without the delay introduced by buffering. For example, the following command will create a trigger that emits a notification whenever the 'openat' system call is invoked with the '/etc/passwd' filename argument. $ lttng add-trigger --condition event-rule-matches --domain=3Dkernel --type=3Dsyscall --name=3D"openat" --action notify New actions were also introduced as part of this release: - Start session This action causes the LTTng session daemon to start tracing for the se= ssion with the given name. If no session with the given name exist at the tim= e the condition is met, nothing is done. - Stop session This action causes the LTTng session daemon to stop tracing for the ses= sion with the given name. If no session with the given name exist at the tim= e the condition is met, nothing is done. - Rotate session This action causes the LTTng session daemon to rotate the session with = the given name. See lttng-rotate(1) for more information about the session rotation concept. If no session with the given name exist at the time t= he condition is met, nothing is done. - Snapshot session This action causes the LTTng session daemon to take a snapshot of the session with the given name. See lttng-snapshot(1) for more information about the session snapshot concept. If no session with the given name e= xist at the time the condition is met, nothing is done. These new actions can also be combined together. For instance, the followin= g trigger will stop `my_session`, record a snapshot of `my_session`, and noti= fy any listening application when '/etc/passwd' is opened: $ lttng add-trigger --condition event-rule-matches --domain kernel --type syscall --name "openat" --filter 'filename =3D=3D "/etc/passwd"' --action stop-session my_session --action snapshot-session my_session --action notify For more information, see the following manual pages: - lttng-add-trigger(1), - lttng-remove-trigger(1), - lttng-list-triggers(1). Notification payload capture --- The new event-rule matches condition type also allows 'captures'. This allow event record and context fields to be captured when an event-rul= e matches condition is satisfied. The captured field values are made available in the evaluation object of th= e notifications transmitted to listening applications. Capture descriptors can be specified using a syntax reminiscent of the one = used by the filter expressions. The following example will capture a process's name and the 'filename' argu= ment of all `openat()` system calls: $ lttng add-trigger --condition event-rule-matches --domain kernel --type syscall --name "openat" --capture "filename" --capture "$ctx.procname" --action notify See the lttng-add-trigger(1) manual page for more information. vtracef and vtracelog (LTTng-UST) --- New versions of the `tracef()` and `tracelog()` tracing helpers accepting variable argument lists are introduced as `vtracef()` and `vtracelog()`. See the tracef(3) and tracelog(3) manual pages for more information. Add time namespace context (LTTng-UST and LTTng-modules) --- It is now possible to add the time namespace of a process as a context to channels (`time_ns`) using the `add-context` command. See the time_namespaces(7) manual page for more information. Links --- Project website: https://lttng.org Download links: https://lttng.org/files/lttng-tools/lttng-tools-2.13.0-rc1.tar.bz2 https://lttng.org/files/lttng-ust/lttng-ust-2.13.0-rc1.tar.bz2 https://lttng.org/files/lttng-modules/lttng-modules-2.13.0-rc1.tar.bz2 GPG signatures: https://lttng.org/files/lttng-tools/lttng-tools-2.13.0-rc1.tar.bz2.asc https://lttng.org/files/lttng-ust/lttng-ust-2.13.0-rc1.tar.bz2.asc https://lttng.org/files/lttng-modules/lttng-modules-2.13.0-rc1.tar.bz2.asc --=20 Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9C213C433ED for ; Sat, 24 Apr 2021 01:55:30 +0000 (UTC) Received: from lists.lttng.org (lists.lttng.org [167.114.26.123]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BE03D6141C for ; Sat, 24 Apr 2021 01:55:29 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BE03D6141C Authentication-Results: mail.kernel.org; dmarc=pass (p=none dis=none) header.from=lists.lttng.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lttng-dev-bounces@lists.lttng.org Received: from lists-lttng01.efficios.com (localhost [IPv6:::1]) by lists.lttng.org (Postfix) with ESMTP id 4FRvPX0s1yz1c3f; Fri, 23 Apr 2021 21:55:28 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=lists.lttng.org; s=default; t=1619229328; bh=SuwZiaDfyDaRA0KcyHrETqWvbb5ay4jGvVRtgTHqT5k=; h=Date:To:Cc:Subject:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From:Reply-To:From; b=yOfwZ/INb1XfSJZyPWXRH+d9P2se+ITa4+PTgnPlZjS6RmAv9hBPmfPchNP6fA3sW jqgWUZtrKI7GPDxcdYGzccccgnXYunCXImedXFYbt0RK2Y6Jm2xheEyNzlCzkAWyHG 8KJioSAQDajrg4+1kqbEW4a0FQ04Dxv3ID7Ql85seCw9ni2K3GGu5hSlhJwm42fLk1 HmepyrlVESk12XBPLSi4t3VZuLmemRB+8ZQoDLxq+GRuOQ7Awwq+LqnjNbqcRvJMXO p3JTcSSIDpqvBQSqjN6b9GBCghH3ibOuNlpEFx5+V7QaOXrjHSHg/QKtbqw/qUc09d NBzRXCQy5GTYw== Received: from mail.efficios.com (mail.efficios.com [167.114.26.124]) by lists.lttng.org (Postfix) with ESMTPS id 4FRvPV2bCSz1bdM for ; Fri, 23 Apr 2021 21:55:26 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by mail.efficios.com (Postfix) with ESMTP id E158032F024; Fri, 23 Apr 2021 21:55:20 -0400 (EDT) Received: from mail.efficios.com ([127.0.0.1]) by localhost (mail03.efficios.com [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id R7JC3_cj1W5k; Fri, 23 Apr 2021 21:55:19 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by mail.efficios.com (Postfix) with ESMTP id C7E6D32EF47; Fri, 23 Apr 2021 21:55:19 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.10.3 mail.efficios.com C7E6D32EF47 X-Virus-Scanned: amavisd-new at efficios.com Received: from mail.efficios.com ([127.0.0.1]) by localhost (mail03.efficios.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id Rj4XBSsRuT2e; Fri, 23 Apr 2021 21:55:19 -0400 (EDT) Received: from mail03.efficios.com (mail03.efficios.com [167.114.26.124]) by mail.efficios.com (Postfix) with ESMTP id AF30B32EFB6; Fri, 23 Apr 2021 21:55:19 -0400 (EDT) Date: Fri, 23 Apr 2021 21:55:19 -0400 (EDT) To: lttng-dev Cc: Jeremie Galarneau , linux-kernel , Diamon discuss , linux-trace-users , lwn Message-ID: <1127798495.12500.1619229319588.JavaMail.zimbra@efficios.com> MIME-Version: 1.0 X-Originating-IP: [167.114.26.124] X-Mailer: Zimbra 8.8.15_GA_4018 (ZimbraWebClient - FF87 (Linux)/8.8.15_GA_4007) Thread-Index: CU6heiwyyqEgTIkZQRbJAX32k/C24Q== Thread-Topic: LTTng 2.13.0-rc1 - =?utf-8?Q?Nordicit=C3=A9?= - Linux kernel and user-space tracer Subject: [lttng-dev] =?utf-8?q?=5BRELEASE=5D_LTTng_2=2E13=2E0-rc1_-_Nordi?= =?utf-8?q?cit=C3=A9_-_Linux_kernel_and_user-space_tracer?= X-BeenThere: lttng-dev@lists.lttng.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: LTTng development list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Mathieu Desnoyers via lttng-dev Reply-To: Mathieu Desnoyers Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: lttng-dev-bounces@lists.lttng.org Sender: "lttng-dev" SGkgZXZlcnlvbmUsCiAgClRvZGF5IHdlIGFyZSByZWxlYXNpbmcgdGhlIGZpcnN0IHJlbGVhc2Ug Y2FuZGlkYXRlIG9mIExUVG5nIDIuMTMgLSBOb3JkaWNpdMOpIQpUaGlzIHJlbGVhc2UgaXMgdGhl IHJlc3VsdCBvZiAxIHllYXIgb2YgZGV2ZWxvcG1lbnQgZnJvbSBtb3N0IG9mIHRoZSBFZmZpY2lP Uwp0ZWFtLgoKVGhpcyByZWxlYXNlIGlzIG5hbWVkIGFmdGVyICJOb3JkaWNpdMOpIiwgdGhlIHBy b2R1Y3Qgb2YgYSBjb2xsYWJvcmF0aW9uIGJldHdlZW4KQ2hhbXAgTGlicmUgYW5kIEJvcsOpYWxl LiBUaGlzIGZhcm1ob3VzZSBJUEEgaXMgYnJld2VkIHdpdGggS3ZlaWsgeWVhc3QgYW5kClF1w6li ZWMtZ3Jvd24gYmFybGV5LCBvYXRzIGFuZCBqdW5pcGVyIGJyYW5jaGVzLiBUaGUgcmVzdWx0IGlz IGEgcmVtYXJrYWJsZQpmcnVpdHkgaGF6eSBnb2xkZW4gSVBBIHRoYXQgb2ZmZXJzIGEgYmFsYW5j ZWQgdG91Y2ggb2YgcmVzaW5vdXMgYW5kIHdvb2RzeQpiaXR0ZXJuZXNzLgoKVGhlIG1vc3Qgbm90 YWJsZSBmZWF0dXJlcyBvZiB0aGlzIG5ldyByZWxlYXNlIGFyZToKICAtIEV2ZW50LXJ1bGUgbWF0 Y2hlcyBjb25kaXRpb24gdHJpZ2dlcnMgYW5kIG5ldyBhY3Rpb25zLAogIC0gTm90aWZpY2F0aW9u IHBheWxvYWQgY2FwdHVyZSwKICAtIHZ0cmFjZWYgYW5kIHZ0cmFjZWxvZyAoTFRUbmctVVNUKSwK ICAtIEFkZCB1c2VyIHNwYWNlIHRpbWUgbmFtZXNwYWNlIGNvbnRleHQgKExUVG5nLVVTVCBhbmQg TFRUbmctbW9kdWxlcykuCgpSZWFkIG9uIGZvciBhIHNob3J0IGRlc2NyaXB0aW9uIG9mIGVhY2gg b2YgdGhlIG5ldyBmZWF0dXJlcyBhbmQgdGhlCmxpbmtzIHRvIHRoaXMgcmVsZWFzZS4KCkEgcHJl dHRpZmllZCB2ZXJzaW9uIG9mIHRoaXMgYW5ub3VuY2VtZW50IHdpbGwgYmUgYXZhaWxhYmxlIHNv b24gb24gR2l0SHViOgpodHRwczovL2dpdGh1Yi5jb20vbHR0bmcvbHR0bmctdG9vbHMvcmVsZWFz ZXMvdGFnL3YyLjEzLjAtcmMxCgoKTm90ZSBvbiBMVFRuZy1VU1QgYmFja3dhcmQgY29tcGF0aWJp bGl0eQotLS0KCi0gc29uYW1lIG1ham9yIHZlcnNpb24gY2hhbmdlCiAgVGhpcyByZWxlYXNlIGNo YW5nZXMgdGhlIExUVG5nLVVTVCBzb25hbWUgbWFqb3IgZnJvbSAwIHRvIDEuCgogIFRoZSBldmVu dCBub3RpZmllciAodHJpZ2dlcnMgdXNpbmcgYW4gZXZlbnQtcnVsZS1tYXRjaGVzIGNvbmRpdGlv bikKICBmdW5jdGlvbmFsaXR5IHJlcXVpcmVkIGEgc2lnbmlmaWNhbnQgcmV3b3JrIG9mIHB1Ymxp YyBkYXRhIHN0cnVjdHVyZXMgd2hpY2gKICBzaG91bGQgbmV2ZXIgaGF2ZSBiZWVuIG1hZGUgcHVi bGljIGluIHRoZSBmaXJzdCBwbGFjZS4KCiAgQnVtcGluZyB0aGUgc29uYW1lIG1ham9yIHRvIDEs IHdpbGwgcmVxdWlyZSBhcHBsaWNhdGlvbnMgYW5kIHRyYWNlcG9pbnQKICBwcm92aWRlcnMgdG8g YmUgcmVidWlsdCBhZ2FpbnN0IGFuIHVwZGF0ZWQgTFRUbmctVVNUIHRvIHVzZSBpdC4KCiAgT2xk IGFwcGxpY2F0aW9ucyBhbmQgdHJhY2Vwb2ludCBwcm92aWRlcnMgbGlua2VkIGFnYWluc3QgbGli cmFyaWVzIHdpdGgKICBtYWpvciBzb25hbWUgMCBzaG91bGQgYmUgYWJsZSB0byBjby1leGlzdCBv biB0aGUgc2FtZSBzeXN0ZW0uCgotIEJ1aWxkaW5nIHByb2JlIHByb3ZpZGVycyB1c2luZyBhIEMr KyBjb21waWxlciByZXF1aXJlcyBDKysxMQoKLSBBUEkgbmFtZXNwYWNlaW5nCiAgVGhlIExUVG5n LVVTVCBBUEkgaXMgbm93IHN5c3RlbWF0aWNhbGx5IG5hbWVzcGFjZWQgdW5kZXIgYGx0dG5nX3Vz dF8qYCAoZS5nCiAgYHRyYWNlcG9pbnQoKWAgYmVjb21lcyBgbHR0bmdfdXN0X3RyYWNlcG9pbnQo KWApLgoKICBIb3dldmVyLCB0aGUgbm9uLW5hbWVzcGFjZWQgbmFtZXMgYXJlIHN0aWxsIGV4cG9z ZWQgdG8gbWFpbnRhaW4gQVBJCiAgY29tcGF0aWJpbGl0eS4KCgpFdmVudC1ydWxlIG1hdGNoZXMg Y29uZGl0aW9uIGFuZCBuZXcgYWN0aW9ucwotLS0KCkV4cGFuZGluZyB0aGUgdHJpZ2dlciBpbmZy YXN0cnVjdHVyZSBhbmQgbWFraW5nIGl0IHVzYWJsZSB0aHJvdWdoIHRoZSBgbHR0bmdgCmNsaWVu dCB3YXMgdGhlIGNvcmUgZm9jdXMgb2YgdGhpcyByZWxlYXNlLgoKQSB0cmlnZ2VyIGlzIGFuIGFz c29jaWF0aW9uIGJldHdlZW4gYSBjb25kaXRpb24gYW5kIG9uZSBvciBtb3JlIGFjdGlvbnMuIFdo ZW4KdGhlIGNvbmRpdGlvbiBhc3NvY2lhdGVkIHRvIGEgdHJpZ2dlciBpcyBtZXQsIHRoZSBhY3Rp b25zIGFzc29jaWF0ZWQgdG8gdGhhdAp0cmlnZ2VyIGFyZSBleGVjdXRlZC4gVGhlIHRyYWNpbmcg ZG9lcyBub3QgaGF2ZSB0byBiZSBhY3RpdmUgZm9yIHRoZSBjb25kaXRpb25zCnRvIGJlIG1ldCwg YW5kIHRyaWdnZXJzIGFyZSBpbmRlcGVuZGVudCBmcm9tIHRyYWNpbmcgc2Vzc2lvbnMuCgpTaW5j ZSB0aGVpciBpbnRyb2R1Y3Rpb24gYXMgcGFydCBvZiBMVFRuZyAyLjEwLCBuZXcgY29uZGl0aW9u cyBhbmQgYWN0aW9ucyB3ZXJlCmFkZGVkIHRvIG1ha2UgdGhpcyBsaXR0bGUta25vd24gbWVjaGFu aXNtIG1vcmUgZmxleGlibGUuCgpGb3IgaW5zdGFuY2UsIGJlZm9yZSB0aGlzIHJlbGVhc2UsIHRy aWdnZXJzIHN1cHBvcnRlZCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbgp0eXBlczoKICAtIEJ1ZmZl ciB1c2FnZSBleGNlZWRlZCBhIGdpdmVuIHRocmVzaG9sZCwKICAtIEJ1ZmZlciB1c2FnZSB3ZW50 IHVuZGVyIGEgY29uZmlndXJhYmxlIHRocmVzaG9sZCwKICAtIEEgc2Vzc2lvbiByb3RhdGlvbiBv Y2N1cnJlZCwKICAtIEEgc2Vzc2lvbiByb3RhdGlvbiBjb21wbGV0ZWQuCgpBIF9ub3RpZnlfIGFj dGlvbiBjb3VsZCBiZSB1c2VkIHRvIHNlbmQgYSBub3RpZmljYXRpb24gdG8gYSB0aGlyZCBwYXJ0 eQphcHBsaWNhdGlvbnMgd2hlbmV2ZXIgdGhvc2UgY29uZGl0aW9ucyB3ZXJlIG1ldC4KClRoaXMg bWFkZSBpdCBwb3NzaWJsZSwgZm9yIGluc3RhbmNlLCB0byBkaXNhYmxlIGNlcnRhaW4gZXZlbnQg cnVsZXMgaWYgdGhlCnRyYWNpbmcgYnVmZmVycyB3ZXJlIGFsbW9zdCBmdWxsLiBJdCBjb3VsZCBh bHNvIGJlIHVzZWQgdG8gd2FpdCBmb3Igc2Vzc2lvbgpyb3RhdGlvbnMgdG8gYmUgY29tcGxldGVk IHRvIHN0YXJ0IHByb2Nlc3NpbmcgdGhlIHJlc3VsdGluZyB0cmFjZSBjaHVuawphcmNoaXZlcyBh cyBwYXJ0IG9mIHZhcmlvdXMgcG9zdC1wcm9jZXNzaW5nIHRyYWNlIGFuYWx5c2VzLgoKVGhpcyBy ZWxlYXNlIGludHJvZHVjZXMgYSBuZXcgcG93ZXJmdWwgY29uZGl0aW9uIHR5cGU6IGV2ZW50LXJ1 bGUgbWF0Y2hlcy4KClRoaXMgdHlwZSBvZiBjb25kaXRpb24gaXMgbWV0IHdoZW4gdGhlIHRyYWNl ciBlbmNvdW50ZXJzIGFuIGV2ZW50IG1hdGNoaW5nIHRoZQpnaXZlbiBldmVuIHJ1bGUuIFRoZSBh cmd1bWVudHMgZGVzY3JpYmluZyB0aGUgZXZlbnQgcnVsZSBhcmUgdGhlIHNhbWUgYXMgdGhvc2UK ZGVzY3JpYmluZyB0aGUgZXZlbnQgcnVsZXMgb2YgdGhlIGBlbmFibGUtZXZlbnRgIGNvbW1hbmQu CgpXaGlsZSB0aGlzIGlzIG5vdCBpbnRlbmRlZCBhcyBhIGdlbmVyYWwgcmVwbGFjZW1lbnQgZm9y IHRoZSBleGlzdGluZwpoaWdoLXRocm91Z2hwdXQgdHJhY2luZyBmYWNpbGl0aWVzLCB0aGlzIG1h a2VzIGl0IHBvc3NpYmxlIGZvciBhbiBhcHBsaWNhdGlvbgp0byB3YWl0IGZvciBhIHZlcnktc3Bl Y2lmaWMgZXZlbnQgdG8gb2NjdXIgYW5kIHRha2UgYWN0aW9uIHdoZW5ldmVyIGl0IG9jY3Vycy4K VGhlIHB1cnBvc2Ugb2YgZXZlbnQtcnVsZSBtYXRjaGVzIHRyaWdnZXJzIGlzIHRvIHJlYWN0IHF1 aWNrbHkgdG8gYW4gZXZlbnQKd2l0aG91dCB0aGUgZGVsYXkgaW50cm9kdWNlZCBieSBidWZmZXJp bmcuCgpGb3IgZXhhbXBsZSwgdGhlIGZvbGxvd2luZyBjb21tYW5kIHdpbGwgY3JlYXRlIGEgdHJp Z2dlciB0aGF0IGVtaXRzIGEKbm90aWZpY2F0aW9uIHdoZW5ldmVyIHRoZSAnb3BlbmF0JyBzeXN0 ZW0gY2FsbCBpcyBpbnZva2VkIHdpdGggdGhlCicvZXRjL3Bhc3N3ZCcgZmlsZW5hbWUgYXJndW1l bnQuCgokIGx0dG5nIGFkZC10cmlnZ2VyCiAgICAtLWNvbmRpdGlvbiBldmVudC1ydWxlLW1hdGNo ZXMKICAgICAgLS1kb21haW49a2VybmVsCiAgICAgIC0tdHlwZT1zeXNjYWxsCiAgICAgIC0tbmFt ZT0ib3BlbmF0IgogICAgLS1hY3Rpb24gbm90aWZ5CgpOZXcgYWN0aW9ucyB3ZXJlIGFsc28gaW50 cm9kdWNlZCBhcyBwYXJ0IG9mIHRoaXMgcmVsZWFzZToKICAtIFN0YXJ0IHNlc3Npb24KICAgIFRo aXMgYWN0aW9uIGNhdXNlcyB0aGUgTFRUbmcgc2Vzc2lvbiBkYWVtb24gdG8gc3RhcnQgdHJhY2lu ZyBmb3IgdGhlIHNlc3Npb24KICAgIHdpdGggdGhlIGdpdmVuIG5hbWUuIElmIG5vIHNlc3Npb24g d2l0aCB0aGUgZ2l2ZW4gbmFtZSBleGlzdCBhdCB0aGUgdGltZSB0aGUKICAgIGNvbmRpdGlvbiBp cyBtZXQsIG5vdGhpbmcgaXMgZG9uZS4KCiAgLSBTdG9wIHNlc3Npb24KICAgIFRoaXMgYWN0aW9u IGNhdXNlcyB0aGUgTFRUbmcgc2Vzc2lvbiBkYWVtb24gdG8gc3RvcCB0cmFjaW5nIGZvciB0aGUg c2Vzc2lvbgogICAgd2l0aCB0aGUgZ2l2ZW4gbmFtZS4gSWYgbm8gc2Vzc2lvbiB3aXRoIHRoZSBn aXZlbiBuYW1lIGV4aXN0IGF0IHRoZSB0aW1lIHRoZQogICAgY29uZGl0aW9uIGlzIG1ldCwgbm90 aGluZyBpcyBkb25lLgoKICAtIFJvdGF0ZSBzZXNzaW9uCiAgICBUaGlzIGFjdGlvbiBjYXVzZXMg dGhlIExUVG5nIHNlc3Npb24gZGFlbW9uIHRvIHJvdGF0ZSB0aGUgc2Vzc2lvbiB3aXRoIHRoZQog ICAgZ2l2ZW4gbmFtZS4gU2VlIGx0dG5nLXJvdGF0ZSgxKSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBh Ym91dCB0aGUgc2Vzc2lvbgogICAgcm90YXRpb24gY29uY2VwdC4gSWYgbm8gc2Vzc2lvbiB3aXRo IHRoZSBnaXZlbiBuYW1lIGV4aXN0IGF0IHRoZSB0aW1lIHRoZQogICAgY29uZGl0aW9uIGlzIG1l dCwgbm90aGluZyBpcyBkb25lLgoKICAtIFNuYXBzaG90IHNlc3Npb24KICAgIFRoaXMgYWN0aW9u IGNhdXNlcyB0aGUgTFRUbmcgc2Vzc2lvbiBkYWVtb24gdG8gdGFrZSBhIHNuYXBzaG90IG9mIHRo ZQogICAgc2Vzc2lvbiB3aXRoIHRoZSBnaXZlbiBuYW1lLiBTZWUgbHR0bmctc25hcHNob3QoMSkg Zm9yIG1vcmUgaW5mb3JtYXRpb24KICAgIGFib3V0IHRoZSBzZXNzaW9uIHNuYXBzaG90IGNvbmNl cHQuIElmIG5vIHNlc3Npb24gd2l0aCB0aGUgZ2l2ZW4gbmFtZSBleGlzdAogICAgYXQgdGhlIHRp bWUgdGhlIGNvbmRpdGlvbiBpcyBtZXQsIG5vdGhpbmcgaXMgZG9uZS4KClRoZXNlIG5ldyBhY3Rp b25zIGNhbiBhbHNvIGJlIGNvbWJpbmVkIHRvZ2V0aGVyLiBGb3IgaW5zdGFuY2UsIHRoZSBmb2xs b3dpbmcKdHJpZ2dlciB3aWxsIHN0b3AgYG15X3Nlc3Npb25gLCByZWNvcmQgYSBzbmFwc2hvdCBv ZiBgbXlfc2Vzc2lvbmAsIGFuZCBub3RpZnkKYW55IGxpc3RlbmluZyBhcHBsaWNhdGlvbiB3aGVu ICcvZXRjL3Bhc3N3ZCcgaXMgb3BlbmVkOgoKJCBsdHRuZyBhZGQtdHJpZ2dlcgogICAgLS1jb25k aXRpb24gZXZlbnQtcnVsZS1tYXRjaGVzCiAgICAgIC0tZG9tYWluIGtlcm5lbAogICAgICAtLXR5 cGUgc3lzY2FsbAogICAgICAtLW5hbWUgIm9wZW5hdCIKICAgICAgLS1maWx0ZXIgJ2ZpbGVuYW1l ID09ICIvZXRjL3Bhc3N3ZCInCiAgICAtLWFjdGlvbiBzdG9wLXNlc3Npb24gbXlfc2Vzc2lvbgog ICAgLS1hY3Rpb24gc25hcHNob3Qtc2Vzc2lvbiBteV9zZXNzaW9uCiAgICAtLWFjdGlvbiBub3Rp ZnkKCkZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIGZvbGxvd2luZyBtYW51YWwgcGFnZXM6 CiAgLSBsdHRuZy1hZGQtdHJpZ2dlcigxKSwKICAtIGx0dG5nLXJlbW92ZS10cmlnZ2VyKDEpLAog IC0gbHR0bmctbGlzdC10cmlnZ2VycygxKS4KCgpOb3RpZmljYXRpb24gcGF5bG9hZCBjYXB0dXJl Ci0tLQoKVGhlIG5ldyBldmVudC1ydWxlIG1hdGNoZXMgY29uZGl0aW9uIHR5cGUgYWxzbyBhbGxv d3MgJ2NhcHR1cmVzJy4KVGhpcyBhbGxvdyBldmVudCByZWNvcmQgYW5kIGNvbnRleHQgZmllbGRz IHRvIGJlIGNhcHR1cmVkIHdoZW4gYW4gZXZlbnQtcnVsZQptYXRjaGVzIGNvbmRpdGlvbiBpcyBz YXRpc2ZpZWQuCgpUaGUgY2FwdHVyZWQgZmllbGQgdmFsdWVzIGFyZSBtYWRlIGF2YWlsYWJsZSBp biB0aGUgZXZhbHVhdGlvbiBvYmplY3Qgb2YgdGhlCm5vdGlmaWNhdGlvbnMgdHJhbnNtaXR0ZWQg dG8gbGlzdGVuaW5nIGFwcGxpY2F0aW9ucy4KCkNhcHR1cmUgZGVzY3JpcHRvcnMgY2FuIGJlIHNw ZWNpZmllZCB1c2luZyBhIHN5bnRheCByZW1pbmlzY2VudCBvZiB0aGUgb25lIHVzZWQKYnkgdGhl IGZpbHRlciBleHByZXNzaW9ucy4KClRoZSBmb2xsb3dpbmcgZXhhbXBsZSB3aWxsIGNhcHR1cmUg YSBwcm9jZXNzJ3MgbmFtZSBhbmQgdGhlICdmaWxlbmFtZScgYXJndW1lbnQKb2YgYWxsIGBvcGVu YXQoKWAgc3lzdGVtIGNhbGxzOgoKJCBsdHRuZyBhZGQtdHJpZ2dlcgogICAgLS1jb25kaXRpb24g ZXZlbnQtcnVsZS1tYXRjaGVzCiAgICAgIC0tZG9tYWluIGtlcm5lbAogICAgICAtLXR5cGUgc3lz Y2FsbAogICAgICAtLW5hbWUgIm9wZW5hdCIKICAgICAgLS1jYXB0dXJlICJmaWxlbmFtZSIKICAg ICAgLS1jYXB0dXJlICIkY3R4LnByb2NuYW1lIgogICAgLS1hY3Rpb24gbm90aWZ5CgpTZWUgdGhl IGx0dG5nLWFkZC10cmlnZ2VyKDEpIG1hbnVhbCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uLgoK CnZ0cmFjZWYgYW5kIHZ0cmFjZWxvZyAoTFRUbmctVVNUKQotLS0KCk5ldyB2ZXJzaW9ucyBvZiB0 aGUgYHRyYWNlZigpYCBhbmQgYHRyYWNlbG9nKClgIHRyYWNpbmcgaGVscGVycyBhY2NlcHRpbmcK dmFyaWFibGUgYXJndW1lbnQgbGlzdHMgYXJlIGludHJvZHVjZWQgYXMgYHZ0cmFjZWYoKWAgYW5k IGB2dHJhY2Vsb2coKWAuCgpTZWUgdGhlIHRyYWNlZigzKSBhbmQgdHJhY2Vsb2coMykgbWFudWFs IHBhZ2VzIGZvciBtb3JlIGluZm9ybWF0aW9uLgoKCkFkZCB0aW1lIG5hbWVzcGFjZSBjb250ZXh0 IChMVFRuZy1VU1QgYW5kIExUVG5nLW1vZHVsZXMpCi0tLQoKSXQgaXMgbm93IHBvc3NpYmxlIHRv IGFkZCB0aGUgdGltZSBuYW1lc3BhY2Ugb2YgYSBwcm9jZXNzIGFzIGEgY29udGV4dCB0bwpjaGFu bmVscyAoYHRpbWVfbnNgKSB1c2luZyB0aGUgYGFkZC1jb250ZXh0YCBjb21tYW5kLgoKU2VlIHRo ZSB0aW1lX25hbWVzcGFjZXMoNykgbWFudWFsIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24uCgoK TGlua3MKLS0tCgpQcm9qZWN0IHdlYnNpdGU6IGh0dHBzOi8vbHR0bmcub3JnCgpEb3dubG9hZCBs aW5rczoKaHR0cHM6Ly9sdHRuZy5vcmcvZmlsZXMvbHR0bmctdG9vbHMvbHR0bmctdG9vbHMtMi4x My4wLXJjMS50YXIuYnoyCmh0dHBzOi8vbHR0bmcub3JnL2ZpbGVzL2x0dG5nLXVzdC9sdHRuZy11 c3QtMi4xMy4wLXJjMS50YXIuYnoyCmh0dHBzOi8vbHR0bmcub3JnL2ZpbGVzL2x0dG5nLW1vZHVs ZXMvbHR0bmctbW9kdWxlcy0yLjEzLjAtcmMxLnRhci5iejIKCkdQRyBzaWduYXR1cmVzOgpodHRw czovL2x0dG5nLm9yZy9maWxlcy9sdHRuZy10b29scy9sdHRuZy10b29scy0yLjEzLjAtcmMxLnRh ci5iejIuYXNjCmh0dHBzOi8vbHR0bmcub3JnL2ZpbGVzL2x0dG5nLXVzdC9sdHRuZy11c3QtMi4x My4wLXJjMS50YXIuYnoyLmFzYwpodHRwczovL2x0dG5nLm9yZy9maWxlcy9sdHRuZy1tb2R1bGVz L2x0dG5nLW1vZHVsZXMtMi4xMy4wLXJjMS50YXIuYnoyLmFzYwoKLS0gCk1hdGhpZXUgRGVzbm95 ZXJzCkVmZmljaU9TIEluYy4KaHR0cDovL3d3dy5lZmZpY2lvcy5jb20KX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbHR0bmctZGV2IG1haWxpbmcgbGlzdAps dHRuZy1kZXZAbGlzdHMubHR0bmcub3JnCmh0dHBzOi8vbGlzdHMubHR0bmcub3JnL2NnaS1iaW4v bWFpbG1hbi9saXN0aW5mby9sdHRuZy1kZXYK