[PATCH] ocfs2: fix potential soft lockup during fstrim

2020-09-26 Thread Gang He
upper applications more IO opportunities, these applications are not blocked for too long at writing files. Signed-off-by: Gang He --- fs/ocfs2/alloc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c index 4c1b90442d6f..2cf9321919b5 100644

[PATCH] ocfs2: fix remounting needed after setfacl command

2020-07-16 Thread Gang He
ile: ocfs2/ivan owner: root group: root user::rw- group::r-- mask::r-- other::r-- The latest acl record("u:ivan:rw") cannot be returned via getfacl command until remounting. Signed-off-by: Gang He --- fs/ocfs2/acl.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/ocfs2/acl

RE: [PATCH] ocfs2: mount shared volume without ha stack

2020-04-28 Thread Gang He
Hello Joseph, Thank for your taking the time to review the patch. Please see my comments inline. > -Original Message- > From: Joseph Qi [mailto:joseph...@linux.alibaba.com] > Sent: 2020年4月27日 17:48 > To: Gang He ; m...@fasheh.com; jl...@evilplan.org > Cc: linux-kernel@

Re: [Ocfs2-devel] mmotm 2019-06-11-16-59 uploaded (ocfs2)

2019-06-13 Thread Gang He
Hello Randy and Andrew, >>> On 6/13/2019 at 9:18 am, in message <20190612181813.48ad05832e05f767e7116...@linux-foundation.org>, Andrew Morton wrote: > On Wed, 12 Jun 2019 07:15:30 -0700 Randy Dunlap wrote: > >> On 6/11/19 4:59 PM, a...@linux-foundation.org wrote: >> > The mm-of-the-moment snap

Re: [PATCH V4 3/3] ocfs2: add first lock wait time in locking_state

2019-06-12 Thread Gang He
Hello Joseph, >>> On 6/12/2019 at 3:03 pm, in message , Joseph Qi wrote: > Hi Gang, > > On 19/6/11 09:54, Gang He wrote: >> ocfs2 file system uses locking_state file under debugfs to dump >> each ocfs2 file system's dlm lock resources, but the users eve

[PATCH V4 1/3] ocfs2: add last unlock times in locking_state

2019-06-10 Thread Gang He
k resource record. Compared with v1, the main change is to use wall time in microsecond for last pr/ex unlock time. Signed-off-by: Gang He Reviewed-by: Joseph Qi --- fs/ocfs2/dlmglue.c | 18 +++--- fs/ocfs2/ocfs2.h | 1 + 2 files changed, 16 insertions(+), 3 deletions(-) diff

[PATCH V4 2/3] ocfs2: add locking filter debugfs file

2019-06-10 Thread Gang He
, ocfs2_dlm_init_debug() returns directly with error when creating locking filter debugfs file is failed, since ocfs2_dlm_shutdown_debug() will handle this failure perfectly. Compared with v1, the main change is to add CONFIG_OCFS2_FS_STATS macro definition judgment. Signed-off-by: Gang He Reviewed-by: Joseph Qi

[PATCH V4 3/3] ocfs2: add first lock wait time in locking_state

2019-06-10 Thread Gang He
tect these deadlock problems via comparing the first lock wait time with the current time. Signed-off-by: Gang He --- fs/ocfs2/dlmglue.c | 32 +--- fs/ocfs2/ocfs2.h | 1 + 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/fs/ocfs2/dlmglue.c b/fs/ocfs2

Re: [Ocfs2-devel] [PATCH 1/2] ocfs2: add last unlock times in locking_state

2019-05-29 Thread Gang He
Hi Wengang, >>> On 2019/5/29 at 1:22, in message <66083663-1d25-437b-ce98-07d200f44...@oracle.com>, Wengang wrote: > Hi Gang, > > This idea sounds cool! > Some comments in lines: > > On 05/23/2019 03:40 AM, Gang He wrote: >> ocfs2 file system uses l

Re: [Ocfs2-devel] [PATCH V3 2/2] ocfs2: add locking filter debugfs file

2019-05-26 Thread Gang He
new last access time field too. > > thanks, > wengang > > On 2019/5/23 19:15, Gang He wrote: >> Hello Wengang, >> >> This patch is used to add a filter attribute(the default value is 0), the > kernel module can use this attribute value to filter the lock r

Re: [Ocfs2-devel] [PATCH V3 2/2] ocfs2: add locking filter debugfs file

2019-05-23 Thread Gang He
example of outputs before patch VS that after patch? > I think that would directly show what the patch does. > > thanks, > wengang > > On 05/23/2019 03:40 AM, Gang He wrote: >> Add locking filter debugfs file, which is used to filter lock >> resources dump from loc

[PATCH V3 2/2] ocfs2: add locking filter debugfs file

2019-05-23 Thread Gang He
. Compared with v1, the main change is to add CONFIG_OCFS2_FS_STATS macro definition judgment. Signed-off-by: Gang He Reviewed-by: Joseph Qi --- fs/ocfs2/dlmglue.c | 36 fs/ocfs2/ocfs2.h | 2 ++ 2 files changed, 38 insertions(+) diff --git a/fs/ocfs2/dlmglue.c

