<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style>body { line-height: 1.5; }blockquote { margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em; }p { margin-top: 0px; margin-bottom: 0px; }body { font-size: 16pt; font-family: 微软雅黑; color: rgb(0, 0, 0); line-height: 1.5; }body { font-size: 16pt; font-family: 微软雅黑; color: rgb(0, 0, 0); line-height: 1.5; }</style>
</head>
<body>
<div style="widows: 1;"><font size="2"><font><span style="line-height: 18px;">Thanks for reply, j</span></font><span style="line-height: 18px;">ust like what </span><span style="line-height: 19px;">Goldwyn </span><span style="line-height: 18px;">said, there
is </span><span style="line-height: 19px;">a </span><span style="line-height: 19px;">critical result for </span><span style="line-height: 18px;">such a simple process.</span></font></div>
<div style="widows: 1;"><font size="2"><span style="line-height: 19px; widows: auto;">It has encountered EROFS all the time while calling </span></font><span style="font-size: 13px; background-color: rgba(0, 0, 0, 0);">ocfs2_start_trans</span><font size="2"><span style="line-height: 19px; widows: auto;">,
e</span><span style="line-height: 20px;">ven if the storage is back to normal. </span></font></div>
<div style="widows: 1;"><span data-bm="70" style="line-height: 18px;"><font size="2">I 'm trying to make some other changes and don't know if the error is still being shown. </font></span></div>
<div style="widows: 1;"><span style="background-color: window; font-size: small; line-height: 19px;">Any feedback o</span><font size="2"><span style="background-color: rgb(255, 255, 255);"><span style="line-height: 19px;">r </span><span style="line-height: 20px;">suggestion</span><span style="line-height: 20px;"> </span></span></font><span style="background-color: window; font-size: small; line-height: 19px;">about
this process (positive or negative) would be greatly appreciated. </span></div>
<div style="widows: 1;"><span style="background-color: window; font-size: small; line-height: 19px;">thanks again</span></div>
<div style="widows: 1;"><br>
</div>
<div style="widows: 1;"><br>
</div>
<span class="op_fanyi_read" style="display: inline-block; margin-left: 4px; color: rgb(51, 51, 51); font-family: arial; font-size: 18px; line-height: 20px; widows: 1;"></span>
<hr style="width: 210px; height: 1px;" color="#b5c4df" size="1" align="left">
<div><span>
<div style="MARGIN: 10px; FONT-FAMILY: verdana; FONT-SIZE: 10pt">
<div>zhangguanghui</div>
</div>
</span></div>
<blockquote style="margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em;">
<div> </div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<div style="PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FONT-SIZE: 12px;FONT-FAMILY:tahoma;COLOR:#000000; BACKGROUND: #efefef; PADDING-BOTTOM: 8px; PADDING-TOP: 8px">
<div><b>From:</b> <a href="mailto:rgoldwyn@suse.com">Goldwyn Rodrigues</a></div>
<div><b>Date:</b> 2015-10-14 19:53</div>
<div><b>To:</b> <a href="mailto:joseph.qi@huawei.com">Joseph Qi</a>; <a href="mailto:zhang.guanghui@h3c.com">
zhangguanghui 10102 (CCPL)</a></div>
<div><b>CC:</b> <a href="mailto:mfasheh@suse.de">mfasheh ></a>; <a href="mailto:ocfs2-users@oss.oracle.com">
'ocfs2-users@oss.oracle.com' (ocfs2-users@oss.oracle.com)</a>; <a href="mailto:ocfs2-devel@oss.oracle.com">
ocfs2-devel@oss.oracle.com</a></div>
<div><b>Subject:</b> Re: [Ocfs2-devel] Ocfs2-devel Digest, Vol 138, Issue 31 review</div>
</div>
</div>
<div>
<div class="FoxDiv20151015084714433151"><!-- Converted from text/plain format --><br>
<br>
<p style="margin-top: 0px; margin-bottom: 0px;"><font size="2">On 10/14/2015 03:57 AM, Joseph Qi wrote:<br>
> On 2015/10/14 16:45, Zhangguanghui wrote:<br>
>> Hi,<br>
>> "status = -30" means it has encountered EROFS when start transaction.<br>
>> And system panic is because s_mount_opt is set to OCFS2_MOUNT_ERRORS_PANIC in __ocfs2_abort,<br>
>> ideal with OCFS2_MOUNT_ERRORS_PANIC first in ocfs2_handle_error.<br>
>> so I think that it is not reasonable, Therefore, this setting shall be canceled in __ocfs2_abort.<br>
>> thanks<br>
>><br>
> The option is set when mounting and __ocfs2_abort does the check and<br>
> then perform proper action.<br>
> So if panic is not the behaviour you want, change the mount option to<br>
> what you want.<br>
<br>
<br>
No, this is a special case where the journal is aborted. So, we are<br>
calling ocfs2_abort() because we cannot proceed with the transaction<br>
because of journal abort. IOW, even if you use errors=continue, the<br>
operation will fail because the error is too dangerous to continue for<br>
any operation and hence the abort.<br>
<br>
__ocfs2_abort does set OCFS2_MOUNT_ERRORS_PANIC in this case. This is a<br>
critical error and we don't want to continue in any state, even<br>
read-only. From the code comments:<br>
<br>
/* Force a panic(). This stinks, but it's better than letting<br>
* things continue without having a proper hard readonly<br>
* here. */<br>
<br>
<br>
Please execute fsck to get the journal back in shape.<br>
<br>
HTH,<br>
<br>
--<br>
Goldwyn<br>
<br>
<br>
><br>
>> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------!<br>
> ---<br>
>> zhangguanghui<br>
>><br>
>><br>
>> *From:* Joseph Qi <<a href="mailto:joseph.qi@huawei.com">mailto:joseph.qi@huawei.com</a>><br>
>> *Date:* 2015-10-14 16:13<br>
>> *To:* zhangguanghui 10102 (CCPL) <<a href="mailto:zhang.guanghui@h3c.com">mailto:zhang.guanghui@h3c.com</a>><br>
>> *CC:* mfasheh > <<a href="mailto:mfasheh@suse.de">mailto:mfasheh@suse.de</a>>; 'ocfs2-users@oss.oracle.com' (ocfs2-users@oss.oracle.com) <<a href="mailto:ocfs2-users@oss.oracle.com">mailto:ocfs2-users@oss.oracle.com</a>>; ocfs2-devel@oss.oracle.com
<<a href="mailto:ocfs2-devel@oss.oracle.com">mailto:ocfs2-devel@oss.oracle.com</a>>; rgoldwyn <<a href="mailto:rgoldwyn@suse.com">mailto:rgoldwyn@suse.com</a>><br>
>> *Subject:* Re: [Ocfs2-devel] Ocfs2-devel Digest, Vol 138, Issue 31 review<br>
>><br>
>> On 2015/10/14 15:49, Zhangguanghui wrote:<br>
>> > OCFS2 is often used in high-availaibility systems, This patch enhances robustness for the filesystem.<br>
>> > but storage network is unstable,it still triggers a panic, such as ocfs2_start_trans -> __ocfs2_abort ->panic.<br>
>> > The 's_mount_opt' should depend on the mount option set, If errors=continue is set,<br>
>> > mark as a EIO error, change OCFS2_MOUNT_ERRORS_PANIC to OCFS2_MOUNT_ERRORS_CONT in __ocfs2_abort;<br>
>> > it's better than forcing a panic without decreasing availability,errors=continue seems be well to me.<br>
>> ><br>
>> > Finally, any feedback about this process (positive or negative) would be greatly appreciated.<br>
>> ><br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.787906] (pool,23256,12):ocfs2_start_trans:367 ERROR: status = -30<br>
>> ><br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825046] CPU: 12 PID: 23256 Comm: pool Tainted: GF W IO 3.13.6 #1<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825050] Hardware name: HP ProLiant BL460c G7, BIOS I27 12/03/2012<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825054] ffffffffffffffe2 ffff88108c945a88 ffffffff81750690 ffff88180bacfff0<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825064] ffff88174196d000 ffff88108c945ad8 ffffffffa052f667 ffffffffffffffe2<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825072] 0000000000001000 ffff88108c945b58 ffff88175e870000 ffff8811ada4f000<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825087] Call Trace:<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825103] [<ffffffff81750690>] dump_stack+0x46/0x58<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825154] [<ffffffffa052f667>] ocfs2_start_trans+0x1d7/0x200 [ocfs2]<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825183] [<ffffffffa0505b60>] ocfs2_write_begin_nolock+0xda0/0x1c70 [ocfs2]<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825216] [<ffffffffa052b7cb>] ? ocfs2_read_inode_block_full+0x3b/0x60 [ocfs2]<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825248] [<ffffffffa051a82f>] ? ocfs2_inode_lock_full_nested+0x52f/0xc60 [ocfs2]<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825277] [<ffffffffa0516060>] ? ocfs2_should_refresh_lock_res+0x80/0x190 [ocfs2]<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825304] [<ffffffffa0506b36>] ocfs2_write_begin+0x106/0x230 [ocfs2]<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825330] [<ffffffffa05180ab>] ? __ocfs2_cluster_unlock.isra.27+0x9b/0xe0 [ocfs2]<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825342] [<ffffffff8115342b>] generic_file_buffered_write+0xfb/0x280<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825370] [<ffffffffa051a1c5>] ? ocfs2_rw_lock+0x75/0x1b0 [ocfs2]<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825398] [<ffffffffa0527f3f>] ocfs2_file_aio_write+0x79f/0x830 [ocfs2]<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825407] [<ffffffff811c14ba>] do_sync_write+0x5a/0x90<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825413] [<ffffffff811c1fc5>] vfs_write+0xc5/0x1f0<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825418] [<ffffffff811c24c2>] SyS_write+0x52/0xa0<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825426] [<ffffffff8176106d>] system_call_fastpath+0x1a/0x1f<br>
>> > Aug 11 11:32:25 cvknode73 kernel: [678904.825431] OCFS2: abort (device sdu): ocfs2_start_trans: Detected aborted journal<br>
>> ><br>
>> "status = -30" means it has encountered EROFS when start transaction.<br>
>> And system panic is because you mount with option "errors=panic",<br>
>> while default is "errors=remount-ro" rather than panic.<br>
>> Change it to "errors=continue" will proceed even if filesystem<br>
>> encounters errors (default will set it to readonly).<br>
>><br>
>> Thanks,<br>
>> Joseph<br>
>><br>
>> ><br>
>> > ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------!<br>
> ------!<br>
>> ---<br>
>> > zhangguanghui<br>
>><br>
>><br>
>> -------------------------------------------------------------------------------------------------------------------------------------<br>
>> 本邮件及其附件含有杭州华三通信技术有限公司的保密信息,仅限于发送给上面地址中列出<br>
>> 的个人或群组。禁止任何其他人以任何形式使用(包括但不限于全部或部分地泄露、复制、<br>
>> 或散发)本邮件中的信息。如果您错收了本邮件,请您立即电话或邮件通知发件人并删除本<br>
>> 邮件!<br>
>> This e-mail and its attachments contain confidential information from H3C, which is<br>
>> intended only for the person or entity whose address is listed above. Any use of the<br>
>> information contained herein in any way (including, but not limited to, total or partial<br>
>> disclosure, reproduction, or dissemination) by persons other than the intended<br>
>> recipient(s) is prohibited. If you receive this e-mail in error, please notify the sender<br>
>> by phone or email immediately and delete it!<br>
><br>
><br>
><br>
<br>
--<br>
Goldwyn<br>
</font></p>
</div>
</div>
</blockquote>
</body>
</html>