<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:26:36 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-2603] kernel panic in class_handle_ioctl() when deactivating OSC</title>
                <link>https://jira.whamcloud.com/browse/LU-2603</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;When I was repeating mount/umount and &quot;lctl --device ${devno} deactivate&quot; on a client node, kernel panic happened.&lt;br/&gt;
The below is the stack trace of the thread which caused the kernel panic.&lt;/p&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;PID: 7160   TASK: ffff88060a370aa0  CPU: 2   COMMAND: &quot;lctl&quot;
 #0 [ffff8805f8ba7b20] machine_kexec at ffffffff8103281b
 #1 [ffff8805f8ba7b80] crash_kexec at ffffffff810ba792
 #2 [ffff8805f8ba7c50] oops_end at ffffffff81501700
 #3 [ffff8805f8ba7c80] die at ffffffff8100f26b
 #4 [ffff8805f8ba7cb0] do_general_protection at ffffffff81501292
 #5 [ffff8805f8ba7ce0] general_protection at ffffffff81500a65
    [exception RIP: class_handle_ioctl+4926]
    RIP: ffffffffa04e776e  RSP: ffff8805f8ba7d98  RFLAGS: 00010206
    RAX: 0000000000000000  RBX: ffff8805f4f0c800  RCX: 0000000000000000
    RDX: 0000000000000000  RSI: 0000000000000000  RDI: ffff88062808b500
    RBP: ffff8805f8ba7e38   R8: 0000000000000000   R9: ffffffff8163abc0
    R10: 0000000000000001  R11: 0000000000000000  R12: 00000000c0086815
    R13: 00007fff38122d70  R14: 5a5a5a5a5a5a5a5a  R15: 0000000000000240
    ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018
 #6 [ffff8805f8ba7d90] class_handle_ioctl at ffffffffa04e76f4 [obdclass]
 #7 [ffff8805f8ba7e40] obd_class_ioctl at ffffffffa04d12ab [obdclass]
 #8 [ffff8805f8ba7e60] vfs_ioctl at ffffffff8118dff2
 #9 [ffff8805f8ba7ea0] do_vfs_ioctl at ffffffff8118e194
#10 [ffff8805f8ba7f30] sys_ioctl at ffffffff8118e711
#11 [ffff8805f8ba7f80] system_call_fastpath at ffffffff8100b0f2
    RIP: 00000032e3adf7b7  RSP: 00007fff38122d08  RFLAGS: 00010202
    RAX: 0000000000000010  RBX: ffffffff8100b0f2  RCX: 0000000000000018
    RDX: 00007fff38122d70  RSI: 00000000c0086815  RDI: 0000000000000003
    RBP: 0000000000000001   R8: 0000000000000000   R9: 0000000000000240
    R10: 00007fff38122a90  R11: 0000000000000202  R12: 00000000c0086815
    R13: 00007fff38122d70  R14: 0000000000676ae0  R15: 0000000000000003
    ORIG_RAX: 0000000000000010  CS: 0033  SS: 002b
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Actually class_handle_ioctl() has some if-statements which check obd status such as obd_stopping, obd_set_up and obd_attached. But there&apos;s no protection when class_handle_ioctl has already passed all of the if-statements. So, class_decref() can release an obd_device while class_handle_ioctl() is refering the obd_device. &lt;/p&gt;

&lt;p&gt;I&apos;ll upload a patch for this problem soon, so I will be pleased if someone checks my patch.&lt;/p&gt;

&lt;p&gt;Thank you.&lt;/p&gt;</description>
                <environment></environment>
        <key id="17142">LU-2603</key>
            <summary>kernel panic in class_handle_ioctl() when deactivating OSC</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="2" iconUrl="https://jira.whamcloud.com/images/icons/priorities/critical.svg">Critical</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="2">Won&apos;t Fix</resolution>
                                        <assignee username="cliffw">Cliff White</assignee>
                                    <reporter username="nozaki">Hiroya Nozaki</reporter>
                        <labels>
                            <label>patch</label>
                    </labels>
                <created>Fri, 11 Jan 2013 01:40:12 +0000</created>
                <updated>Tue, 5 Aug 2014 20:04:05 +0000</updated>
                            <resolved>Tue, 5 Aug 2014 20:04:05 +0000</resolved>
                                    <version>Lustre 2.4.0</version>
                    <version>Lustre 2.1.5</version>
                    <version>Lustre 1.8.8</version>
                                                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                            <comments>
                            <comment id="50460" author="nozaki" created="Mon, 14 Jan 2013 20:30:04 +0000"  >&lt;p&gt;patch for master&lt;br/&gt;
&lt;a href=&quot;http://review.whamcloud.com/5024&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/5024&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="63934" author="keith" created="Fri, 9 Aug 2013 07:28:03 +0000"  >&lt;p&gt;Has there been any time to work on an improved patch?&lt;/p&gt;</comment>
                            <comment id="63936" author="nozaki" created="Fri, 9 Aug 2013 08:19:59 +0000"  >&lt;p&gt;Just only I was thinking about the problem. &lt;/p&gt;

&lt;p&gt;I guess that we need to make some more similar functions like class_name2obd() and class_uuid2obd() with checking some obd&apos;s flags such as obd_stopping and obd_setup,&lt;br/&gt;
and replace some class_uuid2obd() and class_name2obd() with the new ones if needed.&lt;/p&gt;

&lt;p&gt;And ... you know, it seems to me that it&apos;ll take me excessively lots of time, so now I&apos;m hesitating starting it ... Do you have better ideas ?&lt;/p&gt;</comment>
                            <comment id="83666" author="cliffw" created="Fri, 9 May 2014 19:43:34 +0000"  >&lt;p&gt;Has there been time for any further work on this? Is this still an issue?&lt;/p&gt;</comment>
                            <comment id="90916" author="cliffw" created="Tue, 5 Aug 2014 20:03:58 +0000"  >&lt;p&gt;I am going to close this issue, due to lack of activity, please reopen if needed.&lt;/p&gt;</comment>
                    </comments>
                    <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|hzvezb:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>6072</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>