<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:40:20 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-11030] Uninitialized variable use in fld_update_from_controller</title>
                <link>https://jira.whamcloud.com/browse/LU-11030</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;In looks like we can use index variable without initialization in fld_update_from_controller:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;        __u32                     index;
...
        rc = fld_name_to_index(fld-&amp;gt;lsf_name, &amp;amp;index);
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (rc &amp;lt; 0)
                RETURN(rc);

        &lt;span class=&quot;code-comment&quot;&gt;/* No need update fldb &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; MDT0 */&lt;/span&gt;
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (index == 0)
                RETURN(0);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Now if we look into fld_name_to_index() it looks ok:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;&lt;span class=&quot;code-object&quot;&gt;int&lt;/span&gt; fld_name_to_index(&lt;span class=&quot;code-keyword&quot;&gt;const&lt;/span&gt; &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt; *name, __u32 *index)
{
        &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt; *dash;
        &lt;span class=&quot;code-object&quot;&gt;int&lt;/span&gt; rc;
        ENTRY;

        CDEBUG(D_INFO, &lt;span class=&quot;code-quote&quot;&gt;&quot;get index from %s\n&quot;&lt;/span&gt;, name);
        dash = strrchr(name, &lt;span class=&quot;code-quote&quot;&gt;&apos;-&apos;&lt;/span&gt;);
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (dash == NULL)
                RETURN(-EINVAL);
        dash++;
        rc = target_name2index(dash, index, NULL);
        RETURN(rc);
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;As in we return negative value to caller if the index is not updated.&lt;/p&gt;

&lt;p&gt;But if we actually look inside target_name2index, we can see:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (strncmp(dash, &lt;span class=&quot;code-quote&quot;&gt;&quot;MDT&quot;&lt;/span&gt;, 3) == 0)
                rc = LDD_F_SV_TYPE_MDT;
        &lt;span class=&quot;code-keyword&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (strncmp(dash, &lt;span class=&quot;code-quote&quot;&gt;&quot;OST&quot;&lt;/span&gt;, 3) == 0)
                rc = LDD_F_SV_TYPE_OST;
        &lt;span class=&quot;code-keyword&quot;&gt;else&lt;/span&gt;
                &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; -EINVAL;

        dash += 3;

        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (strncmp(dash, &lt;span class=&quot;code-quote&quot;&gt;&quot;all&quot;&lt;/span&gt;, 3) == 0) {
                &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (endptr != NULL)
                        *endptr = dash + 3;
                &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; rc | LDD_F_SV_ALL;
        }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;so if we have &apos;all&apos; literal after the dash - the index is not updated and we don&apos;t return an error.&lt;/p&gt;

&lt;p&gt;This needs to be handled one way or another.&lt;/p&gt;</description>
                <environment></environment>
        <key id="52281">LU-11030</key>
            <summary>Uninitialized variable use in fld_update_from_controller</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</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="green">Oleg Drokin</reporter>
                        <labels>
                    </labels>
                <created>Fri, 18 May 2018 00:17:16 +0000</created>
                <updated>Fri, 18 May 2018 00:17:16 +0000</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                    <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|hzzxdb:</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>
                                                                                            <customfield id="customfield_10060" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Severity</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10022"><![CDATA[3]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>