<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:54:09 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-12614] Lustre ldlm_cancel_hpreq_check() bug</title>
                <link>https://jira.whamcloud.com/browse/LU-12614</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;In the latest version of lustre file system, ptlrpc module has a out-of-access bug due to the lack of validation for specific fields of packets sent by client.&lt;/p&gt;

&lt;p&gt;The kernel panic:&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;
[50920.983447] BUG: unable to handle kernel NULL pointer dereference at 000000000000001c
[50920.986242] IP: [&amp;lt;ffffffffa6b6b46c&amp;gt;] _raw_spin_lock+0xc/0x30
[50920.988767] PGD 0 
[50920.990411] Oops: 0002 [#1] SMP 
[50920.992116] Modules linked in: ofd(OE) ost(OE) osp(OE) mdd(OE) lod(OE) mdt(OE) lfsck(OE) mgs(OE) osd_ldiskfs(OE) lquota(OE) ldiskfs(OE) loop lustre(OE) obdecho(OE) mgc(OE) lov(OE) mdc(OE) osc(OE) lmv(OE) fid(OE) fld(OE) ptlrpc(OE) obdclass(OE) crc_t10dif crct10dif_generic ksocklnd(OE) lnet(OE) libcfs(OE) dm_flakey macsec tcp_diag udp_diag inet_diag unix_diag af_packet_diag netlink_diag binfmt_misc dm_mod nfit libnvdimm iosf_mbi crc32_pclmul ghash_clmulni_intel aesni_intel lrw gf128mul glue_helper ablk_helper cryptd ppdev joydev virtio_balloon parport_pc parport i2c_piix4 pcspkr ip_tables ext4 mbcache jbd2 ata_generic pata_acpi virtio_console virtio_net virtio_blk cirrus drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops ttm crct10dif_pclmul crct10dif_common ata_piix drm crc32c_intel libata
[50921.008352]  serio_raw virtio_pci virtio_ring virtio drm_panel_orientation_quirks floppy
[50921.010518] CPU: 0 PID: 15708 Comm: ldlm_cn00_000 Kdump: loaded Tainted: G           OE  ------------   3.10.0-957.10.1.el7_lustre.x86_64 #1
[50921.014624] Hardware name: Alibaba Cloud Alibaba Cloud ECS, BIOS 3288b3c 04/01/2014
[50921.016833] task: ffff8bfdb0600000 ti: ffff8bfde97a4000 task.ti: ffff8bfde97a4000
[50921.019010] RIP: 0010:[&amp;lt;ffffffffa6b6b46c&amp;gt;]  [&amp;lt;ffffffffa6b6b46c&amp;gt;] _raw_spin_lock+0xc/0x30
[50921.021257] RSP: 0018:ffff8bfde97a7d88  EFLAGS: 00010246
[50921.023228] RAX: 0000000000000000 RBX: ffff8bfdd238cc00 RCX: ffff8bfdd238ccb0
[50921.025367] RDX: 0000000000000001 RSI: 0000000000000000 RDI: 000000000000001c
[50921.027495] RBP: ffff8bfde97a7d98 R08: 00000000000000b8 R09: 00000000000000e0
[50921.029607] R10: ffffffffc0756100 R11: 0000000000000000 R12: 0000000000000000
[50921.031710] R13: ffff8bfde92da0e0 R14: ffff8bfde9e87500 R15: ffff8bfde63c5c00
[50921.033793] FS:  0000000000000000(0000) GS:ffff8bfdffc00000(0000) knlGS:0000000000000000
[50921.035965] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[50921.037907] CR2: 000000000000001c CR3: 0000000427206000 CR4: 00000000003606f0
[50921.039980] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[50921.042023] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[50921.044034] Call Trace:
[50921.045680]  [&amp;lt;ffffffffc092002c&amp;gt;] ? lock_res_and_lock+0x2c/0x50 [ptlrpc]
[50921.047707]  [&amp;lt;ffffffffc09218ea&amp;gt;] __ldlm_handle2lock+0x7a/0x3f0 [ptlrpc]
[50921.049728]  [&amp;lt;ffffffffc0949aa7&amp;gt;] ldlm_cancel_hpreq_check+0x97/0x220 [ptlrpc]
[50921.051774]  [&amp;lt;ffffffffc0986f79&amp;gt;] ptlrpc_main+0x17a9/0x20f0 [ptlrpc]
[50921.053690]  [&amp;lt;ffffffffa64d08c0&amp;gt;] ? finish_task_switch+0x50/0x1c0
[50921.055619]  [&amp;lt;ffffffffc09857d0&amp;gt;] ? ptlrpc_register_service+0xfa0/0xfa0 [ptlrpc]
[50921.057616]  [&amp;lt;ffffffffa64c1c71&amp;gt;] kthread+0xd1/0xe0
[50921.059378]  [&amp;lt;ffffffffa64c1ba0&amp;gt;] ? insert_kthread_work+0x40/0x40
[50921.061220]  [&amp;lt;ffffffffa6b75c1d&amp;gt;] ret_from_fork_nospec_begin+0x7/0x21
[50921.063094]  [&amp;lt;ffffffffa64c1ba0&amp;gt;] ? insert_kthread_work+0x40/0x40
[50921.064927] Code: 5d c3 0f 1f 44 00 00 85 d2 74 e4 0f 1f 40 00 eb ed 66 0f 1f 44 00 00 b8 01 00 00 00 5d c3 90 0f 1f 44 00 00 31 c0 ba 01 00 00 00 &amp;lt;f0&amp;gt; 0f b1 17 85 c0 75 01 c3 55 89 c6 48 89 e5 e8 40 1b ff ff 5d 
[50921.070141] RIP  [&amp;lt;ffffffffa6b6b46c&amp;gt;] _raw_spin_lock+0xc/0x30
[50921.071981]  RSP &amp;lt;ffff8bfde97a7d88&amp;gt;
[50921.073587] CR2: 000000000000001c
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;In function ldlm_cancel_hpreq_check(), there is no boundary check about the &apos;lock_count&apos; parameter obtained from the &apos;dlm_req&apos; structure, and &apos;lock_count&apos; is taken as an index to directly access the &apos;lock_handle&apos; array, resulting in an out-of-bounds access.&lt;/p&gt;

&lt;p&gt;&#160;&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;
 dlm_req = req_capsule_client_get(&amp;amp;req-&amp;gt;rq_pill, &amp;amp;RMF_DLM_REQ); 
 &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (dlm_req == NULL) RETURN(-EFAULT);
 &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; (i = 0; i &amp;lt; dlm_req-&amp;gt;lock_count; i++) { 
  struct ldlm_lock *lock;
 lock = ldlm_handle2lock(&amp;amp;dlm_req-&amp;gt;lock_handle[i]); 
...
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment></environment>
        <key id="56529">LU-12614</key>
            <summary>Lustre ldlm_cancel_hpreq_check() bug</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="1">Fixed</resolution>
                                        <assignee username="green">Oleg Drokin</assignee>
                                    <reporter username="yunye.ry">Alibaba Cloud</reporter>
                        <labels>
                    </labels>
                <created>Tue, 30 Jul 2019 11:18:44 +0000</created>
                <updated>Mon, 16 Mar 2020 13:05:14 +0000</updated>
                            <resolved>Tue, 3 Sep 2019 13:22:25 +0000</resolved>
                                                    <fixVersion>Lustre 2.13.0</fixVersion>
                    <fixVersion>Lustre 2.12.3</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                            <comments>
                            <comment id="252348" author="pjones" created="Wed, 31 Jul 2019 17:55:30 +0000"  >&lt;p&gt;Oleg&lt;/p&gt;

&lt;p&gt;Could you please investigate&lt;/p&gt;

&lt;p&gt;Peter&lt;/p&gt;</comment>
                            <comment id="253231" author="gerrit" created="Sat, 17 Aug 2019 05:45:20 +0000"  >&lt;p&gt;Oleg Drokin (green@whamcloud.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/35807&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/35807&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12614&quot; title=&quot;Lustre ldlm_cancel_hpreq_check() bug&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12614&quot;&gt;&lt;del&gt;LU-12614&lt;/del&gt;&lt;/a&gt; ldlm: ldlm_cancel_hpreq_check should check lock count&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: b61051a5287a33be879a7e6c8783af2d172918e2&lt;/p&gt;</comment>
                            <comment id="254033" author="gerrit" created="Tue, 3 Sep 2019 05:12:34 +0000"  >&lt;p&gt;Oleg Drokin (green@whamcloud.com) merged in patch &lt;a href=&quot;https://review.whamcloud.com/35807/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/35807/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12614&quot; title=&quot;Lustre ldlm_cancel_hpreq_check() bug&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12614&quot;&gt;&lt;del&gt;LU-12614&lt;/del&gt;&lt;/a&gt; ldlm: ldlm_cancel_hpreq_check should check lock count&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 2b7af478bdbf5c6701e0e49aefe34597bdee3126&lt;/p&gt;</comment>
                            <comment id="254047" author="pjones" created="Tue, 3 Sep 2019 13:22:25 +0000"  >&lt;p&gt;Landed for 2.13&lt;/p&gt;</comment>
                            <comment id="254396" author="gerrit" created="Mon, 9 Sep 2019 17:12:57 +0000"  >&lt;p&gt;Minh Diep (mdiep@whamcloud.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/36107&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/36107&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12614&quot; title=&quot;Lustre ldlm_cancel_hpreq_check() bug&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12614&quot;&gt;&lt;del&gt;LU-12614&lt;/del&gt;&lt;/a&gt; ldlm: ldlm_cancel_hpreq_check should check lock count&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_12&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 338d53e2401d1a853082f6e377c1d39fdcd756a5&lt;/p&gt;</comment>
                            <comment id="254948" author="gerrit" created="Wed, 18 Sep 2019 04:24:26 +0000"  >&lt;p&gt;Oleg Drokin (green@whamcloud.com) merged in patch &lt;a href=&quot;https://review.whamcloud.com/36107/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/36107/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12614&quot; title=&quot;Lustre ldlm_cancel_hpreq_check() bug&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12614&quot;&gt;&lt;del&gt;LU-12614&lt;/del&gt;&lt;/a&gt; ldlm: ldlm_cancel_hpreq_check should check lock count&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_12&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 4c4c4ca3a6c1c1e62a74fc25f76dd1dfa81e5265&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                                        </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|i00kev:</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>