search for: ocfs2_dinode

Displaying 20 results from an estimated 70 matches for "ocfs2_dinode".

2009 Jul 21
1
[PATCH 1/1] ocfs2: adds mlogs to aops.c -V2
...mlog(ML_ERROR, "Size %llu, clusters %u\n", + (unsigned long long)i_size_read(inode), + OCFS2_I(inode)->ip_clusters); dump_stack(); } @@ -217,11 +219,17 @@ int ocfs2_read_inline_data(struct inode *inode, struct page *page, void *kaddr; loff_t size; struct ocfs2_dinode *di = (struct ocfs2_dinode *)di_bh->b_data; + int status = 0; + + mlog_entry("(%llu, %lu, %llu)\n", + (unsigned long long)OCFS2_I(inode)->ip_blkno, + page->index, (unsigned long long)di_bh->b_blocknr); if (!(le16_to_cpu(di->i_dyn_features) & OCFS2_INLINE_DAT...
2009 Feb 20
3
[PATCH 1/1] OCFS2: anti stale inode for nfs (V4)
...return ret; } + +/* reads(hit disk) the inode specified by blkno to get suballoc_slot + * and suballoc_bit + * */ +static int ocfs2_get_suballoc_slot_bit(struct ocfs2_super *osb, u64 blkno, + u16 *suballoc_slot, u16 *suballoc_bit) +{ + int status; + struct buffer_head *inode_bh = NULL; + struct ocfs2_dinode *inode_fe; + + mlog_entry("blkno: %llu\n", blkno); + + /* dirty read disk */ + status = ocfs2_read_blocks_sync(osb, blkno, 1, &inode_bh); + if (status < 0) + goto bail; + + inode_fe = (struct ocfs2_dinode *) inode_bh->b_data; + if (!OCFS2_IS_VALID_DINODE(inode_fe)) { + status...
2008 Oct 15
1
[PATCH] ocfs2: Wrap inode block reads in a dedicated function.
Ooops, last one didn't CC ocfs2-devel. On Mon, Oct 13, 2008 at 06:16:15PM -0700, Joel Becker wrote: > @@ -232,25 +231,17 @@ int ocfs2_populate_inode(struct inode *inode, struct ocfs2_dinode *fe, > ocfs2_mount_local(osb) || !ocfs2_stack_supports_plocks()) > use_plocks = 0; > > - /* this means that read_inode cannot create a superblock inode > - * today. change if needed. */ > - if (!OCFS2_IS_VALID_DINODE(fe) || > - !(fe->i_flags & cpu_to_le3...
2009 Jul 13
1
[PATCH 1/1] adds mlogs to aops.c
...mlog(ML_ERROR, "Size %llu, clusters %u\n", + (unsigned long long)i_size_read(inode), + OCFS2_I(inode)->ip_clusters); dump_stack(); } @@ -217,11 +219,16 @@ int ocfs2_read_inline_data(struct inode *inode, struct page *page, void *kaddr; loff_t size; struct ocfs2_dinode *di = (struct ocfs2_dinode *)di_bh->b_data; + int status = 0; + + mlog_entry("(%llu, %lu, %llu)\n", OCFS2_I(inode)->ip_blkno, + page->index, (unsigned long long)di_bh->b_blocknr); if (!(le16_to_cpu(di->i_dyn_features) & OCFS2_INLINE_DATA_FL)) { ocfs2_error(in...
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 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 Jan 06
1
[PATCH] ocfs2: Add statistics for the checksum and ecc operations.
...heck_stats */ +#include "blockcheck.h" + /* Most user visible OCFS2 inodes will have very few pieces of * metadata, but larger files (including bitmaps, etc) must be taken * into account when designing an access scheme. We allow a small @@ -297,6 +300,7 @@ struct ocfs2_super struct ocfs2_dinode *local_alloc_copy; struct ocfs2_quota_recovery *quota_rec; + struct ocfs2_blockcheck_stats osb_ecc_stats; struct ocfs2_alloc_stats alloc_stats; char dev_str[20]; /* "major,minor" of the device */ diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c index 43ed113..518b08a 100644 ---...
2007 Aug 21
1
[git patch] dmesg + fstype ocfs2
...t;gfs2_fs.h" +#include "ocfs2_fs.h" /* * Slightly cleaned up version of jfs_superblock to @@ -312,6 +313,19 @@ static int gfs2_image(const void *buf, unsigned long long *bytes) return 0; } +static int ocfs2_image(const void *buf, unsigned long long *bytes) +{ + const struct ocfs2_dinode *sb = + (const struct ocfs2_dinode *)buf; + + if (!memcmp(sb->i_signature, OCFS2_SUPER_BLOCK_SIGNATURE, + sizeof(OCFS2_SUPER_BLOCK_SIGNATURE) - 1)) { + *bytes = 0; + return 1; + } + return 0; +} + struct imagetype { off_t block; const char name[12]; @@ -340,6 +354,7 @@ static struct im...
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.
2009 Jul 21
1
(no subject)
...mlog(ML_ERROR, "Size %llu, clusters %u\n", + (unsigned long long)i_size_read(inode), + OCFS2_I(inode)->ip_clusters); dump_stack(); } @@ -217,11 +219,17 @@ int ocfs2_read_inline_data(struct inode *inode, struct page *page, void *kaddr; loff_t size; struct ocfs2_dinode *di = (struct ocfs2_dinode *)di_bh->b_data; + int status = 0; + + mlog_entry("(%llu, %lu, %llu)\n", + (unsigned long long)OCFS2_I(inode)->ip_blkno, + page->index, (unsigned long long)di_bh->b_blocknr); if (!(le16_to_cpu(di->i_dyn_features) & OCFS2_INLINE_DAT...
2009 Apr 21
0
[PATCH] ocfs2: Fix some printk() warnings.
...goto bail; } diff --git a/fs/ocfs2/suballoc.c b/fs/ocfs2/suballoc.c index eb21dbb..8439f6b 100644 --- a/fs/ocfs2/suballoc.c +++ b/fs/ocfs2/suballoc.c @@ -2197,18 +2197,20 @@ static int ocfs2_get_suballoc_slot_bit(struct ocfs2_super *osb, u64 blkno, struct buffer_head *inode_bh = NULL; struct ocfs2_dinode *inode_fe; - mlog_entry("blkno: %llu\n", blkno); + mlog_entry("blkno: %llu\n", (unsigned long long)blkno); /* dirty read disk */ status = ocfs2_read_blocks_sync(osb, blkno, 1, &inode_bh); if (status < 0) { - mlog(ML_ERROR, "read block %llu failed %d\n&quot...
2007 Nov 16
8
[PATCH 0/6] Add online resize for ocfs2-tools,take 1
Add online resize in tunefs.ocfs2 so that user can increase the volume when it is mounted.
2013 Nov 22
0
[PATCH Resend] ocfs2: free allocated clusters if error occurs after ocfs2_claim_clusters
...ocalalloc.c @@ -781,6 +781,46 @@ bail: return status; } +int ocfs2_free_local_alloc_bits(struct ocfs2_super *osb, + handle_t *handle, + struct ocfs2_alloc_context *ac, + u32 bit_off, + u32 num_bits) +{ + int status, start; + struct inode *local_alloc_inode; + void *bitmap; + struct ocfs2_dinode *alloc; + struct ocfs2_local_alloc *la; + + BUG_ON(ac->ac_which != OCFS2_AC_USE_LOCAL); + + local_alloc_inode = ac->ac_inode; + alloc = (struct ocfs2_dinode *) osb->local_alloc_bh->b_data; + la = OCFS2_LOCAL_ALLOC(alloc); + + bitmap = la->la_bitmap; + start = bit_off - le32_to_cpu(la...
2009 Feb 26
3
[PATCH 0/3] ocfs2-1.4: Backport inode alloc from mainline.
Hi all, this patch set are the backport of inode alloc improvement from mainline to ocfs2-1.4. the patches are almost the same excpet one thing: Joel has added JBD2 support to ocfs2, so he has added "max_blocks" to alloc_context and add a new function "ocfs2_reserve_clusters_with_limit". We don't have that in ocfs2-1.4. So there are some great difference in patch 2.
2009 Apr 30
0
[PATCH] ocfs2: Add statistics for the checksum and ecc operations.
...heck_stats */ +#include "blockcheck.h" + /* Most user visible OCFS2 inodes will have very few pieces of * metadata, but larger files (including bitmaps, etc) must be taken * into account when designing an access scheme. We allow a small @@ -295,6 +298,7 @@ struct ocfs2_super struct ocfs2_dinode *local_alloc_copy; struct ocfs2_quota_recovery *quota_rec; + struct ocfs2_blockcheck_stats osb_ecc_stats; struct ocfs2_alloc_stats alloc_stats; char dev_str[20]; /* "major,minor" of the device */ diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c index 79ff8d9..bed01d2 100644 ---...
2013 Nov 21
1
[PATCH] ocfs2: free allocated clusters if error occurs after ocfs2_claim_clusters
...ocalalloc.c @@ -781,6 +781,46 @@ bail: return status; } +int ocfs2_free_local_alloc_bits(struct ocfs2_super *osb, + handle_t *handle, + struct ocfs2_alloc_context *ac, + u32 bit_off, + u32 num_bits) +{ + int status, start; + struct inode *local_alloc_inode; + void *bitmap; + struct ocfs2_dinode *alloc; + struct ocfs2_local_alloc *la; + + BUG_ON(ac->ac_which != OCFS2_AC_USE_LOCAL); + + local_alloc_inode = ac->ac_inode; + alloc = (struct ocfs2_dinode *) osb->local_alloc_bh->b_data; + la = OCFS2_LOCAL_ALLOC(alloc); + + bitmap = la->la_bitmap; + start = bit_off - le32_to_cpu(la...
2009 May 01
1
[GIT PULL] ocfs2 fixes
...dir entry, new dir dir entry, dir entry update for renaming diff --git a/fs/ocfs2/namei.c b/fs/ocfs2/namei.c index 2220f93..33464c6 100644 --- a/fs/ocfs2/namei.c +++ b/fs/ocfs2/namei.c @@ -1025,10 +1025,8 @@ static int ocfs2_rename(struct inode *old_dir, struct inode *orphan_dir = NULL; struct ocfs2_dinode *newfe = NULL; char orphan_name[OCFS2_ORPHAN_NAMELEN + 1]; - struct buffer_head *orphan_entry_bh = NULL; struct buffer_head *newfe_bh = NULL; struct buffer_head *old_inode_bh = NULL; - struct buffer_head *insert_entry_bh = NULL; struct ocfs2_super *osb = NULL; u64 newfe_blkno, old_de_ino;...
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 06
2
[PATCH 1/1] OCFS2: anti stale inode for nfs (for 1.4git)
..._TYPE_NFS_SYNC: + c = 'Y'; + break; default: c = '\0'; } diff --git a/fs/ocfs2/suballoc.c b/fs/ocfs2/suballoc.c index 228bf1c..40ead64 100644 --- a/fs/ocfs2/suballoc.c +++ b/fs/ocfs2/suballoc.c @@ -1886,3 +1886,160 @@ static inline void ocfs2_debug_suballoc_inode(struct ocfs2_dinode *fe) (unsigned long long)fe->id2.i_chain.cl_recs[i].c_blkno); } } + +/* reads(hit disk) the inode specified by blkno to get suballoc_slot + * and suballoc_bit + * */ +static int ocfs2_get_suballoc_slot_bit(struct ocfs2_super *osb, u64 blkno, + u16 *suballoc_slot, u16 *suba...