Export ocfs2_kset object from ocfs2_stackglue kernel module,
then online file check code will create the related sysfiles
under ocfs2_kset object.
Signed-off-by: Gang He g...@suse.com
Reviewed-by: Goldwyn Rodrigues rgold...@suse.de
---
fs/ocfs2/stackglue.c | 3 ++-
fs/ocfs2/stackglue.h | 2 ++
2
Create online file check sysfile when ocfs2 mount,
remove the related sysfile when ocfs2 umount.
Signed-off-by: Gang He g...@suse.com
Reviewed-by: Goldwyn Rodrigues rgold...@suse.de
---
fs/ocfs2/super.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
be used to communication back what has to be fixed or is fixed.
You could write:
$# echo CHECK inode /sys/fs/ocfs2/devname/filecheck
or
$# echo FIX inode /sys/fs/ocfs2/devname/filecheck
Gang He (4):
ocfs2: export ocfs2_kset for online file check
ocfs2: sysfile interfaces for online file check
Implement online file check sysfile interfaces, e.g.
how to create the related sysfile according to device name,
how to display/handle file check request from the sysfile.
Signed-off-by: Gang He g...@suse.com
Reviewed-by: Goldwyn Rodrigues rgold...@suse.de
---
fs/ocfs2/Makefile| 3 +-
fs
Implement online check or fix inode block during
reading a inode block to memory.
Signed-off-by: Gang He g...@suse.com
Reviewed-by: Goldwyn Rodrigues rgold...@suse.de
---
fs/ocfs2/inode.c | 196 +++--
fs/ocfs2/ocfs2_trace.h | 2 +
2 files
://oss.oracle.com/pipermail/ocfs2-devel/2015-June/010873.html
Thanks,
Joseph
On 2015/6/24 13:24, Gang He wrote:
When there are errors in the ocfs2 filesystem,
they are usually accompanied by the inode number which caused the error.
This inode number would be the input to fixing the file.
One
Add validate_extent_block/repair_extent_block functions
for online filecheck.
Signed-off-by: Gang He g...@suse.com
---
fs/ocfs2/alloc.c | 116 +
fs/ocfs2/alloc.h | 4 ++
fs/ocfs2/ocfs2_trace.h | 24 ++
3 files changed, 144
Add new errno, macro definitions and header file inclusion,
which will be used for file extent block online check.
Signed-off-by: Gang He g...@suse.com
---
fs/ocfs2/filecheck.c | 4
fs/ocfs2/filecheck.h | 1 +
fs/ocfs2/journal.h | 3 +++
3 files changed, 8 insertions(+)
diff --git a/fs
Update filecheck copyright to the right time/contributor
Signed-off-by: Gang He g...@suse.com
---
fs/ocfs2/filecheck.c | 2 +-
fs/ocfs2/filecheck.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/ocfs2/filecheck.c b/fs/ocfs2/filecheck.c
index a492e55..4b5a673 100644
Add file extent block online check, besides inode block online check,
we will add more kinds of meta block online check/repair.
Signed-off-by: Gang He g...@suse.com
---
fs/ocfs2/filecheck.c | 247 +--
1 file changed, 239 insertions(+), 8 deletions
Besides inode block online check, add file extent block online
check this time, we will add more kinds of meta block online
check/repair in the future.
Gang He (4):
ocfs2: update filecheck copyright
ocfs2: add errno and macro definitions
ocfs2: filecheck validate_extent_block function
is reported
in the kernel log. The user can try to check/fix this file via online filecheck
feature.
Signed-off-by: Gang He g...@suse.com
---
.../filesystems/ocfs2-online-filecheck.txt | 95 ++
1 file changed, 95 insertions(+)
create mode 100644 Documentation/filesystems
in the kernel log. The user can try to check/fix this file via online
filecheck
feature.
Signed-off-by: Gang He g...@suse.com
---
.../filesystems/ocfs2-online-filecheck.txt | 95
++
1 file changed, 95 insertions(+)
create mode 100644 Documentation/filesystems/ocfs2
Implement online check or fix inode block during
reading a inode block to memory.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/inode.c | 196 +++--
fs/ocfs2/ocfs2_trace.h | 2 +
2 files changed, 192 insertions(+), 6 deletions(-)
Export ocfs2_kset object from ocfs2_stackglue kernel module,
then online file check code will create the related sysfiles
under ocfs2_kset object.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/stackglue.c | 3 ++-
fs/ocfs2/stackglue.h | 2 ++
2 files changed, 4 insertions(+), 1 de
Create online file check sysfile when ocfs2 mount,
remove the related sysfile when ocfs2 umount.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/super.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
index 403c566..7213a94 100644
--- a/fs
Implement online file check sysfile interfaces, e.g.
how to create the related sysfile according to device name,
how to display/handle file check request from the sysfile.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/Makefile| 3 +-
fs/ocfs2/filecheck.c
nd, update the source file contribution vendor.
Gang He (4):
ocfs2: export ocfs2_kset for online file check
ocfs2: sysfile interfaces for online file check
ocfs2: create/remove sysfile for online file check
ocfs2: check/fix inode block for online file check
fs/ocfs2/Makefile | 3 +-
fs
on where and how it helps ... would you mind sharing couple
> examples(real scenarios).
>
> Thanks,
> --Srini
>
>
> On 10/27/2015 11:25 PM, Gang He wrote:
>> When there are errors in the ocfs2 filesystem,
>> they are usually accompanied by the inode numb
came
> across prompted this change and how this change would help in that case.
>
> Thanks,
> --Srini
>
>
> On 10/28/2015 09:44 PM, Gang He wrote:
>> Hello Srini,
>>
>> There is a doc about ocfs2 online file check.
>>
>> OCFS2 online file chec
nabled or
> add some mount option for it.
>
> Thanks,
> Junxiao.
>
> On 10/28/2015 02:25 PM, Gang He wrote:
>> Implement online file check sysfile interfaces, e.g.
>> how to create the related sysfile according to device name,
>> how to display/handle file check r
>>>
> On 11/03/2015 04:47 PM, Gang He wrote:
>>
>>
>>
>>>>>
>>> On 11/03/2015 04:15 PM, Gang He wrote:
>>>> Hello Junxiao,
>>>>
>>>> See my comments inline.
>>>>
>>>>
>>&
Hi Junxiao,
>>>
> Hi Gang,
>
> On 11/03/2015 03:54 PM, Gang He wrote:
>> Hi Junxiao,
>>
>> Thank for your reviewing.
>> Current design, we use a sysfile as a interface to check/fix a file (via
> pass a ino number).
>> But, th
nto the memory as a inode object.
Since the file system is under a cluster environment, we have to use some
existing function and code path to keep these block operation under a cluster
lock.
Thanks
Gang
>
> Thanks,
> Junxiao.
> On 10/28/2015 02:26 PM, Gang He wrote:
>> +st
>>>
> On 11/03/2015 04:15 PM, Gang He wrote:
>> Hello Junxiao,
>>
>> See my comments inline.
>>
>>
>>>>>
>>> Hi Gang,
>>>
>>> This is not like a right patch.
>>> First, online file check only check
Hi Andrew,
Thank for your suggestions.
I will sort out a document for ocfs2 online file check feature.
Thanks
Gang
On Wed, 24 Jun 2015 13:24:17 +0800 Gang He g...@suse.com wrote:
When there are errors in the ocfs2 filesystem,
they are usually accompanied by the inode number which
Hi Greg,
>>>
> On Wed, Dec 02, 2015 at 07:05:27PM -0700, Gang He wrote:
>> Hello Pavel,
>>
>>
>>
>> >>>
>> > On Wed 2015-10-28 14:25:57, Gang He wrote:
>> >> When there are errors in the ocfs2 filesystem,
>&
Hello Greg and Pavel,
Sorry, there was a misunderstand, I was not aware that there were some design
constraints for sysfs interfaces. I will review and modify this portion code.
Thanks
Gang
>>>
> On Fri, Dec 04, 2015 at 01:36:21AM -0700, Gang He wrote
Hello Pavel,
>>>
> On Wed 2015-10-28 14:25:57, Gang He wrote:
>> When there are errors in the ocfs2 filesystem,
>> they are usually accompanied by the inode number which caused the error.
>> This inode number would be the input to fixing the file.
>> One
file's inode number is reported in the kernel
log. The user can try to check/fix this file via online filecheck feature.
Signed-off-by: Gang He <g...@suse.com>
---
.../filesystems/ocfs2-online-filecheck.txt | 94 ++
1 file changed, 94 insertions(+)
create mode
Implement online check or fix inode block during
reading a inode block to memory.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/inode.c | 200 +++--
fs/ocfs2/ocfs2_trace.h | 2 +
2 files changed, 196 insertions(+), 6 deletions(-)
Implement online file check sysfile interfaces, e.g.
how to create the related sysfile according to device name,
how to display/handle file check request from the sysfile.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/Makefile| 3 +-
fs/ocfs2/filecheck.c
Export ocfs2_kset object from ocfs2_stackglue kernel module,
then online file check code will create the related sysfiles
under ocfs2_kset object.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/stackglue.c | 3 ++-
fs/ocfs2/stackglue.h | 2 ++
2 files changed, 4 insertions(+), 1 de
Create online file check sysfile when ocfs2 mount,
remove the related sysfile when ocfs2 umount.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/super.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
index 2de4c8a..5ef88b8 100644
--- a/fs
corruption currently until having a complete solution.
Compare with first version, I use strncasecmp instead of double strncmp
functions. Second, update the source file contribution vendor.
Gang He (4):
ocfs2: export ocfs2_kset for online file check
ocfs2: sysfile interfaces for online file ch
Hello Andrew and Mark,
>>>
> On Fri, 25 Dec 2015 15:16:15 +0800 Gang He <g...@suse.com> wrote:
>
>> When there are errors in the ocfs2 filesystem,
>> they are usually accompanied by the inode number which caused the error.
>> This inode number would
Hello Andrew,
>>>
> On Fri, 25 Dec 2015 15:16:16 +0800 Gang He <g...@suse.com> wrote:
>
>> Export ocfs2_kset object from ocfs2_stackglue kernel module,
>> then online file check code will create the related sysfiles
>> under ocfs2_kset object.
>
Hi Mark and Junxiao,
>>>
> On Tue, Nov 03, 2015 at 04:20:27PM +0800, Junxiao Bi wrote:
>> Hi Gang,
>>
>> On 11/03/2015 03:54 PM, Gang He wrote:
>> > Hi Junxiao,
>> >
>> > Thank for your reviewing.
>> > Current design, we u
Hi Mark and Junxiao,
>>>
> Hi Mark,
>
> On 11/25/2015 06:16 AM, Mark Fasheh wrote:
>> Hi Junxiao,
>>
>> On Tue, Nov 03, 2015 at 03:12:35PM +0800, Junxiao Bi wrote:
>>> Hi Gang,
>>>
>>> This is not like a right patch.
>>> First, online file check only checks inode's block number, valid flag,
Hi Junxiao,
>>>
> Hi Gang,
>
> On 11/25/2015 11:29 AM, Gang He wrote:
>> Hi Mark and Junxiao,
>>
>>
>>>>>
>>> On Tue, Nov 03, 2015 at 04:20:27PM +0800, Junxiao Bi wrote:
>>>> Hi Gang,
>>>>
>>>&g
CATCH_BH_JBD_RACES to wrap BUG() in
the ocfs2_read_blocks_sync function like before.
2) disable the macro CATCH_BH_JBD_RACES in Makefile by default.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/Makefile | 2 --
fs/ocfs2/buffer_head_io.c | 5 +
2 files changed, 5 insertions(+), 2 del
with first version, I use strncasecmp instead of double strncmp
functions. Second, update the source file contribution vendor.
Gang He (5):
ocfs2: export ocfs2_kset for online file check
ocfs2: sysfile interfaces for online file check
ocfs2: create/remove sysfile for online file check
ocfs2: check/
file's inode number is reported in the kernel
log. The user can try to check/fix this file via online filecheck feature.
Signed-off-by: Gang He <g...@suse.com>
Reviewed-by: Mark Fasheh <mfas...@suse.de>
---
.../filesystems/ocfs2-online-filecheck.txt | 94 ++
1
Implement online file check sysfile interfaces, e.g.
how to create the related sysfile according to device name,
how to display/handle file check request from the sysfile.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/Makefile| 3 +-
fs/ocfs2/filecheck.c
Create online file check sysfile when ocfs2 mount,
remove the related sysfile when ocfs2 umount.
Signed-off-by: Gang He <g...@suse.com>
Reviewed-by: Mark Fasheh <mfas...@suse.de>
---
fs/ocfs2/super.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/fs/ocfs2/super.c b/fs/o
Implement online check or fix inode block during
reading a inode block to memory.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/inode.c | 225 +++--
fs/ocfs2/ocfs2_trace.h | 2 +
2 files changed, 218 insertions(+), 9 deletions(-)
Export ocfs2_kset object from ocfs2_stackglue kernel module,
then online file check code will create the related sysfiles
under ocfs2_kset object.
Signed-off-by: Gang He <g...@suse.com>
Reviewed-by: Mark Fasheh <mfas...@suse.de>
---
fs/ocfs2/stackglue.c | 3 ++-
fs/ocfs2/stackglue
;> > On Mon, 21 Mar 2016 15:57:23 -0700 Mark Fasheh <mfas...@suse.de> wrote:
>> >
>> > > On Mon, Feb 29, 2016 at 01:17:59PM +0800, Gang He wrote:
>> > > > Implement online file check sysfile interfaces, e.g.
>> > > > how to create the rel
should give the user a obvious error message,
then, the user can let that user space tool exit before mounting the file
system again.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/stack_user.c | 11 +--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/fs
dlm_new_lockspace() function, to make
sure the lockspace is created by kernel module itself, and this change will
not affect the backward compatibility.
Second, the obvious error message is reported in the kernel log, let the user
be more easy to find the root cause.
Gang He (1):
ocfs2: insure dlm lockspace
Hi Eric,
Looks good for me.
Just one suggestion,
please monitor if the LVB sharing mechanism in the cluster still works well in
the normal scenario,
to avoid any performance decrease regression problem.
Reviewed-by: Gang He <g...@suse.com>
Thanks
Gang
>>>
> The crash ha
>>>
> Hi Gang, one small comment below:
>
> On Wed, Dec 21, 2016 at 2:20 AM, Gang He <g...@suse.com> wrote:
>> First, move setting fe_done = 1 in spin lock, avoid bring
>> any potential race condition. Second, tune mlog message level
>> from
if your patch is applied to 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)
Hi Fengguang and all,
I will reconstruct my patch set, to make sure each patch can follow this rule.
Thanks
Gang
>>> Fengguang Wu <l...@intel.com> 2016-12-20 上午 9:47 >>>
Hi Gang,
On Mon, Dec 19, 2016 at 06:43:48PM -0700, Gang He wrote:
>Hello Kbuild,
>Could y
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 <g...@suse.com>
---
fs/ocfs2/filecheck.c | 8
1 file chan
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 <g...@suse.com>
---
fs/ocfs2/filec
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 <g...@suse.com>
---
fs/ocfs2/filecheck.c | 21 -
1 file changed, 20 insertions(+), 1 deletion(-)
diff --git a/fs/ocfs2/filecheck.
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):
ocfs2
Move some definitions to header file, which will be referenced
by other source files when kobject mechanism is introduced.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/filecheck.c | 27 ---
fs/ocfs2/filecheck.h | 27 +++
2 files chang
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 | 360
Embed kobject in ocfs2_super structure, then we can use container_of
method to get our own data pointor via kobject pointer. Second, I adjust
the related code in create/remove online file check sysfs entry.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/ocfs2.h | 8
fs
some data structure definitions to the header file;
2) tune mlog message level from ERROR to NOTICE;
3) add file check duplicative ino number check;
4) the other miscellaneous.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/filecheck.c
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
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 <g...@suse.com>
---
fs/ocfs2/super.c | 8 ++--
1 file changed, 6 inse
this line error message is not
enough obvious.
Signed-off-by: Gang He <g...@suse.com>
---
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/locks
quickly
get the 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
this line error message is not
enough obvious.
Signed-off-by: Gang He <g...@suse.com>
---
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/locks
turn value will not be NULL(zero).
Signed-off-by: Gang He <g...@suse.com>
---
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
is 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 <g...@suse.com
ign 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 <g...@suse.com>
---
fs/ocfs2/dlmglue.c | 2 +-
fs/ocfs2/stackglue.c | 6 --
fs/ocfs2/stackglue.h |
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 <g...@suse.com>
---
fs/ocfs2/inode.c | 2 +-
1 file changed, 1 insertion
ser 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,
>>>
>&g
in the case.
Signed-off-by: Gang He <g...@suse.com>
---
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
Move some definitions to header file, which will be referenced
by other source files when kobject mechanism is introduced.
Signed-off-by: Gang He <g...@suse.com>
---
fs/ocfs2/filecheck.c | 27 ---
fs/ocfs2/filecheck.h | 27 +++
2 files chang
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 <g...@suse.com>
---
fs/ocfs2/filecheck.c | 21 -
1 file changed, 20 insertions(+), 1 deletion(-)
diff --git a/fs/ocfs2/filecheck.
.
Signed-off-by: Gang He <g...@suse.com>
---
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
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/filecheck.c
, the user will not
meet this error.
Signed-off-by: Gang He <g...@suse.com>
---
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
@@ -1
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
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-off
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 <g...@suse.com>
---
fs
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_overwrite_io
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 <g...@suse.com>
---
fs/ocfs2/extent_map.c | 41 +
fs/ocfs2/extent_map.
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 <g...@suse.com>
---
fs/ocfs2/dlmglue.c | 21 +
fs/ocfs2/dlmglue.h | 4
2 files changed, 25 insertions(+)
diff --git a/fs/ocfs2/dlmglue.
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
>>
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 <g...@suse.com>
>> ---
>> fs/ocfs2/dlmglu
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 <g...@suse.com>
>> ---
>>
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.
>>
>
>
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 allocation overh
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 <g...@suse.com>
>> ---
>&
ff_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
>>
>> On
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-off
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
>>
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 <g...@suse.com>
---
fs/ocfs2/extent_map.c | 67 +++
fs/ocfs2/extent
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 <g...@suse.com>
---
fs/ocfs2/dlmglue.c | 22 ++
fs/ocfs2/dlmglue.h | 4
2 files changed, 26 insertions(+)
diff --git a/fs/ocfs2/dlmglue.
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/ocfs2
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 <g...@suse.com>
---
fs/ocfs2/dir.c | 2
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,
>>>>
>>>>
&g
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
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
1 - 100 of 290 matches
Mail list logo