<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:53: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-12580] usercopy exposure attempt detected in LL_IOC_LOV_GETSTRIPE ioctl</title>
                <link>https://jira.whamcloud.com/browse/LU-12580</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Software like darshan are still using the old `ioctl` way to gather striping info for a file.&lt;/p&gt;

&lt;p&gt;The kernel BUG is easily triggered on a not-PFL striped file, using:&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;
lum-&amp;gt;lmm_magic = LOV_USER_MAGIC;
lum-&amp;gt;lmm_stripe_count = LOV_MAX_STRIPE_COUNT;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Any `lmm_stripe_count` greater than the actual file&apos;s stripe count will trigger the bug.&lt;/p&gt;

&lt;p&gt;Kernel side the issue appears to be in `lov_getstripe`: with a positive `lum_size`(line 409), `lmm_size` is set as `lum_size`(line 442) even if `lmm_magic != LOV_MAGIC_COMP_V1`(line 414), while instead the structure is just as big as `lmmk_size`:&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;
404         &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (lum.lmm_magic == LOV_USER_MAGIC_V1 ||
405             lum.lmm_magic == LOV_USER_MAGIC_V3)
406                 lum_size = lov_user_md_size(lum.lmm_stripe_count,
407                                             lum.lmm_magic);
408 
409         &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (lum_size != 0) {
410                 struct lov_mds_md *comp_md = lmmk;
411 
412                 /* Legacy app (ADIO &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; instance) treats the layout as V1/V3
413                  * blindly, we&apos;d &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; a reasonable V1/V3 &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; them. */
414                 &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (lmmk-&amp;gt;lmm_magic == LOV_MAGIC_COMP_V1) {
[...]
439                 }
440 
441                 lmm = comp_md;
442                 lmm_size = lum_size;
443         } &lt;span class=&quot;code-keyword&quot;&gt;else&lt;/span&gt; {
444                 lmm = lmmk;
445                 lmm_size = lmmk_size;
446         }
447         /**
448          * User specified limited buffer size, usually the buffer is
449          * from ll_lov_setstripe(), and the buffer can only hold basic
450          * layout template info.
451          */
452         &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (size == 0 || size &amp;gt; lmm_size)
453                 size = lmm_size;
454         &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (copy_to_user(lump, lmm, size))
455                 GOTO(out_free, rc = -EFAULT);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Please find as attachment the kernel trace and a reproducer, to be invoked as:&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;
$ gcc reproducer.c -o reproducer -W -Wall --pedantic
$ ./reproducer &amp;lt;file_path&amp;gt;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment>CentOS 7.6.1810, starting with kernel 3.10.0-957</environment>
        <key id="56476">LU-12580</key>
            <summary>usercopy exposure attempt detected in LL_IOC_LOV_GETSTRIPE ioctl</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="mgrossi">Marco Grossi</assignee>
                                    <reporter username="mgrossi">Marco Grossi</reporter>
                        <labels>
                    </labels>
                <created>Tue, 23 Jul 2019 17:13:23 +0000</created>
                <updated>Sun, 10 Jan 2021 20:56:57 +0000</updated>
                            <resolved>Tue, 24 Mar 2020 11:58:18 +0000</resolved>
                                    <version>Upstream</version>
                                    <fixVersion>Lustre 2.14.0</fixVersion>
                    <fixVersion>Lustre 2.12.5</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>6</watches>
                                                                            <comments>
                            <comment id="251896" author="pfarrell" created="Tue, 23 Jul 2019 17:20:03 +0000"  >&lt;p&gt;Marco,&lt;/p&gt;

&lt;p&gt;It looks like you&apos;ve worked this out and have a suggested change - are you planning to submit a patch for this?&lt;/p&gt;</comment>
                            <comment id="251902" author="mgrossi" created="Tue, 23 Jul 2019 20:54:54 +0000"  >&lt;p&gt;Hi Patrick,&lt;/p&gt;

&lt;p&gt;Yes I&apos;ve a patch in mind. I still need to double-check the correctness of a progressive layout case.&lt;/p&gt;

&lt;p&gt;I&apos;ll check this in the morning, then update the issue.&lt;/p&gt;