[PATCH 1/2] ocfs2: add last unlock times in locking_state

2019-05-23 Thread Gang He
k resource record. Signed-off-by: Gang He Reviewed-by: Joseph Qi --- fs/ocfs2/dlmglue.c | 21 + fs/ocfs2/ocfs2.h | 1 + 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/fs/ocfs2/dlmglue.c b/fs/ocfs2/dlmglue.c index af405586c5b1..dccf4136f8c1 100644 ---

Re: [Ocfs2-devel] [PATCH] ocfs2: fix the application IO timeout when fstrim is running

2019-01-15 Thread Gang He
Hello ChangWei, >>> On 2019/1/15 at 16:00, in message <63adc13fd55d6546b7dece290d39e3730127826...@h3cmlb12-ex.srv.huawei-3com.com>, Changwei Ge wrote: > On 2019/1/15 13:49, Gang He wrote: >> Hello Changewei, >> >>>>> On 2019/1/15 at 11:50, in messag

Re: [Ocfs2-devel] [PATCH] ocfs2: fix the application IO timeout when fstrim is running

2019-01-14 Thread Gang He
Hello Changewei, >>> On 2019/1/15 at 11:50, in message <63adc13fd55d6546b7dece290d39e3730127825...@h3cmlb12-ex.srv.huawei-3com.com>, Changwei Ge wrote: > Hi Gang, > > Most parts of this patch look sane to me, just a tiny question... > > On 2019/1/11 17:01, Gang

[PATCH] ocfs2: fix the application IO timeout when fstrim is running

2019-01-11 Thread Gang He
meta-file. Signed-off-by: Gang He --- fs/ocfs2/alloc.c | 159 + fs/ocfs2/dlmglue.c | 5 ++ fs/ocfs2/ocfs2.h | 1 + fs/ocfs2/ocfs2_trace.h | 2 + fs/ocfs2/super.c | 2 + 5 files changed, 106 insertions(+), 63 deletions(-) diff

Re: [Ocfs2-devel] [PATCH] fix crash on ocfs2_duplicate_clusters_by_page

2018-08-20 Thread Gang He
Hello Larry, >>> On 2018/8/16 at 19:24, in message <20180816112426.12218-1-lc...@suse.com>, Larry Chen wrote: > ocfs2_duplicate_clusters_by_page may crash if an extent's page is dirty. > When a page has not been written back, it is still in dirty state. If at > that moment, ocfs2_duplicate_clust

Re: [Ocfs2-devel] [PATCH] ocfs2: ocfs2_inode_lock_tracker does not distinguish lock level

2018-05-10 Thread Gang He
process 2 ocfs2_inode_lock_tracker(ex=0) <== ocfs2_inode_lock_tracker(ex=1) ocfs2_inode_lock_tracker(ex=1) Signed-off-by: Larry Chen Reviewed-by: Gang He --- fs/ocfs2/dlmglue.c | 119 +++-- fs/ocfs2/dlmglue.h | 1 +

[PATCH] dlm: make sctp_connect_to_sock() return in specified time

2018-04-26 Thread Gang He
time is spent in sock->ops->connect() function before returns ETIMEDOUT(-110) error, since O_NONBLOCK argument in connect() function does not work here, then we should make sock->ops->connect() function return in specified time via setting socket SO_SNDTIMEO atrribute. Signed-off-by: Gang

Re: [PATCH] dlm: prompt the user SCTP is experimental

2018-04-02 Thread Gang He
Hi David, >>> > On Thu, Mar 22, 2018 at 10:27:56PM -0600, Gang He wrote: >> Hello David, >> >> Do you agree to add this prompt to the user? >> Since sometimes customers attempted to setup SCTP protocol with two rings, >> but they could not get the

Re: [PATCH] dlm: prompt the user SCTP is experimental

2018-03-22 Thread Gang He
ut 5mins hang in case > one connection(ring) is broken. > Then, I suggest to add a kernel print, which prompts the user SCTP > protocol for DLM should be considered experimental, it is not > recommended in production environment. > > Signed-off-by: Gang He > --- > fs/

[PATCH] dlm: prompt the user SCTP is experimental

2018-03-19 Thread Gang He
in case one connection(ring) is broken. Then, I suggest to add a kernel print, which prompts the user SCTP protocol for DLM should be considered experimental, it is not recommended in production environment. Signed-off-by: Gang He --- fs/dlm/lowcomms.c | 1 + 1 file changed, 1 insertion(+) diff

[PATCH v4 2/3] ocfs2: add ocfs2_overwrite_io function

2018-01-15 Thread Gang He
Add ocfs2_overwrite_io function, which is used to judge if overwrite allocated blocks, otherwise, the write will bring extra block allocation overhead. Reviewed-by: Alex Chen Signed-off-by: Gang He --- fs/ocfs2/extent_map.c | 45 + fs/ocfs2

[PATCH v4 3/3] ocfs2: nowait aio support

