<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
On 2013/6/1 1:09, Srinivas Eeda wrote:
<blockquote cite="mid:51A8D92E.9060002@oracle.com" type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">
<div class="moz-cite-prefix">The reason nodes are fenced during
network failures is because we need to guarantee that no i/o's
are going to happen from this fenced node. If you just change
the fs to read-only we still cannot guarantee that there are no
inflight-io's from this node from previous writes.<br>
<br>
</div>
</blockquote>
I agree it.<br>
set the ocfs2 to read-only, it just prevent io from user space
application. on the kernel cache for example page cache or
currently write maybe write to io the SAN.<br>
<br>
the best way is use the SCSI-3 Persistent Group Reservation to fence
the node.<br>
<br>
<blockquote cite="mid:51A8D92E.9060002@oracle.com" type="cite">
<div class="moz-cite-prefix"> <br>
On 05/31/2013 08:33 AM, Vineeth Thampi wrote:<br>
</div>
<blockquote
cite="mid:CALeRH44B2Am=k3y6hHPWpc3itTSug1EeDBsKAc6tsNCqkjKtFA@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_default" style="font-family:courier
new,monospace;font-size:small">Hi,<br>
<br>
</div>
<div class="gmail_default" style="font-family:courier
new,monospace;font-size:small">I have been working around
the issue of Node fence in case of a heartbeat failure /
Network timeout. I modified o2quo_fence_self() in quorum.c
to make all ocfs2 filesystems RO, when tested it worked like
a charm, and the filesystems were made RO, but I am not able
to umount the filesystem or stop O2CB service.<br>
<br>
</div>
<div class="gmail_default" style="font-family:courier
new,monospace;font-size:small">Is there any way by which I
could ask O2CB to abort heartbeat and treat the filesystem
as LOCAL instead of GLOBAL? <br>
<br>
</div>
<div class="gmail_default" style="font-family:courier
new,monospace;font-size:small">The following is the code
change that I made.<br>
<br>
**************************************************<br>
static void make_fs_RO(struct super_block *sb, void *arg)<br>
{<br>
struct ocfs2_super *osb = OCFS2_SB(sb);<br>
<br>
sb->s_flags |= MS_RDONLY;<br>
ocfs2_set_osb_flag(osb, OCFS2_OSB_ERROR_FS);<br>
ocfs2_set_ro_flag(osb, *(int *)arg);<br>
}<br>
<br>
/* this is horribly heavy-handed. It should instead flip
the file<br>
* system RO and call some userspace script. */<br>
static void o2quo_fence_self(void)<br>
{<br>
<br>
<b>...</b><br>
<br>
case O2NM_FENCE_RESET:<br>
printk(KERN_ERR "*** Hard failure in O2CB,
all ocfs2 "<br>
"filesystems made RO ***\n");<br>
<br>
/* Iterate through all ocfs2 super blocks
and make each of <br>
them RO */<br>
fs_type = get_fs_type("ocfs2");<br>
if (fs_type)<br>
iterate_supers_type(fs_type,
make_fs_RO, &hard_reset);<br>
<br>
break;<br>
<b>...</b><br>
<br>
}<br>
***************************************************************<br>
<br>
<br>
</div>
<div class="gmail_default" style="font-family:courier
new,monospace;font-size:small">The error from kern.log:<br>
<br>
=======================================<br>
May 31 16:08:18 localhost kernel: [ 5434.076126]
(kworker/u:2,577,3):dlm_send_remote_convert_request:395
ERROR: Error -107 when sending message 504 (key 0xcfe4a084)
to node 0<br>
May 31 16:08:18 localhost kernel: [ 5434.076178] o2dlm:
Waiting on the death of node 0 in domain
A4E98618A3744717A65AF04E943D035A<br>
=======================================<br>
<br>
</div>
<div class="gmail_default" style="font-family:courier
new,monospace;font-size:small"> Any pointers would be much
appreciated.<br>
<br>
</div>
<div class="gmail_default" style="font-family:courier
new,monospace;font-size:small">Thanks,<br>
<br>
Vineeth<br>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Ocfs2-users mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:Ocfs2-users@oss.oracle.com">Ocfs2-users@oss.oracle.com</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="https://oss.oracle.com/mailman/listinfo/ocfs2-users">https://oss.oracle.com/mailman/listinfo/ocfs2-users</a></pre>
</blockquote>
<br>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Ocfs2-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Ocfs2-users@oss.oracle.com">Ocfs2-users@oss.oracle.com</a>
<a class="moz-txt-link-freetext" href="https://oss.oracle.com/mailman/listinfo/ocfs2-users">https://oss.oracle.com/mailman/listinfo/ocfs2-users</a></pre>
</blockquote>
<br>
</body>
</html>