<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 03:28:58 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-16665] Check whether the page is currently under I/O in -&gt;releasepage</title>
                <link>https://jira.whamcloud.com/browse/LU-16665</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;We use seqlock to check if a page has been deleted on this inode during the fault process, allowing us to catch an erroneous short read or EIO.&lt;/p&gt;

&lt;p&gt;But after the newer kernels (such as Ubuntu 2204) introduces mapping-&amp;gt;invalidate_lock, we could get rid of all these seqlock checks (which may have impact on the performance) for the newer kernel.&lt;br/&gt;
One blocking is that invalidate_mapping_pages() is called in the kernel without holding this invalidate_lock. The reason is that the newer kernel thought that this function only release pages that are not in use or under I/O.&lt;/p&gt;

&lt;p&gt;Thus we need to check whether the current page trying to release is under I/O or not.&lt;br/&gt;
we can use LCC ((ll_cl_context) to check in -&amp;gt;releasepage() that whether the current page is under I/O (read path) and belong one read context of a process. we can release the page only when the page is not under I/O or in use.&lt;br/&gt;
Or a more coarse grain solution, we can account for an inode the number of processes doing read() and fault(): increase this value when call ll_lcc_add and decrease it when remove the LCC. if this count is larger than 1, we could not release the page...&lt;/p&gt;</description>
                <environment></environment>
        <key id="75201">LU-16665</key>
            <summary>Check whether the page is currently under I/O in -&gt;releasepage</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="4" iconUrl="https://jira.whamcloud.com/images/icons/priorities/minor.svg">Minor</priority>
                        <status id="1" iconUrl="https://jira.whamcloud.com/images/icons/statuses/open.png" description="The issue is open and ready for the assignee to start work on it.">Open</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="qian_wc">Qian Yingjin</assignee>
                                    <reporter username="qian_wc">Qian Yingjin</reporter>
                        <labels>
                    </labels>
                <created>Fri, 24 Mar 2023 09:32:07 +0000</created>
                <updated>Mon, 27 Mar 2023 03:59:29 +0000</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                            <comments>
                            <comment id="367180" author="gerrit" created="Fri, 24 Mar 2023 10:45:28 +0000"  >&lt;p&gt;&quot;Qian Yingjin &amp;lt;qian@ddn.com&amp;gt;&quot; uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/50407&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/50407&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16665&quot; title=&quot;Check whether the page is currently under I/O in -&amp;gt;releasepage&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16665&quot;&gt;LU-16665&lt;/a&gt; llite: check whether page under I/O in releasepage()&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 889f5797e1a51859ad922eeca52c2905144d263b&lt;/p&gt;</comment>
                            <comment id="367346" author="gerrit" created="Mon, 27 Mar 2023 03:59:29 +0000"  >&lt;p&gt;&quot;Qian Yingjin &amp;lt;qian@ddn.com&amp;gt;&quot; uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/50423&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/50423&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16665&quot; title=&quot;Check whether the page is currently under I/O in -&amp;gt;releasepage&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16665&quot;&gt;LU-16665&lt;/a&gt; llite: remove lli_page_inv_lock in newer kernel&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 386f68d03565c58e2cfc67971698892cbd81612e&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|i03h4f:</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>