Displaying 20 results from an estimated 26 matches for "ocfs2_error".
2023 May 04
1
[PATCH 2/2] ocfs2: add error handling path when jbd2 enter ABORT status
...f journal abort.
> >> Actually we've handled this case before, but just limit the print. But
> >> it seems not enough now.
> >
> > I wrote in my previous mail. Follow your idea, The code should be:
> >
> > if (is_journal_aborted(journal)) {
> > ocfs2_error(osb->sb, "jbd2 status: ABORT.\n"); //this line is important.
> > return -EROFS;
> > }
> >
> > Only return -EROFS then break loop in ocfs2_commit_thread() is not enough.
> > Without ocfs2_error(), ocfs2 could accept new IOs from userspace, then the new
&g...
2023 May 05
1
[PATCH 2/2] ocfs2: add error handling path when jbd2 enter ABORT status
...t;>>> Actually we've handled this case before, but just limit the print. But
>>>> it seems not enough now.
>>>
>>> I wrote in my previous mail. Follow your idea, The code should be:
>>>
>>> if (is_journal_aborted(journal)) {
>>> ocfs2_error(osb->sb, "jbd2 status: ABORT.\n"); //this line is important.
>>> return -EROFS;
>>> }
>>>
>>> Only return -EROFS then break loop in ocfs2_commit_thread() is not enough.
>>> Without ocfs2_error(), ocfs2 could accept new IOs from userspace, t...
2023 May 08
1
[PATCH 2/2] ocfs2: add error handling path when jbd2 enter ABORT status
...;ve handled this case before, but just limit the print. But
> >>>> it seems not enough now.
> >>>
> >>> I wrote in my previous mail. Follow your idea, The code should be:
> >>>
> >>> if (is_journal_aborted(journal)) {
> >>> ocfs2_error(osb->sb, "jbd2 status: ABORT.\n"); //this line is important.
> >>> return -EROFS;
> >>> }
> >>>
> >>> Only return -EROFS then break loop in ocfs2_commit_thread() is not enough.
> >>> Without ocfs2_error(), ocfs2 could accept...
2023 May 09
1
[PATCH 2/2] ocfs2: add error handling path when jbd2 enter ABORT status
...ase before, but just limit the print. But
>>>>>> it seems not enough now.
>>>>>
>>>>> I wrote in my previous mail. Follow your idea, The code should be:
>>>>>
>>>>> if (is_journal_aborted(journal)) {
>>>>> ocfs2_error(osb->sb, "jbd2 status: ABORT.\n"); //this line is important.
>>>>> return -EROFS;
>>>>> }
>>>>>
>>>>> Only return -EROFS then break loop in ocfs2_commit_thread() is not enough.
>>>>> Without ocfs2_error(), ocfs...
2009 Jul 10
2
[PATCH 1/1] a fix of logging return value.
in ocfs2_file_aio_write(), log_exit() could don't log the value
which is really returned. this patch fixes it.
Signed-off-by: Wengang Wang <wen.gang.wang at oracle.com>
---
fs/ocfs2/file.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c
index 62442e4..a49fa44 100644
--- a/fs/ocfs2/file.c
+++ b/fs/ocfs2/file.c
@@ -1918,8
2009 Aug 03
1
[PATCH] ocfs2: Handle quota file corruption more gracefully
ocfs2_read_virt_blocks() does BUG when we try to read a block from a file
beyond its end. Since this can happen due to filesystem corruption, it
is not really an appropriate answer. Make ocfs2_read_quota_block() check
the condition and handle it by calling ocfs2_error() and returning EIO.
Reported-by: Tristan Ye <tristan.ye at oracle.com>
Signed-off-by: Jan Kara <jack at suse.cz>
---
Joel, could you please merge this fix? Thanks.
fs/ocfs2/quota_global.c | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/fs/ocfs2/quot...
2008 Oct 15
1
[PATCH] ocfs2: Wrap inode block reads in a dedicated function.
...+int ocfs2_validate_inode_block(struct super_block *sb,
> + struct buffer_head *bh)
> +{
> + int rc = -EINVAL;
> + struct ocfs2_dinode *di = (struct ocfs2_dinode *)bh->b_data;
> +
> + BUG_ON(!buffer_uptodate(bh));
> +
> + if (!OCFS2_IS_VALID_DINODE(di)) {
> + ocfs2_error(sb, "Invalid dinode #%llu: signature = %.*s\n",
> + (unsigned long long)bh->b_blocknr, 7,
> + di->i_signature);
> + goto bail;
> + }
> +
> + if (le64_to_cpu(di->i_blkno) != bh->b_blocknr) {
> + ocfs2_error(sb, "Invalid dinode #%llu: i_bl...
2006 Aug 15
0
[git patches] ocfs2 updates
...eck_group_descriptor(struct super_block *sb,
+ struct ocfs2_dinode *di,
+ struct ocfs2_group_desc *gd)
+{
+ unsigned int max_bits;
+
+ if (!OCFS2_IS_VALID_GROUP_DESC(gd)) {
+ OCFS2_RO_ON_INVALID_GROUP_DESC(sb, gd);
+ return -EIO;
+ }
+
+ if (di->i_blkno != gd->bg_parent_dinode) {
+ ocfs2_error(sb, "Group descriptor # %llu has bad parent "
+ "pointer (%llu, expected %llu)",
+ (unsigned long long)le64_to_cpu(gd->bg_blkno),
+ (unsigned long long)le64_to_cpu(gd->bg_parent_dinode),
+ (unsigned long long)le64_to_cpu(di->i_blkno));
+ return...
2023 Apr 30
3
[PATCH 2/2] ocfs2: add error handling path when jbd2 enter ABORT status
...urnal.c
+++ b/fs/ocfs2/journal.c
@@ -312,11 +312,16 @@ static int ocfs2_commit_cache(struct ocfs2_super *osb)
status = jbd2_journal_flush(journal->j_journal, 0);
jbd2_journal_unlock_updates(journal->j_journal);
if (status < 0) {
+ if (is_journal_aborted(journal->j_journal)) {
+ ocfs2_error(osb->sb, "jbd2 status: ABORT.\n");
+ goto reset;
+ }
up_write(&journal->j_trans_barrier);
mlog_errno(status);
goto finally;
}
+reset:
ocfs2_inc_trans_id(journal);
flushed = atomic_read(&journal->j_num_trans);
diff --git a/fs/ocfs2/localalloc.c b/fs/o...
2013 Oct 21
1
Kernel BUG in ocfs2_get_clusters_nocache
...fs2_get_clusters_nocache (fs/ocfs2/extent_map.c:475).
470 goto out_hole;
471 }
472
473 rec = &el->l_recs[i];
474
475 BUG_ON(v_cluster < le32_to_cpu(rec->e_cpos));
476
477 if (!rec->e_blkno) {
478 ocfs2_error(inode->i_sb, "Inode %lu has bad extent "
479 "record (%u, %u, 0)", inode->i_ino,
This happend the second time but I don't have a reproducer.
It is a KVM host with a dual Primary DRBD/OCFS2 System.
Kernel is 3.11.4
Thanks!
Cheers,
Davi...
2009 Feb 13
44
[PATCH 0/40] ocfs2: Detach ocfs2 metadata I/O from struct inode
The following series of patches attempts to detach metadata I/O from
struct inode. They are currently tied together pretty tightly.
Metadata reads happen via the ocfs2_read_blocks() functions, writes via
both jbd2 and ocfs2_write_blocks().
- Each inode has a cache of associated metadata blocks stored on its
ip_metadata_cache member. The ocfs2_read/write_blocks() functions
take a struct
2015 Oct 14
1
Ocfs2-devel Digest, Vol 138, Issue 31 review
...lan, I intend to create a small utility or extend fsck.ocfs2
> to fix small errors such as in the inode. The input to the utility such
> as the inode can come from the kernel logs so we don't have to schedule a
> downtime for fixing small-enough errors.
>
> The patch changes the ocfs2_error to return an error. The error returned
> depends on the mount option set. If none is set, the default is to turn
> the filesystem read-only.
>
> Perhaps errors=continue is not the best option name. Historically it is
> used for making an attempt to progress in the current process...
2015 Oct 14
1
Ocfs2-devel Digest, Vol 138, Issue 31 review
...lan, I intend to create a small utility or extend fsck.ocfs2
> to fix small errors such as in the inode. The input to the utility such
> as the inode can come from the kernel logs so we don't have to schedule a
> downtime for fixing small-enough errors.
>
> The patch changes the ocfs2_error to return an error. The error returned
> depends on the mount option set. If none is set, the default is to turn
> the filesystem read-only.
>
> Perhaps errors=continue is not the best option name. Historically it is
> used for making an attempt to progress in the current process...
2023 Apr 30
2
[PATCH 1/2] ocfs2: fix missing reset j_num_trans for sync
fstest generic cases 266 272 281 trigger hanging issue when umount.
I use 266 to describe the root cause.
```
49 _dmerror_unmount
50 _dmerror_mount
51
52 echo "Compare files"
53 md5sum $testdir/file1 | _filter_scratch
54 md5sum $testdir/file2 | _filter_scratch
55
56 echo "CoW and unmount"
57 sync
58 _dmerror_load_error_table
59 urk=$($XFS_IO_PROG -f -c "pwrite
2008 Sep 02
1
[PATCH] ocfs2: Fix a bug in direct IO read.
ocfs2 will become read-only if we try to read the bytes which pass
the end of i_size. This can be easily reproduced by following steps:
1. mkfs a ocfs2 volume with bs=4k cs=4k and nosparse.
2. create a small file(say less than 100 bytes) and we will create the file
which is allocated 1 cluster.
3. read 8196 bytes from the kernel using O_DIRECT which exceeds the limit.
4. The ocfs2 volume
2009 Mar 05
3
[PATCH 0/2] ocfs2: two bug fixes about xattr and inline-data V2
Hi,
Thanks Tao and Joel's review, These are the second version of the patches.
Mark and Joel, you can correct my comments if you find they don't suitable.
thanks,
tiger
2009 Jan 30
8
[PATCH 0/7] ocfs2: Directory indexing support
The following patches implement indexed directory support in Ocfs2, mostly
according to the design doc I wrote up a while ago:
http://oss.oracle.com/osswiki/OCFS2/DesignDocs/IndexedDirectories
The patches have been rebased on top of 2.6.29-rc2. It should be trivial to
put them into merge_window. Things are what I'd call complete now. I'd like
to get these into the merge_window branch
2009 Mar 27
42
[PATCH 00/42] ocfs2: Add reflink file support. V1
Hi all,
So I have finally finished the v1 of reflink for ocfs2. It has some
bugs that I am still investigating, but the schema is almost there. So
I'd like to send it out first for review. And Tristan and I will
continue to work on the stability of the code.
The general information for reflink, please see
http://oss.oracle.com/osswiki/OCFS2/DesignDocs/Reflink.
For the design doc, please
2009 Apr 03
42
[PATCH 00/42] ocfs2: Add reflink file support. V2
Hi all,
Change from v1 to v2: bug fix and metadata/credits reservation
improvement.
The general information for reflink, please see
http://oss.oracle.com/osswiki/OCFS2/DesignDocs/Reflink.
For the design doc, please see
http://oss.oracle.com/osswiki/OCFS2/DesignDocs/RefcountTrees
http://oss.oracle.com/osswiki/OCFS2/DesignDocs/ReflinkOperation
2009 Apr 30
42
[PATCH 00/39] ocfs2: Add reflink file support. V3
Hi all,
So I have finally finished the v3 of reflink for ocfs2. The biggest
change is that we support 64bit cluster offset now(Thank Mark and Joel
for it).
[View]
http://oss.oracle.com/git/?p=tma/linux-2.6.git;a=shortlog;h=refcount
[Pull]
git://oss.oracle.com/git/tma/linux-2.6.git refcount
The general information for reflink, please see
http://oss.oracle.com/osswiki/OCFS2/DesignDocs/Reflink.