&lt;p&gt;Kinda newbie here for patch submission, so might need some direction.&lt;/p&gt;</comment>
                            <comment id="251903" author="pjones" created="Tue, 23 Jul 2019 21:00:51 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.whamcloud.com/secure/ViewProfile.jspa?name=mgrossi&quot; class=&quot;user-hover&quot; rel=&quot;mgrossi&quot;&gt;mgrossi&lt;/a&gt; details of the patch submission steps are at &lt;a href=&quot;http://wiki.lustre.org/Using_Gerrit&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://wiki.lustre.org/Using_Gerrit&lt;/a&gt; . Don&apos;t be shy to ask for help.&lt;/p&gt;</comment>
                            <comment id="251904" author="pfarrell" created="Tue, 23 Jul 2019 21:12:23 +0000"  >&lt;p&gt;Great, thanks Marco - Like Peter said, don&apos;t be shy about asking for help.&lt;/p&gt;</comment>
                            <comment id="251943" author="mgrossi" created="Wed, 24 Jul 2019 16:04:31 +0000"  >&lt;p&gt;I&apos;ve few questions about the expected behavior of this ioctl LL_IOC_LOV_GETSTRIPE&lt;/p&gt;

&lt;p&gt;`lov_getstripe` is currently setting `lmm_layout_gen`, via `lov_lsm_pack`, but looking at the variety of codes using this ioctl, like ADIO and darshan, they are mainly expecting to get a value for `lmm_stripe_offset` instead.&#160;&lt;/p&gt;

&lt;p&gt;The comments associated to &quot;lov_user_md_v1&quot; and &quot;v3&quot; are as following:&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;
__u16 lmm_stripe_offset; /* starting stripe offset in
                          * lmm_objects, use when writing */
__u16 lmm_layout_gen;    /* layout generation number
                          * used when reading */
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Can you clarify which one is to return?&lt;/p&gt;

&lt;p&gt;Considering a PFL file, at the moment the ioctl always returns 0 for both object id and sequential; also offset is set to -1 for a not instantiated file, while it turns to 0 on first write. What should be returned here?&lt;/p&gt;

&lt;p&gt;On a side note, man for &quot;llapi_file_get_stripe.3&quot; still reports old data structure. Should I open an issue for this?&lt;/p&gt;</comment>
                            <comment id="251944" author="mgrossi" created="Wed, 24 Jul 2019 16:12:01 +0000"  >&lt;p&gt;Forgot to ask last bit: currently is returning&#160;-ENODATA on a directory. Is this expected?&lt;/p&gt;</comment>
                            <comment id="251945" author="pfarrell" created="Wed, 24 Jul 2019 16:22:11 +0000"  >&lt;p&gt;Those comments are... strange.&#160; They don&apos;t reflect on what you should be returning, they&apos;re about internal use within the fs.&#160; (I&apos;m also not sure they&apos;re fully correct.)&lt;/p&gt;

&lt;p&gt;So layout_gen is generally only of interest to tools which are manipulating the layout directly - Not just doing getstripe/setstripe.&#160; It&apos;s incremented when the layout changes, like in FLR or when a PFL component is first written to (and is instantiated).&lt;/p&gt;

&lt;p&gt;Stripe offset - if set - gives the offset that will be used for the first stripe of an object.&#160; It is &quot;-1&quot; to indicate no preference has been indicated.&#160; Once a component is instantiated, it is set to the first stripe of that component.&#160; (Not 0 - I just tested to confirm, and it&apos;s zero for me only if the first stripe is on OST0.)&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;Considering a PFL file, at the moment the ioctl always returns 0 for both object id and sequential; also offset is set to -1 for a not instantiated file, while it turns to 0 on first write. What should be returned here? &lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;I can&apos;t quite parse this sentence.&#160; For a PFL file, 0 is in &lt;b&gt;which&lt;/b&gt; field, of which struct?&#160; What do you mean by &quot;sequential&quot; - are you referring to a field (so, which one, in which struct)?&lt;/p&gt;

&lt;p&gt;The offset behavior sounds correct to me: -1 until instantiated, because no offset has been picked, then the offset of the first stripe.&lt;/p&gt;

&lt;p&gt;FWIW, looking at stripe offset is kind of odd.&#160; Applications should really be concerned with the offset of all of the stripes, not just the first one for each component.&#160; The stripes are not necessarily sequential by OST or anything, so the offset isn&apos;t enough info by itself.&#160; It&apos;s really only interesting when you&apos;re looking at an &lt;b&gt;uninstantiated&lt;/b&gt; layout and you want to see if a default is set.&lt;/p&gt;</comment>
                            <comment id="251946" author="pfarrell" created="Wed, 24 Jul 2019 16:24:37 +0000"  >&lt;p&gt;You asked two other things, let&apos;s see...&lt;/p&gt;

&lt;p&gt;Please do open an issue for the man page, or if you feel it&apos;s closely related, that&apos;s a minor enough change it could be done under this LU as a cleanup.&#160; (Preferably in a separate patch, but still using this LU.)&lt;/p&gt;

&lt;p&gt;I haven&apos;t verified this, but I suspect you are getting ENODATA because there is no default layout set on the directory.&lt;/p&gt;