2018-01-15 Thread Gang He
Return -EAGAIN if any of the following checks fail for direct I/O with nowait flag: Can not get the related locks immediately, Blocks are not allocated at the write location, it will trigger block allocation, this will block IO operations. Signed-off-by: Gang He --- fs/ocfs2/dir.c | 2

[PATCH v4 0/3] ocfs2: add nowait aio support

2018-01-15 Thread Gang He
urned to the upper code, move invoking ocfs2_overwrite_io() function from ocfs2_file_write_iter() to ocfs2_prepare_inode_for_write(), this change can combine acquiring the related locks. Gang He (3): ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock ocfs2: add ocfs2_overwrite_io function

[PATCH v4 1/3] ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock

2018-01-15 Thread Gang He
Add ocfs2_try_rw_lock and ocfs2_try_inode_lock functions, which will be used in non-block IO scenarios. Reviewed-by: Alex Chen Signed-off-by: Gang He --- fs/ocfs2/dlmglue.c | 21 + fs/ocfs2/dlmglue.h | 4 2 files changed, 25 insertions(+) diff --git a/fs/ocfs2

Re: [Ocfs2-devel] [PATCH v2 2/2] ocfs2: add trimfs lock to avoid duplicated trims in cluster

2018-01-10 Thread Gang He
>>> > On 2018/1/11 15:19, Gang He wrote: >> >> >> >>>>> >>> On 2018/1/11 12:31, Gang He wrote: >>>> Hi Changwei, >>>> >>>> >>>>>>> >>>>> On 2018/1/11 11:

Re: [Ocfs2-devel] [PATCH v2 2/2] ocfs2: add trimfs lock to avoid duplicated trims in cluster

2018-01-10 Thread Gang He
>>> > On 2018/1/11 12:31, Gang He wrote: >> Hi Changwei, >> >> >>>>> >>> On 2018/1/11 11:33, Gang He wrote: >>>> Hi Changwei, >>>> >>>> >>>>>>> >>>>> On 2018/1/11 10:

Re: [Ocfs2-devel] [PATCH v2 2/2] ocfs2: add trimfs lock to avoid duplicated trims in cluster

2018-01-10 Thread Gang He
Hi Changwei, >>> > On 2018/1/11 11:33, Gang He wrote: >> Hi Changwei, >> >> >>>>> >>> On 2018/1/11 10:07, Gang He wrote: >>>> Hi Changwei, >>>> >>>> >>>>>>> >>>>

Re: [Ocfs2-devel] [PATCH v2 2/2] ocfs2: add trimfs lock to avoid duplicated trims in cluster

2018-01-10 Thread Gang He
Hi Changwei, >>> > On 2018/1/11 10:07, Gang He wrote: >> Hi Changwei, >> >> >>>>> >>> On 2018/1/10 18:14, Gang He wrote: >>>> Hi Changwei, >>>> >>>> >>>>>>> >>>>> On

Re: [Ocfs2-devel] [PATCH v3 3/3] ocfs2: nowait aio support

2018-01-10 Thread Gang He
Hi Alex, >>> > Hi Gang, > > On 2017/12/28 18:07, Gang He wrote: >> Return -EAGAIN if any of the following checks fail for >> direct I/O with nowait flag: >> Can not get the related locks immediately, >> Blocks are not allocated at the write location,

Re: [Ocfs2-devel] [PATCH v2 2/2] ocfs2: add trimfs lock to avoid duplicated trims in cluster

2018-01-10 Thread Gang He
Hi Changwei, >>> > On 2018/1/10 18:14, Gang He wrote: >> Hi Changwei, >> >> >>>>> >>> On 2018/1/10 17:05, Gang He wrote: >>>> Hi Changwei, >>>> >>>> >>>>>>> >>>>&g

Re: [Ocfs2-devel] [PATCH v2 2/2] ocfs2: add trimfs lock to avoid duplicated trims in cluster

2018-01-10 Thread Gang He
Hi Changwei, >>> > On 2018/1/10 17:05, Gang He wrote: >> Hi Changwei, >> >> >>>>> >>> Hi Gang, >>> >>> On 2017/12/14 13:16, Gang He wrote: >>>> As you know, ocfs2 has support trim the underlying disk via &

Re: [Ocfs2-devel] [PATCH v2 2/2] ocfs2: add trimfs lock to avoid duplicated trims in cluster

2018-01-10 Thread Gang He
Hi Changwei, >>> > Hi Gang, > > On 2017/12/14 13:16, Gang He wrote: >> As you know, ocfs2 has support trim the underlying disk via >> fstrim command. But there is a problem, ocfs2 is a shared disk >> cluster file system, if the user configures a scheduled fs

Re: [Ocfs2-devel] [PATCH v2 1/2] ocfs2: add trimfs dlm lock resource

2018-01-10 Thread Gang He
Hi Changwei, >>> > Hi Gang, > > On 2017/12/14 13:16, Gang He wrote: >> Introduce a new dlm lock resource, which will be used to >> communicate during fstrim a ocfs2 device from cluster nodes. >> >> Signed-off-by: Gang He

