search for: ocfs2_iget

Displaying 19 results from an estimated 19 matches for "ocfs2_iget".

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 ocfs2_find_inode_args args; + int status; mlog_entry("(blkno = %llu)\n", (unsigned long long)blkno); @@ -142,7 +143,12 @@ struct inode *ocfs2_iget(struct ocfs2_su * afterwards. */ if (...
2006 Oct 31
3
ocfs2 error messages
...Is this anything to be concerned with? kernel: (4074,0):ocfs2_populate_inode:234 ERROR: Invalid dinode: i_ino=1293597, i_blkno=1293597, signature = INODE01, flags = 0x0 kernel: (4074,0):ocfs2_read_locked_inode:389 ERROR: populate inode failed! i_blkno=1293597, i_ino=1293597 kernel: (4074,0):ocfs2_iget:131 ERROR: status = -116 kernel: (4074,0):ocfs2_iget:141 ERROR: status = -116 kernel: (4074,0):ocfs2_get_dentry:63 ERROR: status = -116 This is a three node cluster, no other error messages on any of the other nodes. System Information RHEL 4U4 2.6.9-42.0.2 kernel ocfs2console-1.2.1-1...
2008 Aug 20
1
Weird messages at kernel.log
...:ocfs2_populate_inode:236 ERROR: > Invalid dinode: i_ino=9311700, i_blkno=9311700, signature = INODE01, flags > = 0x0 > Aug 19 19:34:58 nodo1 kernel: (2821,0):ocfs2_read_locked_inode:393 ERROR: > populate failed! i_blkno=9311700, i_ino=9311700 > Aug 19 19:34:58 nodo1 kernel: (2821,0):ocfs2_iget:131 ERROR: status = -116 > Aug 19 19:34:58 nodo1 kernel: (2821,0):ocfs2_iget:141 ERROR: status = -116 > Aug 19 19:34:58 nodo1 kernel: (2821,0):ocfs2_get_dentry:63 ERROR: status = > -116 > > Because I'm experiencing a random hang of a node I need to confirm it's > not rela...
2009 Mar 03
3
[PATCH 1/1] OCFS2: anti stale inode for nfs (V6)
...it's stale. if the bit is set, we then check generation as the existing code does. actually we have to read out the inode in question from disk(not cache) first to know its alloc slot(tells alloc inode) and allot bit(tells alloc group). and if its not stale(by above logic) we read it out using ocfs2_iget(). the second read should from cache. and also we have to add a per superblock nfs_sync_lock to cover the lock for alloc inode and that for inode in question. this is because ocfs2_get_dentry() and ocfs2_delete_inode() lock on them in reverse order. nfs_sync_lock is locked in EX mode in ocfs2_get_...
2009 Mar 06
2
[PATCH 1/1] OCFS2: anti stale inode for nfs (for 1.4git)
...it's stale. if the bit is set, we then check generation as the existing code does. actually we have to read out the inode in question from disk(not cache) first to know its alloc slot(tells alloc inode) and allot bit(tells alloc group). and if its not stale(by above logic) we read it out using ocfs2_iget(). the second read should from cache. and also we have to add a per superblock nfs_sync_lock to cover the lock for alloc inode and that for inode in question. this is because ocfs2_get_dentry() and ocfs2_delete_inode() lock on them in reverse order. nfs_sync_lock is locked in EX mode in ocfs2_get_...
2009 Mar 05
0
[PATCH 1/1] OCFS2: anti stale inode for nfs (V6.2)
...it's stale. if the bit is set, we then check generation as the existing code does. actually we have to read out the inode in question from disk(not cache) first to know its alloc slot(tells alloc inode) and allot bit(tells alloc group). and if its not stale(by above logic) we read it out using ocfs2_iget(). the second read should from cache. and also we have to add a per superblock nfs_sync_lock to cover the lock for alloc inode and that for inode in question. this is because ocfs2_get_dentry() and ocfs2_delete_inode() lock on them in reverse order. nfs_sync_lock is locked in EX mode in ocfs2_get_...
2009 Feb 17
1
[PATCH 1/1] OCFS2: anti stale inode for nfs (V3)
...then it's stale. if the bit is set, we then check generation as the existing code. actually we have to read out the inode in question from disk(not cache) first to know its alloc slot(tells alloc inode) and allot bit(tells alloc group). and if its not stale(by above logic) we read it out using ocfs2_iget(). the second read should from cache. and also we have to add a per superblock nfs_sync_lock to cover the lock for alloc inode and that for inode in question. this is because ocfs2_get_dentry() and ocfs2_delete_inode() lock on them in reverse order. nfs_sync_lock is locked in EX mode in ocfs2_get_...
2009 Mar 06
0
[PATCH 1/1] OCFS2: anti stale inode for nfs (V6.3)
...it's stale. if the bit is set, we then check generation as the existing code does. actually we have to read out the inode in question from disk(not cache) first to know its alloc slot(tells alloc inode) and allot bit(tells alloc group). and if its not stale(by above logic) we read it out using ocfs2_iget(). the second read should from cache. and also we have to add a per superblock nfs_sync_lock to cover the lock for alloc inode and that for inode in question. this is because ocfs2_get_dentry() and ocfs2_delete_inode() lock on them in reverse order. nfs_sync_lock is locked in EX mode in ocfs2_get_...
2009 Feb 27
2
[PATCH 1/1] OCFS2: anti stale inode for nfs (V5)
...found in-memory inode, goes to check generation */ + if (inode) + goto check_gen; + + /* takes nfs_sync_lock in EX mode */ + status = ocfs2_nfs_sync_lock(osb, 1); + if (status < 0) { + mlog(ML_ERROR, "getting nfs sync lock(EX) failed %d\n", status); + goto check_err; } - inode = ocfs2_iget(OCFS2_SB(sb), handle->ih_blkno, 0, 0); + status = ocfs2_test_inode_bit(osb, blkno, &set); + if (status < 0) { + if (status == -EINVAL) { + /* meta block never be re-allocated as data block. + * nfs gives us wrong blkno, we return ESTALE though */ + mlog(0, "test inode bit fai...
2009 Feb 20
3
[PATCH 1/1] OCFS2: anti stale inode for nfs (V4)
...* nfsd gives us wrong blkno */ + status = -EEXIST; + } else { + mlog(ML_ERROR, "test inode bit failed %d\n", status); + } + goto unlock_nfs_sync; + } + + /* allocate bit is clear, inode is a stale inode */ + if (!set) { + status = -ESTALE; + goto unlock_nfs_sync; } - inode = ocfs2_iget(OCFS2_SB(sb), handle->ih_blkno, 0, 0); + inode = ocfs2_iget(osb, blkno, 0, 0); - if (IS_ERR(inode)) - return (void *)inode; +unlock_nfs_sync: + ocfs2_nfs_sync_unlock(osb, 1); +check_err: + if (status < 0) { + if (status == -ESTALE) { + mlog(0, "stale inode ino: %llu generation: %...
2007 Sep 19
1
[PATCH 06/15] ocfs2: Remove open coded readdir()
...ype) +{ + struct ocfs2_orphan_filldir_priv *p = priv; + struct inode *iter; + + if (name_len == 1 && !strncmp(".", name, 1)) + return 0; + if (name_len == 2 && !strncmp("..", name, 2)) + return 0; + + /* Skip bad inodes so that recovery can continue */ + iter = ocfs2_iget(p->osb, ino, + OCFS2_FI_FLAG_ORPHAN_RECOVERY); + if (IS_ERR(iter)) + return 0; + + mlog(0, "queue orphan %llu\n", + (unsigned long long)OCFS2_I(iter)->ip_blkno); + /* No locking is required for the next_orphan queue as there + * is only ever a single process doing orphan...
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
2014 Aug 21
1
Cluster blocked, so as to reboot all nodes to avoid it. Is there any patchs for it? Thanks.
...nel: [82025.281922] [<ffffffffa0562493>] ? ocfs2_inode_lock_res_init+0x73/0x160 [ocfs2] Aug 20 10:05:43 server211 kernel: [82025.281934] [<ffffffffa05658ca>] ocfs2_inode_lock_full_nested+0x13a/0xb80 [ocfs2] Aug 20 10:05:43 server211 kernel: [82025.281958] [<ffffffffa0576571>] ? ocfs2_iget+0x121/0x7d0 [ocfs2] Aug 20 10:05:43 server211 kernel: [82025.281971] [<ffffffffa057a9f2>] ocfs2_journal_init+0x92/0x480 [ocfs2] Aug 20 10:05:43 server211 kernel: [82025.281986] [<ffffffffa05bc3f1>] ocfs2_fill_super+0x15a1/0x25a0 [ocfs2] Aug 20 10:05:43 server211 kernel: [82025.281992]...
2014 Aug 21
1
Cluster blocked, so as to reboot all nodes to avoid it. Is there any patchs for it? Thanks.
...nel: [82025.281922] [<ffffffffa0562493>] ? ocfs2_inode_lock_res_init+0x73/0x160 [ocfs2] Aug 20 10:05:43 server211 kernel: [82025.281934] [<ffffffffa05658ca>] ocfs2_inode_lock_full_nested+0x13a/0xb80 [ocfs2] Aug 20 10:05:43 server211 kernel: [82025.281958] [<ffffffffa0576571>] ? ocfs2_iget+0x121/0x7d0 [ocfs2] Aug 20 10:05:43 server211 kernel: [82025.281971] [<ffffffffa057a9f2>] ocfs2_journal_init+0x92/0x480 [ocfs2] Aug 20 10:05:43 server211 kernel: [82025.281986] [<ffffffffa05bc3f1>] ocfs2_fill_super+0x15a1/0x25a0 [ocfs2] Aug 20 10:05:43 server211 kernel: [82025.281992]...
2008 Jun 24
2
Invalid argument while mounting
...this error. /etc/fstab: /dev/sdd1 /u02 ocfs2 _netdev,datavolume,nointr 0 0 Tail of dmesg: ocfs2_dlm: Nodes in domain ("A7C5B0954A074B36A99739A15F640F2A"): 0 (11528,3):ocfs2_read_locked_inode:374 ERROR: Invalid dinode #0: signature = (11528,3):ocfs2_iget:131 ERROR: status = -116 (11528,3):ocfs2_iget:141 ERROR: status = -116 (11528,3):_ocfs2_get_system_file_inode:122 ERROR: status = -116 (11528,3):ocfs2_init_local_system_inodes:273 ERROR: status=-22, sysfile=7, slot=0 (11528,3):ocfs2_mount_volume:1092 ERROR: status = -22 ocfs2: Unmounting device (8,...
2012 Jun 14
0
[ocfs2-announce] OCFS2 1.4.10-1 released
...fs2: Avoid livelock in ocfs2_readpage ocfs2: Fix deadlock when allocating page ocfs2: commit transactions in error cases ocfs2: make direntry invalid when deleting it ocfs2: Skip mount recovery for hard ro mounts ocfs2: Initialize data_ac might be used uninitialize ocfs2: Little refactoring against ocfs2_iget ocfs2: optimize ocfs2_check_dir_entry with unlikely() annotations ocfs2: Release buffer_head in case of error in ocfs2_double_lock ocfs2: cluster Pin the remote node item in configfs ocfs2: validate bg_free_bits_count after update ocfs2: Use cpu_to_le16 for e_leaf_clusters in ocfs2_bg_discontig_add...
2008 Oct 23
2
[PATCH 1/1] OCFS2: fix for nfs getting stale inode.
...atic struct dentry *ocfs2_get_dentry(s return ERR_PTR(-ESTALE); } + /* lock this disk block against updating it from other nodes */ + status = ocfs2_dealloc_lock(OCFS2_SB(sb), (u64)handle->ih_blkno, 0); + if (status < 0) { + mlog_errno(status); + return ERR_PTR(status); + } inode = ocfs2_iget(OCFS2_SB(sb), handle->ih_blkno); + ocfs2_dealloc_unlock(OCFS2_SB(sb), (u64)handle->ih_blkno, 0); if (IS_ERR(inode)) return (void *)inode; Index: fs/ocfs2/inode.c =================================================================== --- fs/ocfs2/inode.c (revision 3101) +++ fs/ocfs2/inode....
2010 Nov 03
2
[PATCH 1/2] Ocfs2: Add a new code 'OCFS2_INFO_FREEINODE' for o2info ioctl.
The new code is dedicated to calculate free inodes number of all inode_allocs, then return the info to userpace in terms of an array. Specially, flag 'OCFS2_INFO_FL_NON_COHERENT', manipulated by '--cluster-coherent' from userspace, is now going to be involved. setting the flag on means no cluster coherency considered, usually, userspace tools choose none-coherency strategy by
2009 Mar 17
33
[git patches] Ocfs2 updates for 2.6.30
Hi, The following patches comprise the bulk of Ocfs2 updates for the 2.6.30 merge window. Aside from larger, more involved fixes, we're adding the following features, which I will describe in the order their patches are mailed. Sunil's exported some more state to our debugfs files, and consolidated some other aspects of our debugfs infrastructure. This will further aid us in debugging