search for: is_bad_inode

Displaying 11 results from an estimated 11 matches for "is_bad_inode".

2011 Sep 05
1
Error on creating snapshots (btrfs: could not do orphan cleanup -116)
...m, and while I''m too unfamiliar with the code of btrfs to diagnose it, I''d like to share some of the observations as they appear to be of importance: The failure happens when btrfs_orphan_cleanup calls btrfs_iget to get the inode and it returns ERR_PTR(-ESTALE). This happens when is_bad_inode(inode) is true. However, after the call to btrfs_iget there is an explicit code path for the case when is_bad_inode(inode) is true (line 2393). This code path would *never ever* get executed unless something happening in another thread can affect the return value between the two calls. I believe th...
2001 Aug 13
0
(no subject)
...n a patch to update ext3 with the same changes that went into ext2 2.2.17 and 2.2.18, which include your NFS changes. > Support the read_inode super_operation and > 1/ recognise if the inode number refers to a currently active inode > or not > 2a/ if not, must return an is_bad_inode() inode. The (2a - return bad_inode for deleted inodes) step unfortunately breaks ext3 recovery. It is somewhat difficult to fix, because one of the ext3 recovery steps involves cleaning up "orphan" inodes - inodes which were previously unlinked but held open by a process, so not delete...
2001 Aug 13
0
(no subject)
...;... I haven't looked at ext3 or played with it but in order for a filesystem to work with knfsd (in it's current form) it must: Support the read_inode super_operation and 1/ recognise if the inode number refers to a currently active inode or not 2a/ if not, must return an is_bad_inode() inode. 2b/ if so must provide a completely filled-in inode (nfs doesn't for example. ext2 does, ext3 almost certainly does). 3/ The "delete_inode" super_operation must cope gracefully with being given an is_bad_inode. 4/ Should keep a "generati...
2011 Sep 21
3
[PATCH] Btrfs: fix orphan cleanup regression
...inode, means we actually succeeded in - * removing the inode, but not the orphan record, which means - * we need to manually delete the orphan since iput will just - * do a destroy_inode + * Inode is already gone but the orphan item is still there, + * kill the orphan item. */ - if (is_bad_inode(inode)) { - trans = btrfs_start_transaction(root, 0); + if (ret == -ESTALE) { + trans = btrfs_start_transaction(root, 1); if (IS_ERR(trans)) { ret = PTR_ERR(trans); goto out; } - btrfs_orphan_del(trans, inode); + ret = btrfs_del_orphan_item(trans, root, + found_k...
2009 Feb 20
2
[PATCH 1/1] OCFS2: add error check for ocfs2_read_locked_inode() call
add error check for ocfs2_read_locked_inode() call. Signed-off-by: Wengang Wang <wen.gang.wang at oracle.com> -- Index: inode.c =================================================================== --- inode.c (revision 149) +++ inode.c (working copy) @@ -118,6 +118,7 @@ struct inode *ocfs2_iget(struct ocfs2_su struct inode *inode = NULL; struct super_block *sb = osb->sb; struct
2002 Feb 14
1
[BUG] [PATCH]: handling bad inodes in 2.4.x kernels
...ikely in fs/namei.c, open_namei() - at least i fixed my machine here with this: --- linux-2.4.17-orig/fs/namei.c Wed Oct 17 23:46:29 2001 +++ linux-2.4.17-uml/fs/namei.c Fri Feb 8 02:53:36 2002 @@ -1052,6 +1052,11 @@ error = -ENOENT; if (!dentry->d_inode) goto exit_dput; + + error = -EIO; + if (is_bad_inode(dentry->d_inode)) + goto exit_dput; + if (dentry->d_inode->i_op && dentry->d_inode->i_op->follow_link) goto do_link; an open() does not make any sense on a bad inode so i see no reason for not breaking the branch at this point. any comments? please let me know if you'...
2006 Dec 29
3
[git patches] ocfs2 fixes
Hi Linus, Here are some 2.6.20 fixes for ocfs2. The patch by Zhen Wei isn't really a fix, but a very small amount of support for a feature which is mostly implemented in ocfs2-tools. Considering it's just a single attribute export via configfs, I'd say it's pretty safe to merge. Please pull from 'upstream-linus' branch of
2002 Oct 07
9
FS corruption; HTREE-related?
Over the last two days we've been seeing a fair bit of this: ---- # ls -laR > /dev/null ... ls: ./server2/b/user/bxyz/392.: Input/output error ---- This is with the latest htree patches applied to 2.4.19, and latest e2fsprogs-test, on a dual AMD system, with 5x73GB SCSI drives on a MegaRAID controller. We're using the gcc 2.96 that comes with RH7.3. esfsck shows "Inodes that
2012 Sep 17
13
[PATCH 1/2 v3] Btrfs: use flag EXTENT_DEFRAG for snapshot-aware defrag
We''re going to use this flag EXTENT_DEFRAG to indicate which range belongs to defragment so that we can implement snapshow-aware defrag: We set the EXTENT_DEFRAG flag when dirtying the extents that need defragmented, so later on writeback thread can differentiate between normal writeback and writeback started by defragmentation. This patch is used for the latter one. Originally patch
2009 Aug 24
0
[PATCH] Btrfs: proper metadata -ENOSPC handling
...node, u64 start, u64 end) } trans = btrfs_join_transaction(root, 1); + BUG_ON(IS_ERR(trans)); if (!ordered_extent) ordered_extent = btrfs_lookup_ordered_extent(inode, start); @@ -1981,7 +1990,9 @@ void btrfs_orphan_cleanup(struct btrfs_root *root) * do a destroy_inode */ if (is_bad_inode(inode)) { + /* 1 item for the orphan entry */ trans = btrfs_start_transaction(root, 1); + BUG_ON(IS_ERR(trans)); btrfs_orphan_del(trans, inode); btrfs_end_transaction(trans, root); iput(inode); @@ -2337,7 +2348,16 @@ static int btrfs_unlink(struct inode *dir, struct dentry *dent...
2008 Dec 22
56
[git patches] Ocfs2 patches for merge window, batch 2/3
Hi, This is the second batch of Ocfs2 patches intended for the merge window. The 1st batch were sent out previously: http://lkml.org/lkml/2008/12/19/280 The bulk of this set is comprised of Jan Kara's patches to add quota support to Ocfs2. Many of the quota patches are to generic code, which I carried to make merging of the Ocfs2 support easier. All of the non-ocfs2 patches should have