Re: [Ocfs2-devel] [PATCH v2] ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE

2018-01-05 Thread Gang He
Hi Andrew, >>> Andrew Morton 01/06/18 4:50 AM >>> On Thu, 04 Jan 2018 23:31:12 -0700 "Gang He" wrote: > Happy new year. > Could you help to pick up this patch, which is used to fix a old patch > 1cce4df04f37. > If we have not this patch, so

Re: [Ocfs2-devel] [PATCH v2] ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE

2018-01-04 Thread Gang He
fenced. Thanks Gang >>> > > On 17/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

Re: [Ocfs2-devel] [PATCH v3 2/3] ocfs2: add ocfs2_overwrite_io function

2018-01-03 Thread Gang He
Hi Alex, >>> > Hi Gang, > > On 2018/1/3 13:14, Gang He wrote: >> Hi Alex, >> >> >>>>> >>> Hi Gang, >>> >>> On 2017/12/28 18:07, Gang He wrote: >>>> Add ocfs2_overwrite_io function, which is used to

Re: [Ocfs2-devel] [PATCH v2 2/2] ocfs2: add trimfs lock to avoid duplicated trims in cluster

2018-01-03 Thread Gang He
Hi Alex, >>> > Hi Gang, > > On 2017/12/14 13:14, Gang He wrote: >> As you know, ocfs2 has support trim the underlying disk via >> fstrim command. But there is a problem, ocfs2 is a shared disk >> cluster file system, if the user configures a scheduled fs

Re: [Ocfs2-devel] [PATCH v3 2/3] ocfs2: add ocfs2_overwrite_io function

2018-01-02 Thread Gang He
Hi Alex, >>> > Hi Gang, > > On 2017/12/28 18:07, Gang He wrote: >> Add ocfs2_overwrite_io function, which is used to judge if >> overwrite allocated blocks, otherwise, the write will bring extra >> block allocation overhead. >> >> Signed-off-by

[PATCH v3 2/3] ocfs2: add ocfs2_overwrite_io function

2017-12-28 Thread Gang He
Add ocfs2_overwrite_io function, which is used to judge if overwrite allocated blocks, otherwise, the write will bring extra block allocation overhead. Signed-off-by: Gang He --- fs/ocfs2/extent_map.c | 45 + fs/ocfs2/extent_map.h | 3 +++ 2 files

[PATCH v3 0/3] ocfs2: add nowait aio support

2017-12-28 Thread Gang He
locks. Gang He (3): ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock ocfs2: add ocfs2_overwrite_io function ocfs2: nowait aio support fs/ocfs2/dir.c | 2 +- fs/ocfs2/dlmglue.c | 41 +++--- fs/ocfs2/dlmglue.h | 6 +++- fs/ocfs2/extent_map.c

[PATCH v3 1/3] ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock

2017-12-28 Thread Gang He
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 | 21 + fs/ocfs2/dlmglue.h | 4 2 files changed, 25 insertions(+) diff --git a/fs/ocfs2/dlmglue.c b/fs/ocfs2/dlmglue.c

[PATCH v3 3/3] ocfs2: nowait aio support

2017-12-28 Thread Gang He
Return -EAGAIN if any of the following checks fail for direct I/O with nowait flag: Can not get the related locks immediately, Blocks are not allocated at the write location, it will trigger block allocation, this will block IO operations. Signed-off-by: Gang He --- fs/ocfs2/dir.c | 2

[PATCH v2] ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE

2017-12-27 Thread Gang He
28 15:04:12 CST 2017 multi_mmap..Passed. Runtime 487 seconds. Fixes: 1cce4df04f37 ("ocfs2: do not lock/unlock() inode DLM lock") Signed-off-by: Gang He --- fs/ocfs2/dlmglue.c | 9 + 1 file changed, 9 insertions(+) diff --git a/fs/ocfs2/dlmglue.c b/fs/ocfs2/dlmglue.c ind

Re: [Ocfs2-devel] [PATCH] ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE

2017-12-27 Thread Gang He
immediately here. In fact, this patch does NOT add new code, just revert the old patch 1cce4df04f37, and add more clear comments in the front of these two lines code. Thanks Gang > > thanks, > Jun > > On 2017/12/28 10:11, Gang He wrote: >> Hi Jun, >> >> >&g

Re: [Ocfs2-devel] [PATCH] ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE

2017-12-27 Thread Gang He
Hi Alex, >>> > Hi Gang, > > On 2017/12/27 18:37, Gang He wrote: >> Hi Jun, >> >> >>>>> >>> Hi Gang, >>> >>> Do you mean that too many retrys in loop cast losts of CPU-time and >>> block page-fault interr

Re: [Ocfs2-devel] [PATCH] ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE

2017-12-27 Thread Gang He
> > thanks, > Jun > > On 2017/12/27 18:37, Gang He wrote: >> Hi Jun, >> >> >>>>> >>> Hi Gang, >>> >>> Do you mean that too many retrys in loop cast losts of CPU-time and >>> block page-fault interrupt? We sho

