<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:26:51 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-2629] set_param and conf_param have different syntaxes</title>
                <link>https://jira.whamcloud.com/browse/LU-2629</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Replace the whole conf_param &quot;direct&quot; proc access with a simple upcall-type mechanism from the MGC.&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;on MGS: lctl conf_param random-proc-string=random-value-string&lt;/li&gt;
	&lt;li&gt;gets added to a single special param log, loaded after the individual config logs&lt;/li&gt;
	&lt;li&gt;this param log (and updates) get pulled by all the clients and servers&lt;/li&gt;
	&lt;li&gt;MGC executes via upcall-type mechanism to userspace (i.e. an ioctl) a local lctl set_param string=value&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;Benefits:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;identical conf_param / set_param&lt;/li&gt;
	&lt;li&gt;&quot;permanent&quot; wildcarding in strings&lt;/li&gt;
	&lt;li&gt;no unimplemented conf_param paths (e.g. ptlrpc services)&lt;/li&gt;
	&lt;li&gt;simpler implementation&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Interoperability:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;mgs_setparam and mgs_write_log_param must be updated to deal with the new param syntax. All exceptions and special cases should be removed as much as possible (verify that all settings can be made via /proc instead. Ideally we can move &quot;active&quot; and &quot;failnids&quot; into that category also??). We should probably keep the old version of these, and create mgs_setparam2 and ...log_param2. Add this to the old ones: /* compat: remove after Lustre 2.8 */&lt;/li&gt;
	&lt;li&gt;Clients only use ll_send_mgc_param for setting default striping - we need to make sure this works with the new mgs_setparam2 mechanism.&lt;/li&gt;
	&lt;li&gt;New clients must be able to process both old and new parameter syntaxes; add a new LCFG_PARAM2 to indicate the new syntax. Code for the old mechanism should have comments added: /* compat: remove after Lustre 2.8 */
	&lt;ul&gt;
		&lt;li&gt;Old clients will not be able to parse the new syntax.  Clients should therefore be updated before setting new params. Old clients should safely report errors if they see a new-format param in the config llog.&lt;/li&gt;
		&lt;li&gt;New clients will need to be able to parse the old syntax for existing config log files.&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;class_process_config for LCFG_PARAM2 should just set the param via the upcall with no further processing. Individual obd processing of LCFG_PARAM2 should not be necessary (but please make sure the current individual obd&apos;s currently all use class_process_proc_param for all param).&lt;/li&gt;
	&lt;li&gt;mkfs.lustre parameters should use the new mechanism.&lt;/li&gt;
	&lt;li&gt;Conf_param -d should search for matching strings and mark them Skip, as today. See bz15253&lt;/li&gt;
	&lt;li&gt;To help give users the idea that the old syntax is gone, let&apos;s get rid of the lctl conf_param command completely, and instead get to it via a setparam option flag
&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;lctl set_param -P : set the parameter permanently, filesystem-wide.  This command must be run on the MGS node.
     set_param -P -d: delete the permanent parameter setting; the &lt;span class=&quot;code-keyword&quot;&gt;default&lt;/span&gt; value will be used at next restart.
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
	&lt;li&gt;Actually, let&apos;s keep the old conf_param, but hide it (undocumented). It will call the old mechanism. This provides two safety features:
	&lt;ul&gt;
		&lt;li&gt;Old clients can still get conf_param updates, even with a new MGS&lt;/li&gt;
		&lt;li&gt;If we haven&apos;t completely managed to duplicate the coverage of the old syntax, this gives people a fallback.&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Was: &lt;br/&gt;
Update, verify, and push upstream patch in &lt;a href=&quot;https://bugzilla.lustre.org/show_bug.cgi?id=17471&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;bz17471&lt;/a&gt;&lt;/p&gt;</description>
                <environment></environment>
        <key id="17197">LU-2629</key>
            <summary>set_param and conf_param have different syntaxes</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="5" iconUrl="https://jira.whamcloud.com/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="3">Duplicate</resolution>
                                        <assignee username="wc-triage">WC Triage</assignee>
                                    <reporter username="nrutman">Nathan Rutman</reporter>
                        <labels>
                    </labels>
                <created>Wed, 16 Jan 2013 15:22:44 +0000</created>
                <updated>Wed, 17 Jul 2013 12:18:33 +0000</updated>
                            <resolved>Wed, 8 May 2013 19:08:35 +0000</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                            <comments>
                            <comment id="50579" author="nrutman" created="Wed, 16 Jan 2013 15:23:24 +0000"  >&lt;p&gt;Xyratex-bug-id &lt;a href=&quot;http://jira-nss.xy01.xyratex.com:8080/browse/MRP-272&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;MRP-272&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="57934" author="nrutman" created="Wed, 8 May 2013 18:44:14 +0000"  >&lt;p&gt;Now being addressed in &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-3155&quot; title=&quot;Permanent parameters with lctl set_param -P&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-3155&quot;&gt;&lt;del&gt;LU-3155&lt;/del&gt;&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="57938" author="nrutman" created="Wed, 8 May 2013 19:16:53 +0000"  >&lt;p&gt;Notes:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;this avoids the &quot;writeconf blows away tunables&quot; problem.&lt;/li&gt;
	&lt;li&gt;this double the outstanding lock count on the MGS.  However, the &quot;active&quot; lock count remains the same (only the param log will typically change).&lt;/li&gt;
	&lt;li&gt;apparently right now, there&apos;s no way to &lt;em&gt;lctl conf_param lustre-OST*.foo&lt;/em&gt; - each OST needs to be fully named.  How did we let that get through?&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="62468" author="artem_blagodarenko" created="Wed, 17 Jul 2013 10:15:00 +0000"  >&lt;p&gt;&lt;a href=&quot;http://review.whamcloud.com/6025&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/6025&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                            <outwardlinks description="duplicates">
                                        <issuelink>
            <issuekey id="18333">LU-3155</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                    <customfield id="customfield_10020" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Bugzilla ID</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>17471.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <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|hzvfh3:</customfieldvalue>

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