<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 03:23:29 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-16043] (osc_page.c:183:osc_page_delete()) LBUG</title>
                <link>https://jira.whamcloud.com/browse/LU-16043</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&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;[  418.712805] LustreError: 12744:0:(osc_page.c:182:osc_page_delete()) Trying to teardown failed: -16
[  418.715341] LustreError: 12744:0:(osc_page.c:183:osc_page_delete()) ASSERTION( 0 ) failed:
[  418.717901] LustreError: 12744:0:(osc_page.c:183:osc_page_delete()) LBUG
[  418.719937] Pid: 12744, comm: rm 3.10.0-1160.71.1.el7.x86_64 #1 SMP Sun Jul 24 17:13:36 MSK 2022
[  418.722849] Call Trace:
[  418.723845] [&amp;lt;0&amp;gt;] libcfs_call_trace+0x90/0xf0 [libcfs]
[  418.725936] [&amp;lt;0&amp;gt;] lbug_with_loc+0x4c/0xa0 [libcfs]
[  418.729036] [&amp;lt;0&amp;gt;] osc_page_delete+0x49b/0x500 [osc]
[  418.732641] [&amp;lt;0&amp;gt;] cl_page_delete0+0x85/0x320 [obdclass]
[  418.734915] [&amp;lt;0&amp;gt;] cl_page_delete+0x33/0x110 [obdclass]
[  418.736796] [&amp;lt;0&amp;gt;] ll_invalidatepage+0x7f/0x170 [lustre]
[  418.738250] [&amp;lt;0&amp;gt;] do_invalidatepage_range+0x7d/0x90
[  418.739724] [&amp;lt;0&amp;gt;] truncate_inode_page+0x77/0x80
[  418.741012] [&amp;lt;0&amp;gt;] truncate_inode_pages_range+0x1ea/0x750
[  418.742643] [&amp;lt;0&amp;gt;] truncate_inode_pages_final+0x4f/0x60
[  418.744691] [&amp;lt;0&amp;gt;] ll_truncate_inode_pages_final+0x21/0xe0 [lustre]
[  418.746819] [&amp;lt;0&amp;gt;] ll_delete_inode+0x38/0x150 [lustre]
[  418.748201] [&amp;lt;0&amp;gt;] evict+0xb4/0x180
[  418.749416] [&amp;lt;0&amp;gt;] iput+0xfc/0x190
[  418.750516] [&amp;lt;0&amp;gt;] do_unlinkat+0x1ae/0x2d0
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;The above happens on unlink if &lt;br/&gt;
ll_delete_inode-&amp;gt;cl_sync_file_range-&amp;gt;cl_io_loop-&amp;gt;cl_io_start does not process all slices:&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;
cl_sync_file_range()
	cl_io_loop()
		cl_io_start()
			list_for_each_entry(scan, &amp;amp;io-&amp;gt;ci_layers, cis_linkage) {
				result = scan-&amp;gt;cis_iop-&amp;gt;op[io-&amp;gt;ci_type].cio_start(env, scan);
					osc_io_fsync_start();
				&lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (result != 0)
					&lt;span class=&quot;code-keyword&quot;&gt;break&lt;/span&gt;;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;if osc_io_fsync_start() fails for first stripe, second stripe does not get its dirty pages discarded, which makes ll_invalidatepage-&amp;gt;osc_page_delete() to fail on a page of second stripe:&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;
&lt;span class=&quot;code-keyword&quot;&gt;static&lt;/span&gt; void osc_page_delete(&lt;span class=&quot;code-keyword&quot;&gt;const&lt;/span&gt; struct lu_env *env,
...
        rc = osc_teardown_async_page(env, obj, opg);
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (rc) {
                CL_PAGE_DEBUG(D_ERROR, env, slice-&amp;gt;cpl_page,
                              &lt;span class=&quot;code-quote&quot;&gt;&quot;Trying to teardown failed: %d\n&quot;&lt;/span&gt;, rc);
                LASSERT(0);
	}

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
        <key id="71483">LU-16043</key>
            <summary>(osc_page.c:183:osc_page_delete()) LBUG</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="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="vsaveliev">Vladimir Saveliev</assignee>
                                    <reporter username="vsaveliev">Vladimir Saveliev</reporter>
                        <labels>
                    </labels>
                <created>Mon, 25 Jul 2022 12:02:36 +0000</created>
                <updated>Wed, 10 Jan 2024 22:40:23 +0000</updated>
                            <resolved>Wed, 6 Sep 2023 13:12:13 +0000</resolved>
                                                    <fixVersion>Lustre 2.16.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>7</watches>
                                                                            <comments>
                            <comment id="341423" author="gerrit" created="Mon, 25 Jul 2022 12:03:41 +0000"  >&lt;p&gt;&quot;Vladimir Saveliev &amp;lt;vladimir.saveliev@hpe.com&amp;gt;&quot; uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/48032&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/48032&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16043&quot; title=&quot;(osc_page.c:183:osc_page_delete()) LBUG&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16043&quot;&gt;&lt;del&gt;LU-16043&lt;/del&gt;&lt;/a&gt; osc: allow error for write on CL_FSYNC_DISCARD&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: af53dd7d647404659b2445d26243c549fe50e34e&lt;/p&gt;</comment>
                            <comment id="384894" author="gerrit" created="Wed, 6 Sep 2023 06:17:09 +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/+/48032/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/48032/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16043&quot; title=&quot;(osc_page.c:183:osc_page_delete()) LBUG&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16043&quot;&gt;&lt;del&gt;LU-16043&lt;/del&gt;&lt;/a&gt; osc: allow error for write on CL_FSYNC_DISCARD&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 050c2fb23b1f98745305a3dfe3062ea5a66dfdb4&lt;/p&gt;</comment>
                            <comment id="384971" author="pjones" created="Wed, 6 Sep 2023 13:12:13 +0000"  >&lt;p&gt;Landed for 2.16&lt;/p&gt;</comment>
                            <comment id="399223" author="adilger" created="Wed, 10 Jan 2024 22:40:23 +0000"  >&lt;p&gt;This same &quot;&lt;tt&gt;LASSERT(0)&lt;/tt&gt;&quot; was hit even including the &quot;&lt;tt&gt;osc: allow error for write on CL_FSYNC_DISCARD&lt;/tt&gt;&quot; patch applied.  Does it make sense to replace this &quot;&lt;tt&gt;LASSERT()&lt;/tt&gt;&quot; with an error return?  At worst it would leak some memory, and possibly the file could be cleaned up later through other means (lock cancellation, page cache flushing, whatever), but it is definitely disruptive to the user.&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|i02vdz:</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>