Re: [Ocfs2-devel] [PATCH] ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE

2017-12-27 Thread Gang He
patch 1cce4df04f37 ("ocfs2: do not lock/unlock() inode DLM lock"), before that patch, the code is the same, this patch can be considered to revert that patch, except adding more clear comments. Thanks Gang > > thanks, > Jun > > On 2017/12/27 17:29, Gang He wro

[PATCH] ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE

2017-12-27 Thread Gang He
e R09: R10: 0483 R11: 7fa75ded61b0 R12: 7fa75e90a770 R13: 000e R14: 1770 R15: Fixes: 1cce4df04f37 ("ocfs2: do not lock/unlock() inode DLM lock") Signed-off-by: Gang He --- fs/ocfs2/dlmglue.c | 9 + 1 file change

[PATCH v2 2/2] ocfs2: add trimfs lock to avoid duplicated trims in cluster

2017-12-13 Thread Gang He
on a shared disk. Signed-off-by: Gang He --- fs/ocfs2/alloc.c | 44 1 file changed, 44 insertions(+) diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c index ab5105f..5c9c3e2 100644 --- a/fs/ocfs2/alloc.c +++ b/fs/ocfs2/alloc.c @@ -7382,6 +7382,7 @

[PATCH v2 1/2] ocfs2: add trimfs dlm lock resource

2017-12-13 Thread Gang He
Introduce a new dlm lock resource, which will be used to communicate during fstrim a ocfs2 device from cluster nodes. Signed-off-by: Gang He --- fs/ocfs2/dlmglue.c | 86 + fs/ocfs2/dlmglue.h | 29 + fs/ocfs2/ocfs2.h

Re: [Ocfs2-devel] [PATCH v2 1/3] ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock

2017-11-29 Thread Gang He
Hi Changwei, >>> > Hi Gang, > > On 2017/11/30 10:45, Gang He wrote: >> Hello Changwei, >> >> >>>>> >>> On 2017/11/29 16:38, Gang He wrote: >>>> Add ocfs2_try_rw_lock and ocfs2_try_inode_lock functions, which >&

Re: [Ocfs2-devel] [PATCH v2 1/3] ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock

2017-11-29 Thread Gang He
Hello Changwei, >>> > On 2017/11/29 16:38, 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 | 21 ++

[PATCH v2 2/3] ocfs2: add ocfs2_overwrite_io function

2017-11-29 Thread Gang He
Add ocfs2_overwrite_io function, which is used to judge if overwrite allocated blocks, otherwise, the write will bring extra block allocation overhead. Signed-off-by: Gang He --- fs/ocfs2/extent_map.c | 41 + fs/ocfs2/extent_map.h | 3 +++ 2 files

[PATCH v2 1/3] ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock

2017-11-29 Thread Gang He
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 | 21 + fs/ocfs2/dlmglue.h | 4 2 files changed, 25 insertions(+) diff --git a/fs/ocfs2/dlmglue.c b/fs/ocfs2/dlmglue.c

[PATCH v2 3/3] ocfs2: nowait aio support

2017-11-29 Thread Gang He
Return -EAGAIN if any of the following checks fail for direct I/O with nowait flag: Can not get the related locks immediately, Blocks are not allocated at the write location, it will trigger block allocation, this will block IO operations. Signed-off-by: Gang He --- fs/ocfs2/dir.c | 2

[PATCH v2 0/3] ocfs2: add nowait aio support

2017-11-29 Thread Gang He
value can be returned to the upper code, move invoking ocfs2_overwrite_io() function from ocfs2_file_write_iter() to ocfs2_prepare_inode_for_write(), this change can combine acquiring the related locks. Gang He (3): ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock ocfs2: add ocfs2_overwri

Re: [Ocfs2-devel] [PATCH 2/3] ocfs2: add ocfs2_overwrite_io function

2017-11-28 Thread Gang He
Hi Joseph, >>> > > On 17/11/28 15:24, Gang He wrote: >> Hello Joseph, >> >> >>>>> >> >>> >>> On 17/11/28 11:35, Gang He wrote: >>>> Hello Joseph, >>>> >>>> >>>>>>&g

Re: [Ocfs2-devel] [PATCH 2/3] ocfs2: add ocfs2_overwrite_io function

2017-11-28 Thread Gang He
Hi Alex, >>> > Hi Gang, > > On 2017/11/28 15:38, Gang He wrote: >> Hi Alex, >> >> >>>>> >>> Hi Gang, >>> >>> On 2017/11/28 13:33, Gang He wrote: >>>> Hello Alex, >>>> >>>> >&

Re: [Ocfs2-devel] [PATCH 2/3] ocfs2: add ocfs2_overwrite_io function

2017-11-27 Thread Gang He
Hi Alex, >>> > Hi Gang, > > On 2017/11/28 13:33, Gang He wrote: >> Hello Alex, >> >> >>>>> >>> Hi Gang, >>> >>> On 2017/11/27 17:46, Gang He wrote: >>>> Add ocfs2_overwrite_io function, which