&lt;p&gt;Try setting a default layout on the directory:&lt;br/&gt;
lfs setstripe -E 10M -E 100M -E -1 testdir&lt;/p&gt;

&lt;p&gt;Then calling the ioctl on it.&lt;/p&gt;</comment>
                            <comment id="251986" author="mgrossi" created="Wed, 24 Jul 2019 21:13:36 +0000"  >&lt;p&gt;Sorry for the confusion; will start by clarifying the first question.&lt;/p&gt;

&lt;p&gt;Considering the &quot;struct lov_user_md&quot; passed to the ioctl invocation, it can be either &quot;lov_user_md_v1&quot; or &quot;lov_user_md_v3&quot;:&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;
#define lov_user_md lov_user_md_v1

struct lov_user_md_v1 {
        __u32 lmm_magic;
        __u32 lmm_pattern;
        struct ost_id lmm_oi;
        __u32 lmm_stripe_size;
        __u16 lmm_stripe_count;
        union {
                __u16 lmm_stripe_offset;
                __u16 lmm_layout_gen;
        };
        struct lov_user_ost_data_v1 lmm_objects[0];
} __attribute__((packed,  __may_alias__));

struct lov_user_md_v3 {
        __u32 lmm_magic;
        __u32 lmm_pattern;
        struct ost_id lmm_oi;
        __u32 lmm_stripe_size;
        __u16 lmm_stripe_count;
        union {
                __u16 lmm_stripe_offset;
                __u16 lmm_layout_gen;
        };
        &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt;  lmm_pool_name[LOV_MAXPOOLNAME + 1];
        struct lov_user_ost_data_v1 lmm_objects[0];
} __attribute__((packed));
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Given that &quot;lmm_stripe_offset&quot; and &quot;lmm_layout_gen&quot; share a union, only one can be returned.&lt;/p&gt;

&lt;p&gt;Now, considering a case of &quot;lsm_magic&quot; either of LOV_MAGIC_V1 or LOV_MAGIC_V3, &quot;lov_lsm_pack_v1v3&quot; is the one invoked. In this function, &quot;lmm_layout_gen&quot; is the one chosen to be returned:&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;
lmmv1-&amp;gt;lmm_layout_gen = cpu_to_le16(lsm-&amp;gt;lsm_layout_gen);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;The fact is that majority of codes are expecting to get &quot;lmm_stripe_offset&quot;, like ADIO:&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;
    lumlen = sizeof(struct lov_user_md) +
            MAX_LOV_UUID_COUNT * sizeof(struct lov_user_ost_data);
    lum = (struct lov_user_md *)ADIOI_Calloc(1,lumlen);

