<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 03:29:39 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Whamcloud Community JIRA</title>
    <link>https://jira.whamcloud.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.4.14</version>
        <build-number>940014</build-number>
        <build-date>05-12-2023</build-date>
    </build-info>


<item>
            <title>[LU-16746] Convert tracefile to export debug logs via character device</title>
                <link>https://jira.whamcloud.com/browse/LU-16746</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Currently the interface provided by the libcfs tracing and debug framework works in a way that makes it challenging for userspace tools to consume the debug log:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Past logs are not exported in chronological order but instead are sorted by CPU, meaning that user tools (like &quot;lctl dk&quot;) have to sort messages before displaying them.&lt;/li&gt;
	&lt;li&gt;Logs are exported by having kernel threads write to regular files which are then opened and read by user tools. This is an extra step that could be eliminated by having a character device which returns logs directly when read from.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;These aspects make new usability features, for example the ability to &quot;follow&quot; the debug log like &quot;dmesg -w&quot;, challenging to implement.&lt;/p&gt;

&lt;p&gt;Changing the tracefile interface to work like Linux&apos;s &quot;/dev/kmsg&quot; interface would make it simpler to improve Lustre&apos;s debugging tools.&lt;/p&gt;

&lt;p&gt;The biggest challenge is that currently Lustre stores messages in separate per-CPU and per-context buffers. Thus any tool that prints out previously written messages has to sort them. If this is implemented as a character device, that sorting would have to happen in a kernel thread.&lt;/p&gt;

&lt;p&gt;Therefore, this will be much simpler to implement after &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-14428&quot; title=&quot;Convert tracefile to use ring_buffer  from linux&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-14428&quot;&gt;LU-14428&lt;/a&gt;: &quot;Convert tracefile to use ring_buffer from linux&quot;.&lt;/p&gt;</description>
                <environment></environment>
        <key id="75609">LU-16746</key>
            <summary>Convert tracefile to export debug logs via character device</summary>
                <type id="4" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11310&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="4" iconUrl="https://jira.whamcloud.com/images/icons/priorities/minor.svg">Minor</priority>
                        <status id="1" iconUrl="https://jira.whamcloud.com/images/icons/statuses/open.png" description="The issue is open and ready for the assignee to start work on it.">Open</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="wc-triage">WC Triage</assignee>
                                    <reporter username="bertschinger">Thomas Bertschinger</reporter>
                        <labels>
                    </labels>
                <created>Mon, 17 Apr 2023 14:01:34 +0000</created>
                <updated>Mon, 17 Apr 2023 14:02:17 +0000</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                <issuelinks>
                            <issuelinktype id="10322">
                    <name>Gantt End to Start</name>
                                                                <inwardlinks description="has to be done after">
                                        <issuelink>
            <issuekey id="62856">LU-14428</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                            <customfield id="customfield_10890" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10390" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i03j53:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>