Re: [Ocfs2-devel] [PATCH 2/3] ocfs2: add ocfs2_overwrite_io function

2017-11-27 Thread Gang He
Hello Joseph, >>> > > On 17/11/28 11:35, Gang He wrote: >> Hello Joseph, >> >> >>>>> >>> Hi Gang, >>> >>> On 17/11/27 17:46, Gang He wrote: >>>> Add ocfs2_overwrite_io function, which is used to jud

Re: [Ocfs2-devel] [PATCH 3/3] ocfs2: nowait aio support

2017-11-27 Thread Gang He
Hello Alex, >>> > Hi Gang, > > On 2017/11/27 17:46, Gang He wrote: >> Return EAGAIN if any of the following checks fail for direct I/O: >> Can not get the related locks immediately, >> Blocks are not allocated at the write location, it will trigger >>

Re: [Ocfs2-devel] [PATCH 2/3] ocfs2: add ocfs2_overwrite_io function

2017-11-27 Thread Gang He
Hi Changwei, >>> > Hi, > Gang > > On 2017/11/27 17:48, Gang He wrote: >> Add ocfs2_overwrite_io function, which is used to judge if >> overwrite allocated blocks, otherwise, the write will bring extra >> block allocation overhead. >> > >

Re: [Ocfs2-devel] [PATCH 2/3] ocfs2: add ocfs2_overwrite_io function

2017-11-27 Thread Gang He
Hello Alex, >>> > Hi Gang, > > On 2017/11/27 17:46, Gang He wrote: >> Add ocfs2_overwrite_io function, which is used to judge if >> overwrite allocated blocks, otherwise, the write will bring extra >> block allocation overhead. >> >> Signed-o

Re: [Ocfs2-devel] [PATCH 2/3] ocfs2: add ocfs2_overwrite_io function

2017-11-27 Thread Gang He
ode *inode, loff_t pos, loff_t len); > > Yes, Jun has a point. > It seems that ocfs2_overwrite_io is only involved in non-blocking aio > and no other code spot is calling ocfs2_overwrite_io with wait=1 passed. Ok, I will do this change. > >> >> thans, >> Jun &

Re: [Ocfs2-devel] [PATCH 1/3] ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock

2017-11-27 Thread Gang He
Hello Changwei, >>> > Hi Gang, > > On 2017/11/27 17:48, 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

Re: [Ocfs2-devel] [PATCH 2/3] ocfs2: add ocfs2_overwrite_io function

2017-11-27 Thread Gang He
st people prefer to get rid of "wait" parameter. Thanks Gang > > thans, > Jun > > On 2017/11/27 17:46, Gang He wrote: >> Add ocfs2_overwrite_io function, which is used to judge if >> overwrite allocated blocks, otherwise, the write will bring extra >> block

Re: [Ocfs2-devel] [PATCH 1/3] ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock

2017-11-27 Thread Gang He
Hello Jun, >>> > 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 |

Re: [Ocfs2-devel] [PATCH 2/3] ocfs2: add ocfs2_overwrite_io function

2017-11-27 Thread Gang He
Hello Joseph, >>> > Hi Gang, > > On 17/11/27 17:46, Gang He wrote: >> Add ocfs2_overwrite_io function, which is used to judge if >> overwrite allocated blocks, otherwise, the write will bring extra >> block allocation overhead. >> >> Signed-o

[PATCH 2/3] ocfs2: add ocfs2_overwrite_io function

2017-11-27 Thread Gang He
Add ocfs2_overwrite_io function, which is used to judge if overwrite allocated blocks, otherwise, the write will bring extra block allocation overhead. Signed-off-by: Gang He --- fs/ocfs2/extent_map.c | 67 +++ fs/ocfs2/extent_map.h | 3 +++ 2

[PATCH 1/3] ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock

2017-11-27 Thread Gang He
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 changed, 26 insertions(+) diff --git a/fs/ocfs2/dlmglue.c b/fs/ocfs2

[PATCH 0/3] ocfs2: add nowait aio support

2017-11-27 Thread Gang He
also can leverage this part kernel code. So far, ext4/xfs/btrfs have supported this feature, I'd like to add the related code for ocfs2 file system. Gang He (3): ocfs2: add ocfs2_try_rw_lock and ocfs2_try_inode_lock ocfs2: add ocfs2_overwrite_io function ocfs2: nowait aio support fs/

[PATCH 3/3] ocfs2: nowait aio support

2017-11-27 Thread Gang He
Return EAGAIN if any of the following checks fail for direct I/O: Can not get the related locks immediately, Blocks are not allocated at the write location, it will trigger block allocation and block IO operations. Signed-off-by: Gang He --- fs/ocfs2/dir.c | 2 +- fs/ocfs2/dlmglue.c

Re: [Ocfs2-devel] [PATCH] ocfs2/cluster: make config_item_type const

