<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:46:12 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-11703] sigbus on shared mapping memset</title>
                <link>https://jira.whamcloud.com/browse/LU-11703</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;The following test&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;
    addr = mmap(.., MAP_SHARED, ..);

    &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt;(;;)
        memcpy(addr, ...);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;leads to sigbus signal as vvp_io_fault_start()&#160;runs out of grants.&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; &lt;span class=&quot;code-object&quot;&gt;int&lt;/span&gt; vvp_io_fault_start(&lt;span class=&quot;code-keyword&quot;&gt;const&lt;/span&gt; struct lu_env *env,
                              &lt;span class=&quot;code-keyword&quot;&gt;const&lt;/span&gt; struct cl_io_slice *ios)
...
                        result = cl_io_commit_async(env, io, plist, 0, to,
                                                    mkwrite_commit_callback);
...
                                &lt;span class=&quot;code-comment&quot;&gt;/* we&apos;re in big trouble, what can we &lt;span class=&quot;code-keyword&quot;&gt;do&lt;/span&gt; now? */&lt;/span&gt;
                                &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (result == -EDQUOT)
                                        result = -ENOSPC;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
        <key id="54106">LU-11703</key>
            <summary>sigbus on shared mapping memset</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="6" iconUrl="https://jira.whamcloud.com/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</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>
                            <label>patch</label>
                    </labels>
                <created>Mon, 26 Nov 2018 21:39:49 +0000</created>
                <updated>Wed, 12 Jan 2022 12:37:34 +0000</updated>
                            <resolved>Wed, 12 Jan 2022 12:37:34 +0000</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                            <comments>
                            <comment id="237476" author="gerrit" created="Mon, 26 Nov 2018 21:40:33 +0000"  >&lt;p&gt;Vladimir Saveliev (c17830@cray.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/33724&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/33724&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-11703&quot; title=&quot;sigbus on shared mapping memset&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-11703&quot;&gt;&lt;del&gt;LU-11703&lt;/del&gt;&lt;/a&gt; target: force transaction commit on grant lack&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: c9ce35eef3945d9b446e8e535a586b06ec68dfd0&lt;/p&gt;</comment>
                            <comment id="276115" author="tomaka" created="Sat, 25 Jul 2020 18:00:16 +0000"  >&lt;p&gt;Hey Vladimir!, &lt;br/&gt;
 We are running Lustre: Build Version: 2.10.3 and seeing similar issue, but i can&apos;t seem to be able to reproduce it using mmap_sanity tst 9. I suspect that this is because some of our parameters are not default. I noticed that it depends on max_pages_per_rpc and page size being 4096. Our max_pages_per_rpc is 4096 on some of the OSTs and 1024 on others. I have updated the file size and still can&apos;t reproduce. Should i be able to on my version? &lt;br/&gt;
 What other parameters could affect this?&lt;/p&gt;

&lt;p&gt;The issue we are seeing is with sqlite3. We are using it in read only mode but the problems happens when there is a on the fly index created, that gets dumped to temporary file on Lustre. &lt;br/&gt;
 I do not have full crash dump, just java hs_err file. &lt;br/&gt;
 It goes like that:&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;# Problematic frame:
# C  [libintlc.so.5+0x3c012]  __intel_mic_avx512f_memcpy+0x92 

siginfo: si_signo: 7 (SIGBUS), si_code: 2 (BUS_ADRERR), si_addr: 0x00002ae0eb909000

2ae0eb909000-2ae0eb90c000 rw-s 00000000 fab:cb7e8 144115656126652496     /kz5/20200710_job_12159204.XPuW/etilqs_boLeelqyY0xqGKU (deleted)
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;What i find weird is that 0x00002ae0eb909000 points to the beginning of the file, not somewhere in the middle.&lt;/p&gt;

&lt;p&gt;The following is from a different run, file is not on Lustre but it is executing the same piece of code and connects to the same sqlite db.&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;120601 access(&quot;/dev/shm/etilqs_kVSlJLGaN5xGwo0&quot;, F_OK &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... access resumed&amp;gt; )           = -1 ENOENT (No such file or directory)
120601 open(&quot;/dev/shm/etilqs_kVSlJLGaN5xGwo0&quot;, O_RDWR|O_CREAT|O_EXCL|O_NOFOLLOW|O_CLOEXEC, 0600 &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... open resumed&amp;gt; )             = 162
120601 fstat(162,  &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... fstat resumed&amp;gt; {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
120601 unlink(&quot;/dev/shm/etilqs_kVSlJLGaN5xGwo0&quot; &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... unlink resumed&amp;gt; )           = 0
120601 fstat(162,  &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... fstat resumed&amp;gt; {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
120601 ftruncate(162, 11951 &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... ftruncate resumed&amp;gt; )        = 0
120601 fstat(162,  &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... fstat resumed&amp;gt; {st_mode=S_IFREG|0600, st_size=11951, ...}) = 0
120601 mmap(NULL, 11951, PROT_READ|PROT_WRITE, MAP_SHARED, 162, 0 &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... mmap resumed&amp;gt; )             = 0x7f6445d11000
120601 ftruncate(162, 14774 &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... ftruncate resumed&amp;gt; )        = 0
120601 munmap(0x7f6445d11000, 11951 &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... munmap resumed&amp;gt; )           = 0
120601 lseek(162, 11944, SEEK_SET &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... lseek resumed&amp;gt; )            = 11944
120601 write(162, &quot;&quot;..., 344 &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... write resumed&amp;gt; )            = 344
120601 lseek(162, 12288, SEEK_SET &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... lseek resumed&amp;gt; )            = 12288
120601 write(162, &quot;&quot;..., 2479 &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... write resumed&amp;gt; )            = 2479
120601 fstat(162,  &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... fstat resumed&amp;gt; {st_mode=S_IFREG|0600, st_size=14774, ...}) = 0
120601 mmap(NULL, 14774, PROT_READ|PROT_WRITE, MAP_SHARED, 162, 0 &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... mmap resumed&amp;gt; )             = 0x7f6445d10000
120601 munmap(0x7f6445d10000, 14774 &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... munmap resumed&amp;gt; )           = 0
120601 close(162 &amp;lt;unfinished ...&amp;gt;
120601 &amp;lt;... close resumed&amp;gt; )            = 0
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Is it worth a new issue?&lt;br/&gt;
 Regards.&lt;br/&gt;
 Jacek Tomaka&lt;/p&gt;</comment>
                            <comment id="276128" author="vsaveliev" created="Mon, 27 Jul 2020 09:41:14 +0000"  >&lt;p&gt;Jacek, hello&lt;/p&gt;

&lt;p&gt;You should check whether your SIGBUS is related to this issue. Check whether you run out of grants.&lt;/p&gt;

&lt;p&gt;The below are two runs. In first a client has enough grants, so it is able to survive 10 seconds of the memset.&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; ./test  /mnt/lustre/file
Alarm clock
[root@sl754 LU-11703]# lctl get_param osc.*.cur_grant_bytes
osc.lustre-OST0000-osc-ffff9a11149bf800.cur_grant_bytes=497221632
osc.lustre-OST0001-osc-ffff9a11149bf800.cur_grant_bytes=8437760
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;In second case, the client runs out of grants and gets SIGBUS:&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;./test  /mnt/lustre/file2
Bus error (core dumped)
[root@sl754 LU-11703]# lctl get_param osc.*.cur_grant_bytes
osc.lustre-OST0000-osc-ffff9a10679ac800.cur_grant_bytes=20926464
osc.lustre-OST0001-osc-ffff9a10679ac800.cur_grant_bytes=20480
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Lack of grants usually happens when servers do not have much free disk space.&lt;br/&gt;
 The max_pages_per_rpc parameter is less critical for the problem. If you have enough disk space and no lack of grants you are certainly not seeing this issue.&lt;/p&gt;</comment>
                            <comment id="322432" author="vsaveliev" created="Wed, 12 Jan 2022 12:37:34 +0000"  >&lt;p&gt;The issue has bene fixed by &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-13228&quot; title=&quot;write access to an mmapped file over soft quota limit causes sigbus&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-13228&quot;&gt;&lt;del&gt;LU-13228&lt;/del&gt;&lt;/a&gt; clio: mmap write when overquota: vvp_io_commit_sync() called by vvp_io_fault_start() forces the required transaction commit.&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|i006vj:</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>