<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 03:29:13 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-16695] switch Lustre to use IOCB_APPEND and IOCB_DIRECT instead of file flags</title>
                <link>https://jira.whamcloud.com/browse/LU-16695</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Usage of O_DIRECT and O_APPEND from file-&amp;gt;f_flags to make decisions about IO exposes us to races with fcntl.&#160; The upstream kernel fixed this in 2015 by mirroring them in to the IOCB flags.&#160; Let&apos;s use these.&lt;/p&gt;</description>
                <environment></environment>
        <key id="75380">LU-16695</key>
            <summary>switch Lustre to use IOCB_APPEND and IOCB_DIRECT instead of file flags</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="1">Fixed</resolution>
                                        <assignee username="paf0186">Patrick Farrell</assignee>
                                    <reporter username="paf0186">Patrick Farrell</reporter>
                        <labels>
                    </labels>
                <created>Fri, 31 Mar 2023 21:15:22 +0000</created>
                <updated>Wed, 13 Dec 2023 15:05:09 +0000</updated>
                            <resolved>Wed, 13 Dec 2023 15:05:09 +0000</resolved>
                                                    <fixVersion>Lustre 2.16.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                            <comments>
                            <comment id="368074" author="paf0186" created="Fri, 31 Mar 2023 21:17:18 +0000"  >&lt;p&gt;Note: I&apos;m not aware of any actual issues here, but there is a theoretical problem and this is also required for switching buffered IO to direct IO inside the kernel, because we need to play with these flags and we can&apos;t safely do that on the actual file flags.&lt;/p&gt;</comment>
                            <comment id="368076" author="gerrit" created="Fri, 31 Mar 2023 21:35:16 +0000"  >&lt;p&gt;&quot;Patrick Farrell &amp;lt;pfarrell@whamcloud.com&amp;gt;&quot; uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/50493&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/50493&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16695&quot; title=&quot;switch Lustre to use IOCB_APPEND and IOCB_DIRECT instead of file flags&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16695&quot;&gt;&lt;del&gt;LU-16695&lt;/del&gt;&lt;/a&gt; llite: switch to ki_flags from f_flags&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 6d057bbfe727f4372e19326ea225e2b7736d23cb&lt;/p&gt;</comment>
                            <comment id="385985" author="courrier" created="Thu, 14 Sep 2023 13:11:04 +0000"  >&lt;p&gt;We ran into an issue when using loop devices in direct I/O to manage file systems backed on files in Lustre. I have opened a ticket before I found this one... &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-17116&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://jira.whamcloud.com/browse/LU-17116&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I&apos;m happy to close it if it is considered to be a duplicate. Worst case scenario, on master the client can crash during a read (see the ticket for more details). We ran into the issue in 2.12 initially where we only got an Input/Output error in this case. On master, the client would crash right after the losetup has finished because a read was triggered on the loop device.&lt;/p&gt;

&lt;p&gt;I will try to see if your patch fixes the issue. I think we should at least add a test to check whether losetup --direct-io=on can be used successfully.&lt;/p&gt;</comment>
                            <comment id="385989" author="courrier" created="Thu, 14 Sep 2023 13:32:04 +0000"  >&lt;p&gt;The patch seems to fix the issue.&lt;/p&gt;</comment>
                            <comment id="386012" author="paf0186" created="Thu, 14 Sep 2023 14:40:26 +0000"  >&lt;p&gt;Guillaume,&lt;/p&gt;

&lt;p&gt;Thanks for your report in &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-17116&quot; title=&quot;losetup --direct-io=on trigger LASSERT(ll_dio_aio) in ll_file_io_generic&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-17116&quot;&gt;&lt;del&gt;LU-17116&lt;/del&gt;&lt;/a&gt; - I was aware of this more as a compatibility issue and a small theoretical issue with someone changing those flags.&#160; I wasn&apos;t aware we&apos;d ever see IOCB_DIRECT without O_DIRECT.&#160; That&apos;s a very good catch.&#160; And I can work on getting this patch actually merged, because previously it was just in the (lengthy) backlog.&lt;/p&gt;</comment>
                            <comment id="386018" author="paf0186" created="Thu, 14 Sep 2023 15:38:29 +0000"  >&lt;p&gt;Guillaume,&lt;/p&gt;

&lt;p&gt;Actually, since you generated a patch in &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-17116&quot; title=&quot;losetup --direct-io=on trigger LASSERT(ll_dio_aio) in ll_file_io_generic&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-17116&quot;&gt;&lt;del&gt;LU-17116&lt;/del&gt;&lt;/a&gt;, would you be able to rebase and clean up the patch for &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16695&quot; title=&quot;switch Lustre to use IOCB_APPEND and IOCB_DIRECT instead of file flags&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16695&quot;&gt;&lt;del&gt;LU-16695&lt;/del&gt;&lt;/a&gt;?&#160; It&apos;s tough for me to find time for that right now.&#160; I can help if you have questions or issues.&lt;/p&gt;</comment>
                            <comment id="386110" author="courrier" created="Fri, 15 Sep 2023 08:08:20 +0000"  >&lt;p&gt;I will look into it.&lt;/p&gt;</comment>
                            <comment id="394296" author="gerrit" created="Mon, 27 Nov 2023 11:15:36 +0000"  >&lt;p&gt;&quot;Etienne AUJAMES &amp;lt;eaujames@ddn.com&amp;gt;&quot; uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/53248&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/53248&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16695&quot; title=&quot;switch Lustre to use IOCB_APPEND and IOCB_DIRECT instead of file flags&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16695&quot;&gt;&lt;del&gt;LU-16695&lt;/del&gt;&lt;/a&gt; llite: switch to ki_flags from f_flags&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_15&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 9795cdb4f4230ae654990ccae5a2803ad850954e&lt;/p&gt;</comment>
                            <comment id="396585" author="gerrit" created="Wed, 13 Dec 2023 12:19:51 +0000"  >&lt;p&gt;&quot;Oleg Drokin &amp;lt;green@whamcloud.com&amp;gt;&quot; merged in patch &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/50493/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/50493/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16695&quot; title=&quot;switch Lustre to use IOCB_APPEND and IOCB_DIRECT instead of file flags&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16695&quot;&gt;&lt;del&gt;LU-16695&lt;/del&gt;&lt;/a&gt; llite: switch to ki_flags from f_flags&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: dad7079dfd9d1e17af15a2df67e76605db677e84&lt;/p&gt;</comment>
                            <comment id="396627" author="pjones" created="Wed, 13 Dec 2023 15:05:09 +0000"  >&lt;p&gt;Landed for 2.16&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="77896">LU-17116</issuekey>
        </issuelink>
                            </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|i03hsf:</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>
                                                                                                                                                                                                                                                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>