2017-10-15 Thread Gang He
Hello Intel Kbuild team, You just upgrade GCC version when compiling the latest kernel? Since these code looks a little old, I am sure that the related contributors are still work on OCFS2 project. Thanks Gang >>> > Hi Bhumika, > > [auto build test WARNING on linus/master] > [also build te

[PATCH v3 4/4] ocfs2: add duplicative ino number check

2017-05-24 Thread Gang He
Add duplicative ino number check, to avoid adding a file into the file check list when this file is being checked. Signed-off-by: Gang He --- fs/ocfs2/filecheck.c | 21 - 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/fs/ocfs2/filecheck.c b/fs/ocfs2

[PATCH v3 3/4] ocfs2: add kobject for online file check

2017-05-24 Thread Gang He
code. Signed-off-by: Gang He --- fs/ocfs2/filecheck.c | 301 +++ fs/ocfs2/filecheck.h | 20 ++-- fs/ocfs2/ocfs2.h | 8 ++ fs/ocfs2/super.c | 27 - 4 files changed, 152 insertions(+), 204 deletions(-) diff --git a/fs/ocfs2/filecheck.c

[PATCH v3 2/4] ocfs2: fix some small problems

2017-05-24 Thread Gang He
case. Signed-off-by: Gang He --- fs/ocfs2/filecheck.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/fs/ocfs2/filecheck.c b/fs/ocfs2/filecheck.c index cc7b595..4347727 100644 --- a/fs/ocfs2/filecheck.c +++ b/fs/ocfs2/filecheck.c @@ -288,7 +288,7 @@ int

[PATCH v3 1/4] ocfs2: move some definitions to header file

2017-05-24 Thread Gang He
Move some definitions to header file, which will be referenced by other source files when kobject mechanism is introduced. Signed-off-by: Gang He --- fs/ocfs2/filecheck.c | 27 --- fs/ocfs2/filecheck.h | 27 +++ 2 files changed, 27 insertions

[PATCH v3 0/4] ocfs2: use kobject for online file check

2017-05-24 Thread Gang He
hange into four patches, make sure each patch will not bring ocfs2 kernel modules compiling errors. Gang He (4): ocfs2: move some definitions to header file ocfs2: fix some small problems ocfs2: add kobject for online file check ocfs2: add duplicative ino number check fs/ocfs2/filech

Re: [PATCH v2] ocfs2: fix a static checker warning

2017-05-23 Thread Gang He
strict consistent with before the commit d56a8f32e4c6 ("ocfs2: check/fix inode block for online file check"), although it is very difficult to meet this problem in the real environment. Thanks Gang >>> > On Tue, 23 May 2017 13:17:14 +0800 Gang He wrote: > >&g

[PATCH v2] ocfs2: fix a static checker warning

2017-05-22 Thread Gang He
e error return value will not be NULL(zero). Signed-off-by: Gang He --- fs/ocfs2/inode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/ocfs2/inode.c b/fs/ocfs2/inode.c index 382401d..1a1e007 100644 --- a/fs/ocfs2/inode.c +++ b/fs/ocfs2/inode.c @@ -136,7 +136,7 @@ struct

[PATCH] ocfs2: get rid of ocfs2_is_o2cb_active function

2017-05-22 Thread Gang He
of stackglue, we need to get ocfs2_stack_lock lock before using ocfs2_stack related data structures, and that active_stack pointer can be NULL in case mount failure. Signed-off-by: Gang He --- fs/ocfs2/dlmglue.c | 2 +- fs/ocfs2/stackglue.c | 6 -- fs/ocfs2/stackglue.h | 3 --- 3 files changed

[PATCH] ocfs2: fix a static checker warning

2017-05-21 Thread Gang He
This patch will fix a static checker warning, this warning was caused by commit d56a8f32e4c662509ce50a37e78fa66c777977d3. after apply this patch, the error return value will not be NULL(zero). Signed-off-by: Gang He --- fs/ocfs2/inode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion

[PATCH v2] ocfs2: give an obvious tip for dismatch cluster names

2017-05-21 Thread Gang He
stack, the user will not meet this error. Signed-off-by: Gang He --- fs/ocfs2/super.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c index ca1646f..fc25d4a 100644 --- a/fs/ocfs2/super.c +++ b/fs/ocfs2/super.c @@ -1208,14 +12

Re: [Ocfs2-devel] [PATCH] ocfs2: give an obvious tip for dismatch cluster names

2017-05-18 Thread Gang He
er we can tell the user the reason is there is a cluster name dismatch between on disk and on the running cluster environment. Thanks Gang > > Thanks, > Joseph > > On 17/5/18 18:43, Gang He wrote: >> Hi Joseph, >> >> >>>>> >>> Hi Gang,

Re: [Ocfs2-devel] [PATCH] ocfs2: give an obvious tip for dismatch cluster names

2017-05-18 Thread Gang He
he failure cause if there is a error printing. Also, I think there is not possible to add this errorno in o2cb path during ocfs2_dlm_init, since o2cb code has been stable for a long time. Thanks Gang > > Thanks, > Joseph > > On 17/5/18 14:35, Gang He wrote: >> This pa

[PATCH] ocfs2: give an obvious tip for dismatch cluster names

2017-05-17 Thread Gang He
fix this dismatch problem. Second, also move printing ocfs2_fill_super() errno to the front of ocfs2_dismount_volume() function, since ocfs2_dismount_volume() will also print it's own message. Signed-off-by: Gang He --- fs/ocfs2/super.c | 8 ++-- 1 file changed, 6 insertions(+), 2 dele

[PATCH v2] dlm: Make dismatch error message more clear

2017-05-17 Thread Gang He
this line error message is not enough obvious. Signed-off-by: Gang He --- fs/dlm/lockspace.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/fs/dlm/lockspace.c b/fs/dlm/lockspace.c index 91592b7..b03d808 100644 --- a/fs/dlm/lockspace.c +++ b/fs/dlm/lockspace.c @@ -455,7 +455,8

[PATCH] dlm: Make dismatch error message more clear

2017-05-16 Thread Gang He
this line error message is not enough obvious. Signed-off-by: Gang He --- fs/dlm/lockspace.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/fs/dlm/lockspace.c b/fs/dlm/lockspace.c index 91592b7..b03d808 100644 --- a/fs/dlm/lockspace.c +++ b/fs/dlm/lockspace.c @@ -455,7 +455,8

Re: [Bug Report] crash in the path of direct IO

2017-04-10 Thread Gang He
Hi Changwei, Did you get this kernel crash file? Could you paste longer syslog before crash (e.g. 100 ~ 200 lines) via crash tool? e.g. crash vmlinux-4.4.21-69-default.gz vmcore crash> log Thanks Gang >>> > Hi, > > We encountered a crash issue days ago. > > The call trace follows as bel

Re: [PATCH v2 2/4] ocfs2: fix some small problems

2016-12-28 Thread Gang He
>>> > Hi Gang, one small comment below: > > On Wed, Dec 21, 2016 at 2:20 AM, Gang He wrote: >> First, move setting fe_done = 1 in spin lock, avoid bring >> any potential race condition. Second, tune mlog message level >> from ERROR to NOTICE, since the m

[PATCH v2 1/4] ocfs2: move some definitions to header file

2016-12-21 Thread Gang He
Move some definitions to header file, which will be referenced by other source files when kobject mechanism is introduced. Signed-off-by: Gang He --- fs/ocfs2/filecheck.c | 27 --- fs/ocfs2/filecheck.h | 27 +++ 2 files changed, 27 insertions

[PATCH v2 3/4] ocfs2: add kobject for online file check

2016-12-21 Thread Gang He
Use embedded kobject mechanism for online file check feature, this will avoid to use a global list to save/search per-device online file check related data. The changed code is based on Goldwyn Rodrigues's patches and ext4 fs code. Signed-off-by: Gang He --- fs/ocfs2/filecheck.c

[PATCH v2 4/4] ocfs2: add duplicative ino number check

2016-12-21 Thread Gang He
Add duplicative ino number check, to avoid adding a file into the file check list when this file is being checked. Signed-off-by: Gang He --- fs/ocfs2/filecheck.c | 21 - 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/fs/ocfs2/filecheck.c b/fs/ocfs2

[PATCH v2 2/4] ocfs2: fix some small problems

2016-12-21 Thread Gang He
First, move setting fe_done = 1 in spin lock, avoid bring any potential race condition. Second, tune mlog message level from ERROR to NOTICE, since the message should not belong to error message. Signed-off-by: Gang He --- fs/ocfs2/filecheck.c | 8 1 file changed, 4 insertions(+), 4

[PATCH v2 0/4] ocfs2: use kobject for online file check

2016-12-21 Thread Gang He
small fixes during this code refactoring. Second, the code change does not affect the underlying file check code. Thank Goldwyn very much. Compare with first version, split the code change into four patches, make sure each patch will not bring ocfs2 kernel modules compiling errors. Gang He (4):

答复: Re: [kbuild-all] 答复: Re: [PATCH 1/2] ocfs2: add kobject for online file check

2016-12-19 Thread Gang He
Hi Fengguang and all, I will reconstruct my patch set, to make sure each patch can follow this rule. Thanks Gang >>> Fengguang Wu 2016-12-20 上午 9:47 >>> Hi Gang, On Mon, Dec 19, 2016 at 06:43:48PM -0700, Gang He wrote: >Hello Kbuild, >Could you build my whole patch set

答复: Re: [PATCH 1/2] ocfs2: add kobject for online file check

2016-12-19 Thread Gang He
the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Gang-He/ocfs2-add-kobject-for-online-file-check/20161219-181858 config: x86_64-randconfig-x000-201651 (attached as .config) compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 reprodu

[PATCH 0/2] ocfs2: use kobject for online file check

2016-12-19 Thread Gang He
fixes during this code refactoring. Second, the code change does not affect the underlying file check code. Thank Goldwyn very much. Gang He (2): ocfs2: add kobject for online file check ocfs2: embed kobject in ocfs2_super structure fs/ocfs2/filecheck.c

  1   2   >