[...]

    memset(lum, 0, lumlen);
    lum-&amp;gt;lmm_magic = LOV_USER_MAGIC;
    err = ioctl(fd-&amp;gt;fd_sys, LL_IOC_LOV_GETSTRIPE, (void *)lum);
    &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (!err) {

[...]

        fd-&amp;gt;hints-&amp;gt;fs_hints.lustre.start_iodevice = lum-&amp;gt;lmm_stripe_offset;
        sprintf(value, &lt;span class=&quot;code-quote&quot;&gt;&quot;%d&quot;&lt;/span&gt;, lum-&amp;gt;lmm_stripe_offset);
        ADIOI_Info_set(fd-&amp;gt;info, &lt;span class=&quot;code-quote&quot;&gt;&quot;romio_lustre_start_iodevice&quot;&lt;/span&gt;, value);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Semantically, which one between &quot;lmm_stripe_offset&quot; and &quot;lmm_layout_gen&quot; should be the correct one to return?&lt;/p&gt;</comment>
                            <comment id="262811" author="gerrit" created="Fri, 7 Feb 2020 12:31:02 +0000"  >&lt;p&gt;Li Dongyang (dongyangli@ddn.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/37469&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/37469&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12580&quot; title=&quot;usercopy exposure attempt detected in LL_IOC_LOV_GETSTRIPE ioctl&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12580&quot;&gt;&lt;del&gt;LU-12580&lt;/del&gt;&lt;/a&gt; lov: fix out of bound usercopy&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 93df0eba99fbc22af41d11003ba3564394979b29&lt;/p&gt;</comment>
                            <comment id="262974" author="gerrit" created="Mon, 10 Feb 2020 04:40:35 +0000"  >&lt;p&gt;Li Dongyang (dongyangli@ddn.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/37493&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/37493&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12580&quot; title=&quot;usercopy exposure attempt detected in LL_IOC_LOV_GETSTRIPE ioctl&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12580&quot;&gt;&lt;del&gt;LU-12580&lt;/del&gt;&lt;/a&gt; lov: fix typo in lov_comp_md_size&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: a65fa5d21bb8776735f8d7cf3516aed0db94e64c&lt;/p&gt;</comment>
                            <comment id="265955" author="gerrit" created="Tue, 24 Mar 2020 05:22:56 +0000"  >&lt;p&gt;Oleg Drokin (green@whamcloud.com) merged in patch &lt;a href=&quot;https://review.whamcloud.com/37493/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/37493/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12580&quot; title=&quot;usercopy exposure attempt detected in LL_IOC_LOV_GETSTRIPE ioctl&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12580&quot;&gt;&lt;del&gt;LU-12580&lt;/del&gt;&lt;/a&gt; lov: fix typo in lov_comp_md_size&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: d41716533682ed88b8a77654f9b5b050ef5c672c&lt;/p&gt;</comment>
                            <comment id="265956" author="gerrit" created="Tue, 24 Mar 2020 05:23:08 +0000"  >&lt;p&gt;Oleg Drokin (green@whamcloud.com) merged in patch &lt;a href=&quot;https://review.whamcloud.com/37469/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/37469/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12580&quot; title=&quot;usercopy exposure attempt detected in LL_IOC_LOV_GETSTRIPE ioctl&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12580&quot;&gt;&lt;del&gt;LU-12580&lt;/del&gt;&lt;/a&gt; lov: fix out of bound usercopy&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 2f1beb33144523467b596f4b6fab882b0a839187&lt;/p&gt;</comment>
                            <comment id="265993" author="pjones" created="Tue, 24 Mar 2020 11:58:18 +0000"  >&lt;p&gt;Landed for 2.14&lt;/p&gt;</comment>
                            <comment id="266052" author="gerrit" created="Wed, 25 Mar 2020 02:30:15 +0000"  >&lt;p&gt;Minh Diep (mdiep@whamcloud.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/38050&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/38050&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12580&quot; title=&quot;usercopy exposure attempt detected in LL_IOC_LOV_GETSTRIPE ioctl&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12580&quot;&gt;&lt;del&gt;LU-12580&lt;/del&gt;&lt;/a&gt; lov: fix typo in lov_comp_md_size&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_12&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 865177bca926efd4f69d4dcaa74624054a2a5aaf&lt;/p&gt;</comment>
                            <comment id="266053" author="gerrit" created="Wed, 25 Mar 2020 02:30:16 +0000"  >&lt;p&gt;Minh Diep (mdiep@whamcloud.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/38051&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/38051&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12580&quot; title=&quot;usercopy exposure attempt detected in LL_IOC_LOV_GETSTRIPE ioctl&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12580&quot;&gt;&lt;del&gt;LU-12580&lt;/del&gt;&lt;/a&gt; lov: fix out of bound usercopy&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_12&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: b47ff3cd33984e72fc2f59032ad8147074628d28&lt;/p&gt;</comment>
                            <comment id="266975" author="gerrit" created="Mon, 6 Apr 2020 21:17:05 +0000"  >&lt;p&gt;Oleg Drokin (green@whamcloud.com) merged in patch &lt;a href=&quot;https://review.whamcloud.com/38050/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/38050/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12580&quot; title=&quot;usercopy exposure attempt detected in LL_IOC_LOV_GETSTRIPE ioctl&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12580&quot;&gt;&lt;del&gt;LU-12580&lt;/del&gt;&lt;/a&gt; lov: fix typo in lov_comp_md_size&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_12&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 13dc723aea39c60d8ed128a312fba1520921c792&lt;/p&gt;</comment>
                            <comment id="266980" author="gerrit" created="Mon, 6 Apr 2020 21:17:21 +0000"  >&lt;p&gt;Oleg Drokin (green@whamcloud.com) merged in patch &lt;a href=&quot;https://review.whamcloud.com/38051/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/38051/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12580&quot; title=&quot;usercopy exposure attempt detected in LL_IOC_LOV_GETSTRIPE ioctl&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12580&quot;&gt;&lt;del&gt;LU-12580&lt;/del&gt;&lt;/a&gt; lov: fix out of bound usercopy&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_12&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: d4dd52a3a1dea9e6117512889837e245fb983556&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="59311">LU-13596</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                                        </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="62293">LU-14316</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="33262" name="kernel_trace.txt" size="3596" author="mgrossi" created="Tue, 23 Jul 2019 17:09:59 +0000"/>
                            <attachment id="33263" name="reproducer.c" size="1320" author="mgrossi" created="Tue, 23 Jul 2019 16:51:54 +0000"/>
                    </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|i00k33:</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>