Eeda srinivas.e...@oracle.com
Date: Fri Jan 30 12:51:45 2015 -0800
tools: Up version to 1.8.4
Signed-off-by: Srinivas Eeda srinivas.e...@oracle.com
commit 9693851641bfcd0f2bab226e9f03d9ab05cb7edf
Author: piaojun piao...@huawei.com
Date: Sun Feb 15 08:51:45 2015 +0800
In dlm_send_join_cancels(), unsigned int node is assigned -1, this will
lead variable overflow. Although this won't cause any runtime problem,
the code looks a little uncoordinated.
Signed-off-by: Jun Piao
Reviewed-by: Joseph Qi
---
dlm/dlmdomain.c | 3
In dlm_send_join_cancels(), node is defined with type unsigned int, but
initialized with -1, this will lead variable overflow. Although this
won't cause any runtime problem, the code looks a little uncoordinated.
Signed-off-by: Jun Piao
---
dlm/dlmdomain.c | 2 +-
1 file
On 2016/3/14 20:21, Joseph Qi wrote:
> On 2016/3/14 19:57, piaojun wrote:
>> In dlm_send_join_cancels(), unsigned int node is assigned -1, this will
>> lead variable overflow. Although this won't cause any runtime problem,
>> the code looks a little uncoordinated.
>>
Clean up an unused variable 'wants_rotate' in ocfs2_truncate_rec.
Signed-off-by: Jun Piao
---
alloc.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/alloc.c b/alloc.c
index d002579..2b8b721 100644
--- a/alloc.c
+++ b/alloc.c
@@ -5334,7 +5334,7 @@
el, index);
- wants_rotate = 1;
next_free = le16_to_cpu(el->l_next_free_rec);
if (is_rightmost_tree_rec && next_free > 1) {
--
1.8.4.3
On 2016/3/26 3:36, Andrew Morton wrote:
> On Thu, 17 Mar 2016 17:11:27 +0800 piaojun <piao...@huaw
clean up unused parameter 'count' in o2hb_read_block_input().
Signed-off-by: Jun Piao
---
fs/ocfs2/cluster/heartbeat.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/fs/ocfs2/cluster/heartbeat.c b/fs/ocfs2/cluster/heartbeat.c
index bd15929..a5956c4
Hello Mark,
On 2016-7-29 6:12, Mark Fasheh wrote:
> On Thu, Jul 28, 2016 at 02:06:05PM -0700, Andrew Morton wrote:
>> From: piaojun <piao...@huawei.com>
>> Subject: ocfs2/dlm: solve a BUG when deref failed in dlm_drop_lockres_ref
>>
>> We found a BUG situatio
We found a dlm-blocked situation caused by continuous breakdown of
recovery masters described below. To solve this problem, we should purge
recovery lock once detecting recovery master goes down.
N3 N2 N1(reco master)
go down
We found a BUG situation in which DLM_LOCK_RES_DROPPING_REF is cleared
unexpected that described below. To solve the bug, we disable the BUG_ON
and purge lockres in dlm_do_local_recovery_cleanup.
Node 1 Node 2(master)
dlm_purge_lockres
We found a dlm-blocked situation caused by continuous breakdown of
recovery masters described below. To solve this problem, we should purge
recovery lock once detecting recovery master goes down.
N3 N2 N1(reco master)
go down
We found a BUG situation that lockres is migrated during deref
described below. To solve the BUG, we could purge lockres directly when
other node says I did not have a ref. Additionally, we'd better purge
lockres if master goes down, as no one will response deref done.
Node 1
On 2016-7-11 10:07, Joseph Qi wrote:
> On 2016/7/10 18:03, piaojun wrote:
>> We found a BUG situation that lockres is migrated during deref
>> described below. To solve the BUG, we could purge lockres directly when
>> other node says I did not have a ref. Additional
On 2016-7-11 9:55, Joseph Qi wrote:
> Hi Jun,
>
> On 2016/7/10 18:01, piaojun wrote:
>> We found a BUG situation in which DLM_LOCK_RES_DROPPING_REF is cleared
>> unexpected that described below. To solve the bug, we disable the BUG_ON
>> and purge lockres in dl
Hi Eric,
On 2016-11-1 9:45, Eric Ren wrote:
> Hi,
>
> On 10/31/2016 06:55 PM, piaojun wrote:
>> Hi Eric,
>>
>> On 2016-10-19 13:19, Eric Ren wrote:
>>> The deadlock issue happens when running discontiguous block
>>> group testing on multiple nodes. Th
Hi Eric,
On 2016-11-11 9:56, Eric Ren wrote:
> Hi,
>
> On 11/10/2016 06:49 PM, piaojun wrote:
>> Hi Eric,
>>
>> On 2016-11-1 9:45, Eric Ren wrote:
>>> Hi,
>>>
>>> On 10/31/2016 06:55 PM, piaojun wrote:
>>>> Hi Eric,
>>>&
Hi Eric,
On 2016-10-19 13:19, Eric Ren wrote:
> The deadlock issue happens when running discontiguous block
> group testing on multiple nodes. The easier way to reproduce
> is to do "chmod -R 777 /mnt/ocfs2" things like this on multiple
> nodes at the same time by pssh.
>
> This is indeed
when 'dispatch_assert' is set, 'response' must be DLM_MASTER_RESP_YES,
and 'res' won't be null, so execution can't reach these two branch.
Signed-off-by: Jun Piao
---
fs/ocfs2/dlm/dlmmaster.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/fs/ocfs2/dlm/dlmmaster.c
The value of 'stage' must be between 1 and 2, so the switch can't reach
the default case.
Signed-off-by: Jun Piao
---
fs/ocfs2/dlm/dlmrecovery.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/fs/ocfs2/dlm/dlmrecovery.c b/fs/ocfs2/dlm/dlmrecovery.c
index
On 2017/1/5 15:44, Gechangwei wrote:
> On 2017/1/5 15:28, gechangwei 12382 (Cloud) wrote:
>
> Hi Jun,
> I suppose that a defect hid your patch.
>
>
>> We found a dlm-blocked situation caused by continuous breakdown of recovery
>> masters described below. To solve this problem, we should
clean up some unused functions and parameters.
Signed-off-by: Jun Piao
Reviewed-by: Alex Chen
---
fs/ocfs2/alloc.c | 22 --
fs/ocfs2/alloc.h | 3 +--
fs/ocfs2/cluster/heartbeat.c | 42
'sd->dbg_sock' is malloc in sc_common_open(), but not freed at the end
of sc_fop_release().
Signed-off-by: Jun Piao
---
fs/ocfs2/cluster/netdebug.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/fs/ocfs2/cluster/netdebug.c b/fs/ocfs2/cluster/netdebug.c
index
when traversing regular file's inode with xattr btree in
traverse_inode(), we will get into traverse_chains() rather than
traverse_xb(). so xattr tree is not back-up actually.
Signed-off-by: Jun Piao
---
o2image/o2image.c | 18 ++
1 file changed, 10
Signed-off-by: Jun Piao
Reviewed-by: Alex Chen
---
fs/ocfs2/buffer_head_io.h| 3 ---
fs/ocfs2/cluster/heartbeat.h | 2 --
2 files changed, 5 deletions(-)
diff --git a/fs/ocfs2/buffer_head_io.h b/fs/ocfs2/buffer_head_io.h
index b97bcc6..b1bb70c
'dlm->tracking_list' need to be protected by 'dlm->track_lock'.
Signed-off-by: Jun Piao
Reviewed-by: Alex Chen
---
fs/ocfs2/dlm/dlmdomain.c | 7 ++-
fs/ocfs2/dlm/dlmmaster.c | 4 ++--
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git
Signed-off-by: Jun Piao
---
fs/ocfs2/alloc.c | 2 --
fs/ocfs2/cluster/heartbeat.h | 2 --
2 files changed, 4 deletions(-)
diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c
index a177eae..31a416d 100644
--- a/fs/ocfs2/alloc.c
+++ b/fs/ocfs2/alloc.c
@@ -3585,8
destroy_workqueue() will do flushing work for us.
Signed-off-by: Jun Piao
---
fs/ocfs2/dlm/dlmdomain.c | 1 -
fs/ocfs2/dlmfs/dlmfs.c | 1 -
fs/ocfs2/super.c | 4 +---
3 files changed, 1 insertion(+), 5 deletions(-)
diff --git a/fs/ocfs2/dlm/dlmdomain.c
On 2017/9/27 9:32, Joseph Qi wrote:
>
>
> On 17/9/26 08:39, piaojun wrote:
>>
>>
>> On 2017/9/25 18:35, Joseph Qi wrote:
>>>
>>>
>>> On 17/9/23 11:39, piaojun wrote:
>>>> 'dlm->tracking_list' need to be protected by 'dl
On 2017/9/25 18:35, Joseph Qi wrote:
>
>
> On 17/9/23 11:39, piaojun wrote:
>> 'dlm->tracking_list' need to be protected by 'dlm->track_lock'.
>>
>> Signed-off-by: Jun Piao <piao...@huawei.com>
>> Reviewed-by: Alex Chen <alex.c...@hua
1. delete redundant flush_workqueue();
2. delete some unused func declaration and assignment.
Signed-off-by: Jun Piao
---
fs/ocfs2/alloc.c | 2 --
fs/ocfs2/cluster/heartbeat.h | 2 --
fs/ocfs2/dlm/dlmdomain.c | 1 -
fs/ocfs2/dlmfs/dlmfs.c | 1 -
On 2017/10/17 14:48, Changwei Ge wrote:
> When a node dies, other live nodes have to choose a new master
> for an existed lock resource mastered by the dead node.
>
> As for ocfs2/dlm implementation, this is done by function -
> dlm_move_lockres_to_recovery_list which marks those lock rsources
Hi Changwei,
Could you share the method to reproduce the problem?
On 2017/10/17 14:48, Changwei Ge wrote:
> When a node dies, other live nodes have to choose a new master
> for an existed lock resource mastered by the dead node.
>
> As for ocfs2/dlm implementation, this is done by function -
>
On 2017/11/29 16:36, Gang He wrote:
> Add ocfs2_try_rw_lock and ocfs2_try_inode_lock functions, which
> will be used in non-block IO scenarios.
>
> Signed-off-by: Gang He
Reviewed-by: Jun Piao
> ---
> fs/ocfs2/dlmglue.c | 21 +
>
Hi Gang,
On 2017/11/27 17:46, Gang He wrote:
> Add ocfs2_try_rw_lock and ocfs2_try_inode_lock functions, which
> will be used in non-block IO scenarios.
>
> Signed-off-by: Gang He
> ---
> fs/ocfs2/dlmglue.c | 22 ++
> fs/ocfs2/dlmglue.h | 4
> 2 files
Hi Gang,
If ocfs2_overwrite_io is only called in 'nowait' scenarios, I wonder if
we can discard 'int wait' just as ext4 does:
static bool ext4_overwrite_io(struct inode *inode, loff_t pos, loff_t len);
thans,
Jun
On 2017/11/27 17:46, Gang He wrote:
> Add ocfs2_overwrite_io function, which is
Hi Changwei,
On 2017/12/19 11:05, Changwei Ge wrote:
> Hi Jun,
>
> On 2017/12/19 9:48, piaojun wrote:
>> Hi Changwei,
>>
>> On 2017/12/18 20:06, Changwei Ge wrote:
>>> Before ocfs2 supporting allocating clusters while doing append-dio, all
>>&g
Hi Changwei,
On 2017/12/18 20:06, Changwei Ge wrote:
> Before ocfs2 supporting allocating clusters while doing append-dio, all append
> dio will fall back to buffer io to allocate clusters firstly. Also, when it
> steps on a file hole, it will fall back to buffer io, too. But for current
> code,
Hi John,
On 2017/11/21 8:58, Changwei Ge wrote:
> Hi John,
> It's better to paste your patch directly into message body. It's easy
> for reviewing.
>
> So I copied your patch below:
>
>> The dw_zero_count tracking was assuming that w_unwritten_list would
>> always contain one element. The
wait for dlm recovery done when migrating all lockres in case of new
lockres to be left after leaving dlm domain.
NodeA NodeBNodeC
umount and migrate
all lockres
node down
do recovery for NodeB
and collect a new
Hi Changwei,
thanks for reviewing, and I think waiting for recoverying done before
migrating seems another solution, but I wonder if new problems will be
invoked as following comments.
thanks,
Jun
On 2017/11/1 15:13, Changwei Ge wrote:
> Hi Jun,
>
> I probably get your point.
>
> You mean
se we can do it in a flexible way.
>
> Thanks,
> Changwei
>
>
> On 2017/11/1 15:57, piaojun wrote:
>> Hi Changwei,
>>
>> thanks for reviewing, and I think waiting for recoverying done before
>> migrating seems another solution, but I wonder if new problems will be
&
wrote:
> Hi Jun,
>
> On 2017/11/1 16:46, piaojun wrote:
>> Hi Changwei,
>>
>> I do think we need follow the principle that use 'dlm_domain_lock' to
>> protect 'dlm_state' as the NOTE says in 'dlm_ctxt':
>> /* NOTE: Next three are protected by dlm_domain_lock
grating, I just let another node to do
recovery.
thanks,
Jun
On 2017/11/2 9:56, Changwei Ge wrote:
> On 2017/11/2 9:44, piaojun wrote:
>> Hi Changwei,
>>
>> I had tried a solution like yours before, but failed to prevent the
>> race just by 'dlm_state' and the existed
Hi,
I failed to send mail to ocfs2-devel@oss.oracle.com, who kowns
the reason.
thanks,
Jun
To: piao...@huawei.com
This message is from the Forcepoint email protection system, TRITON AP-EMAIL at
host huawei.com.
The attached email could not be delivered to one or more recipients.
For
Hi Gang,
thanks for replying, and perhaps there is something wrong just now.
I will send patch again.
thanks,
Jun
On 2017/11/3 10:35, Gang He wrote:
> We can got this mail.
>
> Thanks
> Gang
>
>
>> Hi,
>>
>> I failed to send mail to ocfs2-devel@oss.oracle.com, who kowns
>> the reason.
wait for dlm recovery done when migrating all lockres in case of new
lockres to be left after leaving dlm domain.
NodeA NodeBNodeC
umount and migrate
all lockres
node down
do recovery for NodeB
and collect a new
Hi Changwei,
On 2017/12/8 17:09, Changwei Ge wrote:
> On 2017/12/7 20:37, piaojun wrote:
>> Hi Changwei,
>>
>> On 2017/12/7 19:59, Changwei Ge wrote:
>>> Hi Jun,
>>>
>>> On 2017/12/7 19:30, piaojun wrote:
>>>
CPUA CPUB
ocfs2_dentry_convert_worker
get 'l_lock'
get 'dentry_attach_lock'
interruptted by dio_end_io:
dio_end_io
Hi Changwei,
On 2017/12/7 19:59, Changwei Ge wrote:
> Hi Jun,
>
> On 2017/12/7 19:30, piaojun wrote:
>> CPUA CPUB
>>
>> ocfs2_dentry_convert_worker
>> get 'l_lock'
>
> This lock belongs to oc
Hi Changwei,
On 2017/11/1 10:47, Changwei Ge wrote:
> Hi Jun,
>
> Thanks for reporting.
> I am very interesting in this issue. But, first of all, I want to make
> this issue clear, so that I might be able to provide some comments.
>
>
> On 2017/11/1 9:16, piaoju
Hi Larry,
'had_lock' will be initialized by ocfs2_inode_lock_tracker(), and the
'bail' branch above won't use it either as 'inode_locked' is still zero.
thanks,
Jun
On 2018/5/6 17:49, Larry Chen wrote:
> The variable had_lock might be used uninitialized.
>
> Signed-off-by: Larry Chen
::bi_max_vecs or it's a cloned bio.
>
>
> So we can judge if bio is full from its return value is zero or not.
>
>
> Thanks,
>
> Changwei
>
>
> On 2018/5/10 9:13, Changwei Ge wrote:
>>
>>
>> On 2018/5/10 8:24, piaojun wrote:
>>>
>&g
Hi Changwei,
On 2018/5/8 23:57, Changwei Ge wrote:
> Hi Jun,
>
> Sorry for this so late reply since I was very busy those days.
>
>
> On 04/16/2018 11:44 AM, piaojun wrote:
>> Hi Changwei,
>>
>> Do you mean that if the slotnum exceed 16 like 'mkfs.ocfs2 -
Hi Changwei,
On 2018/4/13 13:51, Changwei Ge wrote:
> If cluster scale exceeds 16 nodes, bio will be full and bio_add_page()
> returns 0 when adding pages to bio. Returning -EIO to o2hb_read_slots()
> from o2hb_setup_one_bio() will lead to losing chance to allocate more
> bios to present all
Hi Changwei,
I understand your fix already, but I'm still confused by the comments
"If cluster scale exceeds 16 nodes, ...".
Do you mean that this problem will happen if nodes' count exceeds 16.
thanks,
Jun
On 2018/5/9 17:06, Changwei Ge wrote:
> Hi Jun,
>
>
> On 2018/5/
On 2018/5/9 20:01, Changwei Ge wrote:
> Hi Jun,
>
>
> On 2018/5/9 18:08, piaojun wrote:
>> Hi Changwei,
>>
>> On 2018/4/13 13:51, Changwei Ge wrote:
>>> If cluster scale exceeds 16 nodes, bio will be full and bio_add_page()
>>> re
We need catch the errno returned by ocfs2_xattr_get_nolock() and assign
it to 'ret' for printing and noticing upper callers.
Signed-off-by: Jun Piao
Reviewed-by: Alex Chen
Reviewed-by: Yiwen Jiang
---
fs/ocfs2/xattr.c | 1 +
1
Hi Cédric,
You'd better paste the core dump stack and the method of reproducing
this BUG.
thanks,
Jun
On 2018/1/10 19:48, BASSAGET Cédric wrote:
> Hello
> Today I reported a bug related to ocfs2 1.8.on proxmox forum, maybe somebody
> here will be able to help me...
> The bog on proxmox forum :
The race between *set_acl and *get_acl will cause getting incomplete
xattr data as below:
processAprocessB
ocfs2_set_acl
ocfs2_xattr_set
__ocfs2_xattr_set_handle
ocfs2_get_acl_nolock
Hi Changwei,
On 2018/1/19 13:42, Changwei Ge wrote:
> Hi Jun,
>
> On 2018/1/19 11:59, piaojun wrote:
>> Hi Changwei,
>>
>> On 2018/1/19 11:38, Changwei Ge wrote:
>>> Hi Jun,
>>>
>>> On 2018/1/19 11:17, piaojun wrote:
>>>> Hi
Hi Changwei,
On 2018/1/26 9:00, Changwei Ge wrote:
> Hi Jun,
> Good morning:-)
>
> On 2018/1/25 20:45, piaojun wrote:
>> Hi Changwei,
>>
>> On 2018/1/25 20:30, Changwei Ge wrote:
>>> Hi Jun,
>>>
>>> On 2018/1/25 20:18, piaojun wrote:
&g
Hi Gang,
On 2018/1/26 10:16, Gang He wrote:
> Hi Jun,
>
>
>> Hi Gang,
>>
>> Filesystem won't become readonly and journal remains normal,
> How does the user aware this kind of issue happen? watch the kernel message?
> but some users do not like watch the kernel message except
> there
Hi Changwei,
LGTM
On 2018/1/16 20:17, Changwei Ge wrote:
> Some stack variables are no longer used but still assigned.
> Trim them.
>
> Signed-off-by: Changwei Ge
Reviewed-by: Jun Piao
> ---
> fs/ocfs2/alloc.c | 11 ++-
> 1 file changed, 2
We should not reuse the dirty bh in jbd2 directly due to the following
situation:
1. When removing extent rec, we will dirty the bhs of extent rec and
truncate log at the same time, and hand them over to jbd2.
2. The bhs are not flushed to disk due to abnormal storage link.
3. After a while
Hi Gang,
Filesystem won't become readonly and journal remains normal, so this
problem needs user umount and mount again to recover. And I'm thinking
about if we should set readonly to notice user.
thanks,
Jun
On 2018/1/25 16:40, Gang He wrote:
> Hi Jun,
>
> If we return -EIO here, what is the
Hi Changwei,
On 2018/1/25 19:59, Changwei Ge wrote:
> Hi Jun,
>
> On 2018/1/25 10:41, piaojun wrote:
>> We should not reuse the dirty bh in jbd2 directly due to the following
>> situation:
>>
>> 1. When removing extent rec, we will dirty the bhs of extent rec and
Hi Changwei,
On 2018/1/25 20:30, Changwei Ge wrote:
> Hi Jun,
>
> On 2018/1/25 20:18, piaojun wrote:
>> Hi Changwei,
>>
>> On 2018/1/25 19:59, Changwei Ge wrote:
>>> Hi Jun,
>>>
>>> On 2018/1/25 10:41, piaojun wrote:
>>>> We s
LGTM
On 2018/1/25 9:18, Changwei Ge wrote:
> We should unlock bh_stat if bg->bg_free_bits_count > bg->bg_bits
>
> Suggested-by: Jan Kara
> Signed-off-by: Changwei Ge
Reviewed-by: Jun Piao
> ---
> fs/ocfs2/suballoc.c | 2 ++
> 1 file
Hi Guozhonghua,
It seems that deadlock could be reproduced easily, right? Sharing the
lock with VFS-layer probably is risky, and introducing a new lock for
"quota_recovery" sounds good. Could you post a patch to fix this
problem?
thanks,
Jun
On 2018/1/13 11:04, Guozhonghua wrote:
>
>> Message:
Hi Changwei,
Thanks for quick repling, Gang and I are thinking about how to notice
user to recover this problem, and later I will post patch v2.
thanks
Jun
On 2018/1/27 13:17, Changwei Ge wrote:
> Hi Jun,
>
> On 2018/1/27 11:52, piaojun wrote:
>> Hi Jan and Changwei,
>>
We should not reuse the dirty bh in jbd2 directly due to the following
situation:
1. When removing extent rec, we will dirty the bhs of extent rec and
truncate log at the same time, and hand them over to jbd2.
2. The bhs are submitted to jbd2 area successfully.
3. The write-back thread of
ocfs2 should handle this problem.
thanks,
Jun
On 2018/1/26 10:03, Changwei Ge wrote:
> On 2018/1/26 9:45, piaojun wrote:
>> Hi Changwei,
>>
>> On 2018/1/26 9:00, Changwei Ge wrote:
>>> Hi Jun,
>>> Good morning:-)
>>>
>>> On 2018/1/25 20:45, piao
Hi Changwei,
On 2018/1/27 19:19, Changwei Ge wrote:
> Hi Jun,
>
> On 2018/1/27 16:28, piaojun wrote:
>> We should not reuse the dirty bh in jbd2 directly due to the following
>> situation:
>>
>> 1. When removing extent rec, we will dirty the bhs of extent rec an
We should not reuse the dirty bh in jbd2 directly due to the following
situation:
1. When removing extent rec, we will dirty the bhs of extent rec and
truncate log at the same time, and hand them over to jbd2.
2. The bhs are submitted to jbd2 area successfully.
3. The write-back thread of
We could use 'oi' instead of 'OCFS2_I()' to make code more elegant.
Signed-off-by: Jun Piao
Reviewed-by: Yiwen Jiang
---
fs/ocfs2/alloc.c| 2 +-
fs/ocfs2/aops.c | 2 +-
fs/ocfs2/file.c | 6 +++---
fs/ocfs2/inode.c| 2 +-
We could use 'osb' instead of 'OCFS2_SB()' to make code more elegant.
Signed-off-by: Jun Piao
Reviewed-by: Yiwen Jiang
---
fs/ocfs2/aops.c | 2 +-
fs/ocfs2/dir.c | 2 +-
fs/ocfs2/dlmglue.c | 21 -
Clean up some unused function declaration in dlmcommon.h
Signed-off-by: Jun Piao
Reviewed-by: Yiwen Jiang
---
fs/ocfs2/dlm/dlmcommon.h | 3 ---
1 file changed, 3 deletions(-)
diff --git a/fs/ocfs2/dlm/dlmcommon.h b/fs/ocfs2/dlm/dlmcommon.h
index
Hi Andrew,
Could you help reviewing my patch set and applying?
Thanks a lot,
Jun
On 2018/1/30 15:38, piaojun wrote:
> We could use 'oi' instead of 'OCFS2_I()' to make code more elegant.
>
> Signed-off-by: Jun Piao <piao...@huawei.com>
> Reviewed-by: Yiwen Jiang <
Hi Changwei,
On 2018/2/23 17:55, Changwei Ge wrote:
> Hi Jun,
>
> On 2018/2/23 17:13, piaojun wrote:
>> Hi changwei,
>>
>> On 2018/2/23 15:30, ge.chang...@h3c.com wrote:
>>> From: Changwei Ge <ge.chang...@h3c.com>
>> This line seems unnecessary,
Hi changwei,
On 2018/2/23 15:30, ge.chang...@h3c.com wrote:
> From: Changwei Ge
This line seems unnecessary, others looks good to me.
thanks,
Jun
>
> Obviously, the comment before dlm_do_local_recovery_cleanup() has
> nothing to do with it. So remove it.
>
>
If metadata is corrupted such as 'invalid inode block', we will get
failed by calling 'mount()' as below:
ocfs2_mount
ocfs2_initialize_super
ocfs2_init_global_system_inodes : return -EINVAL if inode is NULL
ocfs2_get_system_file_inode
_ocfs2_get_system_file_inode : return NULL
Hi Gang,
Just like the dumped stack below, ocfs2_validate_inode_block() will
find out 'invalid inode' and then return error to upper callers. At
last invoke failure of ocfs2_get_system_file_inode().
thanks,
Jun
On 2017/12/26 10:22, Gang He wrote:
> Hi Piaojun,
>
> Just one quick
t; will come?
> This patch is a bug fix or something else?
> Can you elaborate your intention of this patch?
>
> Thanks,
> Changwei
>
> On 2017/12/26 10:14, piaojun wrote:
>> If metadata is corrupted such as 'invalid inode block', we will get
>> failed by
Hi Joseph,
On 2017/12/26 11:05, Joseph Qi wrote:
>
>
> On 17/12/26 10:11, piaojun wrote:
>> If metadata is corrupted such as 'invalid inode block', we will get
>> failed by calling 'mount()' as below:
>>
>> ocfs2_mount
>> ocfs2_initialize_super
>>
Hi Joseph,
On 2017/12/26 14:59, Joseph Qi wrote:
>
>
> On 17/12/26 14:45, piaojun wrote:
>> Hi Joseph,
>>
>> On 2017/12/26 14:10, Joseph Qi wrote:
>>>
>>>
>>> On 17/12/26 13:35, piaojun wrote:
>>>> Hi Joseph,
>>>>
On 2017/12/26 16:19, alex chen wrote:
> Hi Changwei,
>
> On 2017/12/26 15:03, Changwei Ge wrote:
>> The intention of this patch is to provide an option to ocfs2 users whether
>> to allocate disk space while doing dio write.
>>
>> Whether to make ocfs2 fall back to buffer io is up to ocfs2 users
Hi Joseph,
On 2017/12/26 14:10, Joseph Qi wrote:
>
>
> On 17/12/26 13:35, piaojun wrote:
>> Hi Joseph,
>>
>> On 2017/12/26 11:05, Joseph Qi wrote:
>>>
>>>
>>> On 17/12/26 10:11, piaojun wrote:
>>>> If metadata is corrupted such a
LGTM
On 2017/12/28 15:48, Gang He wrote:
> If we can't get inode lock immediately in the function
> ocfs2_inode_lock_with_page() when reading a page, we should not
> return directly here, since this will lead to a softlockup problem
> when the kernel is configured with CONFIG_PREEMPT is not set.
If metadata is corrupted such as 'invalid inode block', we will get
failed by calling 'mount()' and then set filesystem readonly as below:
ocfs2_mount
ocfs2_initialize_super
ocfs2_init_global_system_inodes
ocfs2_iget
ocfs2_read_locked_inode
ocfs2_validate_inode_block
Hi Changwei,
On 2017/12/26 19:18, Changwei Ge wrote:
> Hi Jun,
>
> On 2017/12/26 19:10, piaojun wrote:
>> If metadata is corrupted such as 'invalid inode block', we will get
>> failed by calling 'mount()' and then set filesystem readonly as below:
>>
>> ocfs2_m
If metadata is corrupted such as 'invalid inode block', we will get
failed by calling 'mount()' and then set filesystem readonly as below:
ocfs2_mount
ocfs2_initialize_super
ocfs2_init_global_system_inodes
ocfs2_iget
ocfs2_read_locked_inode
ocfs2_validate_inode_block
Hi Changwei,
On 2017/12/26 15:55, Changwei Ge wrote:
> A crash issue was reported by John.
> The call trace follows:
> ocfs2_split_extent+0x1ad3/0x1b40 [ocfs2]
> ocfs2_change_extent_flag+0x33a/0x470 [ocfs2]
> ocfs2_mark_extent_written+0x172/0x220 [ocfs2]
> ocfs2_dio_end_io+0x62d/0x910 [ocfs2]
>
Hi Gang,
Do you mean that too many retrys in loop cast losts of CPU-time and
block page-fault interrupt? We should not add any delay in
ocfs2_fault(), right? And I still feel a little confused why your
method can solve this problem.
thanks,
Jun
On 2017/12/27 17:29, Gang He wrote:
> If we can't
Hi Gang,
Thanks for your explaination, and I just have one more question. Could
we use 'ocfs2_inode_lock' instead of 'ocfs2_inode_lock_full' to avoid
-EAGAIN circularly?
thanks,
Jun
On 2017/12/27 18:37, Gang He wrote:
> Hi Jun,
>
>
>> Hi Gang,
>>
>> Do you mean that too many retrys in
Hi Gang,
You cleared my doubt. Should we handle the errno of ocfs2_inode_lock()
or just use mlog_errno()?
thanks,
Jun
On 2017/12/28 10:11, Gang He wrote:
> Hi Jun,
>
>
>> Hi Gang,
>>
>> Thanks for your explaination, and I just have one more question. Could
>> we use 'ocfs2_inode_lock'
Hi Gang,
This patch looks good to me.
thanks,
Jun
On 2017/12/28 10:58, Gang He wrote:
>
>
>
>> Hi Gang,
>>
>> You cleared my doubt. Should we handle the errno of ocfs2_inode_lock()
>> or just use mlog_errno()?
> Hi Jun, I think it is not necessary, since we just want to hold a while
>
Hi Jan, Eric and Changwei,
Could we use another mutex lock to protect quota recovery? Sharing the
lock with VFS-layer probably seems a little weird.
On 2018/1/19 9:48, Changwei Ge wrote:
> Hi Jan,
>
> On 2018/1/18 0:03, Jan Kara wrote:
>> On Wed 17-01-18 16:21:35, Jan Kara wrote:
>>> Hello,
>>>
Hi Changwei,
On 2018/1/19 11:38, Changwei Ge wrote:
> Hi Jun,
>
> On 2018/1/19 11:17, piaojun wrote:
>> Hi Jan, Eric and Changwei,
>>
>> Could we use another mutex lock to protect quota recovery? Sharing the
>> lock with VFS-layer probably seems a little weir
We should not handle migrate lockres if we are already in
'DLM_CTXT_IN_SHUTDOWN', as that will cause lockres remains after
leaving dlm domain. At last other nodes will get stuck into infinite
loop when requsting lock from us.
N1 N2 (owner)
Hi Larry,
There is the same mistake in ocfs2_reflink_inodes_lock(), could you help
fixing them all?
thanks,
Jun
On 2018/2/28 18:17, Larry Chen wrote:
> The function ocfs2_double_lock tries to lock the inode with lower
> blockid first, not lockid.
>
> Signed-off-by: Larry Chen
1 - 100 of 125 matches
Mail list logo