ocfs2: logging neatening
cover ocfs2: logging neatening
Joe Perches (2):
ocfs2: Logging: Remove static buffer, use vsprintf extension %pV
ocfs2: Neaten do_error, ocfs2_error and ocfs2_abort
fs/ocfs2/alloc.c | 90 +++++++++++++++++++------------------------------ fs/ocfs2/aops.c | 4 +-- fs/ocfs2/dir.c | 49 +++++++++++++-------------- fs/ocfs2/extent_map.c | 22 ++++++------ fs/ocfs2/inode.c | 18 +++++----- fs/ocfs2/journal.c | 2 +- fs/ocfs2/localalloc.c | 3 +- fs/ocfs2/move_extents.c | 5 ++- fs/ocfs2/quota_local.c | 3 +- fs/ocfs2/refcounttree.c | 53 +++++++++++++---------------- fs/ocfs2/suballoc.c | 75 +++++++++++++++++++---------------------- fs/ocfs2/super.c | 34 ++++++++++--------- fs/ocfs2/super.h | 6 ++-- fs/ocfs2/xattr.c | 35 +++++++++---------- 14 files changed, 182 insertions(+), 217 deletions(-)
Signature · 1 line
2.1.2
PATCH 1/2 ocfs2: Logging: Remove static buffer, use vsprintf extension %pV
Use the vsprintf %pV extension to avoid using a static buffer and remove the now unnecessary buffer.
--- fs/ocfs2/super.c | 34 +++++++++++++++++++--------------- 1 file changed, 19 insertions(+), 15 deletions(-)
fs/ocfs2/super.c +19 -15
@@ -2593,22 +2593,23 @@ static int ocfs2_handle_error(struct super_block *sb) } -static char error_buf[1024 ]; - -int __ocfs2_error (struct super_block *sb, -const char *function, -const char *fmt, ...) +int __ocfs2_error (struct super_block *sb,const char *function, +const char *fmt, ...) { +struct va_format vaf;va_list args;va_start (args, fmt); -vsnprintf (error_buf,sizeof (error_buf), fmt, args); -va_end (args); + + vaf.fmt = fmt; + vaf.va = &args;/* Not using mlog here because we want to show the actual * function the error came from. */ -printk (KERN_CRIT "OCFS2: ERROR (device %s): %s: %s\n" , - sb->s_id, function, error_buf); +printk (KERN_CRIT "OCFS2: ERROR (device %s): %s: %pV\n" , + sb->s_id, function, &vaf); + +va_end (args);return ocfs2_handle_error (sb); }
@@ -2616,18 +2617,21 @@ int __ocfs2_error(struct super_block *sb,/* Handle critical errors. This is intentionally more drastic than * ocfs2_handle_error, so we only use for things like journal errors, * etc. */ -void __ocfs2_abort (struct super_block * sb, -const char *function, +void __ocfs2_abort (struct super_block *sb,const char *function,const char *fmt, ...) { +struct va_format vaf;va_list args;va_start (args, fmt); -vsnprintf (error_buf,sizeof (error_buf), fmt, args); -va_end (args); -printk (KERN_CRIT "OCFS2: abort (device %s): %s: %s\n" , - sb->s_id, function, error_buf); + vaf.fmt = fmt; + vaf.va = &args; + +printk (KERN_CRIT "OCFS2: abort (device %s): %s: %pV\n" , + sb->s_id, function, &vaf); + +va_end (args);/* We don't have the cluster support yet to go straight to * hard readonly in here. Until then, we want to keep
Signature · 1 line
2.1.2
PATCH 2/2 ocfs2: Neaten do_error, ocfs2_error and ocfs2_abort
In reply to Joe PerchesThese uses sometimes do and sometimes don't have '\n' terminations. Make the uses consistently use '\n' terminations and remove the newline from the functions.
Miscellanea:
o Coalesce formats
o Realign arguments
--- fs/ocfs2/alloc.c | 90 +++++++++++++++++++------------------------------ fs/ocfs2/aops.c | 4 +-- fs/ocfs2/dir.c | 49 +++++++++++++-------------- fs/ocfs2/extent_map.c | 22 ++++++------ fs/ocfs2/inode.c | 18 +++++----- fs/ocfs2/journal.c | 2 +- fs/ocfs2/localalloc.c | 3 +- fs/ocfs2/move_extents.c | 5 ++- fs/ocfs2/quota_local.c | 3 +- fs/ocfs2/refcounttree.c | 53 +++++++++++++---------------- fs/ocfs2/suballoc.c | 75 +++++++++++++++++++---------------------- fs/ocfs2/super.c | 4 +-- fs/ocfs2/super.h | 6 ++-- fs/ocfs2/xattr.c | 35 +++++++++---------- 14 files changed, 165 insertions(+), 204 deletions(-)
fs/ocfs2/alloc.c +34 -56
@@ -909,27 +909,25 @@ static int ocfs2_validate_extent_block(struct super_block *sb,if (!OCFS2_IS_VALID_EXTENT_BLOCK (eb)) { rc =ocfs2_error (sb, -"Extent block #%llu has bad signature %.*s" , - (unsigned long long )bh->b_blocknr,7 , - eb->h_signature); +"Extent block #%llu has bad signature %.*s\n" , + (unsigned long long )bh->b_blocknr,7 , + eb->h_signature); goto bail; }if (le64_to_cpu (eb->h_blkno) != bh->b_blocknr) { rc =ocfs2_error (sb, -"Extent block #%llu has an invalid h_blkno " -"of %llu" , - (unsigned long long )bh->b_blocknr, - (unsigned long long )le64_to_cpu (eb->h_blkno)); +"Extent block #%llu has an invalid h_blkno of %llu\n" , + (unsigned long long )bh->b_blocknr, + (unsigned long long )le64_to_cpu (eb->h_blkno)); goto bail; }if (le32_to_cpu (eb->h_fs_generation) !=OCFS2_SB (sb)->fs_generation) { rc =ocfs2_error (sb, -"Extent block #%llu has an invalid " -"h_fs_generation of #%u" , - (unsigned long long )bh->b_blocknr, -le32_to_cpu (eb->h_fs_generation)); +"Extent block #%llu has an invalid h_fs_generation of #%u\n" , + (unsigned long long )bh->b_blocknr, +le32_to_cpu (eb->h_fs_generation)); goto bail; } bail:
@@ -1446,8 +1444,7 @@ static int ocfs2_find_branch_target(struct ocfs2_extent_tree *et,while (le16_to_cpu (el->l_tree_depth) >1 ) {if (le16_to_cpu (el->l_next_free_rec) ==0 ) {ocfs2_error (ocfs2_metadata_cache_get_super (et->et_ci), -"Owner %llu has empty " -"extent list (next_free_rec == 0)" , +"Owner %llu has empty extent list (next_free_rec == 0)\n" , (unsigned long long )ocfs2_metadata_cache_owner (et->et_ci)); status = -EIO ; goto bail;
@@ -1456,9 +1453,7 @@ static int ocfs2_find_branch_target(struct ocfs2_extent_tree *et, blkno =le64_to_cpu (el->l_recs[i].e_blkno);if (!blkno) {ocfs2_error (ocfs2_metadata_cache_get_super (et->et_ci), -"Owner %llu has extent " -"list where extent # %d has no physical " -"block start" , +"Owner %llu has extent list where extent # %d has no physical block start\n" , (unsigned long long )ocfs2_metadata_cache_owner (et->et_ci), i); status = -EIO ; goto bail;
@@ -1788,8 +1783,7 @@ static int __ocfs2_find_path(struct ocfs2_caching_info *ci,while (el->l_tree_depth) {if (le16_to_cpu (el->l_next_free_rec) ==0 ) {ocfs2_error (ocfs2_metadata_cache_get_super (ci), -"Owner %llu has empty extent list at " -"depth %u\n" , +"Owner %llu has empty extent list at depth %u\n" , (unsigned long long )ocfs2_metadata_cache_owner (ci),le16_to_cpu (el->l_tree_depth)); ret = -EROFS ;
@@ -1814,8 +1808,7 @@ static int __ocfs2_find_path(struct ocfs2_caching_info *ci, blkno =le64_to_cpu (el->l_recs[i].e_blkno);if (blkno ==0 ) {ocfs2_error (ocfs2_metadata_cache_get_super (ci), -"Owner %llu has bad blkno in extent list " -"at depth %u (index %d)\n" , +"Owner %llu has bad blkno in extent list at depth %u (index %d)\n" , (unsigned long long )ocfs2_metadata_cache_owner (ci),le16_to_cpu (el->l_tree_depth), i); ret = -EROFS ;
@@ -1836,8 +1829,7 @@ static int __ocfs2_find_path(struct ocfs2_caching_info *ci,if (le16_to_cpu (el->l_next_free_rec) >le16_to_cpu (el->l_count)) { ocfs2_error(ocfs2_metadata_cache_get_super(ci), - "Owner %llu has bad count in extent list " - "at block %llu (next free=%u, count=%u)\n", + "Owner %llu has bad count in extent list at block %llu (next free=%u, count=%u)\n", (unsigned long long)ocfs2_metadata_cache_owner(ci), (unsigned long long)bh->b_blocknr, le16_to_cpu(el->l_next_free_rec),
@@ -2116,8 +2108,7 @@ static int ocfs2_rotate_subtree_right(handle_t *handle,if (left_el->l_next_free_rec != left_el->l_count) {ocfs2_error (ocfs2_metadata_cache_get_super (et->et_ci), -"Inode %llu has non-full interior leaf node %llu" -"(next free = %u)" , +"Inode %llu has non-full interior leaf node %llu (next free = %u)\n" , (unsigned long long )ocfs2_metadata_cache_owner (et->et_ci), (unsigned long long )left_leaf_bh->b_blocknr,le16_to_cpu (left_el->l_next_free_rec));
@@ -2256,8 +2247,7 @@ int ocfs2_find_cpos_for_left_leaf(struct super_block *sb,* If we got here, we never found a valid node where * the tree indicated one should be. */ -ocfs2_error (sb, -"Invalid extent tree at extent block %llu\n" , +ocfs2_error (sb,"Invalid extent tree at extent block %llu\n" , (unsigned long long )blkno); ret = -EROFS ; goto out;
@@ -2872,8 +2862,7 @@ int ocfs2_find_cpos_for_right_leaf(struct super_block *sb,* If we got here, we never found a valid node where * the tree indicated one should be. */ -ocfs2_error (sb, -"Invalid extent tree at extent block %llu\n" , +ocfs2_error (sb,"Invalid extent tree at extent block %llu\n" , (unsigned long long )blkno); ret = -EROFS ; goto out;
@@ -3199,7 +3188,7 @@ rightmost_no_delete:if (le16_to_cpu (el->l_next_free_rec) ==0 ) { ret = -EIO ;ocfs2_error (ocfs2_metadata_cache_get_super (et->et_ci), -"Owner %llu has empty extent block at %llu" , +"Owner %llu has empty extent block at %llu\n" , (unsigned long long )ocfs2_metadata_cache_owner (et->et_ci), (unsigned long long )le64_to_cpu (eb->h_blkno)); goto out;
@@ -3929,7 +3918,7 @@ static void ocfs2_adjust_rightmost_records(handle_t *handle, next_free =le16_to_cpu (el->l_next_free_rec);if (next_free ==0 ) {ocfs2_error (ocfs2_metadata_cache_get_super (et->et_ci), -"Owner %llu has a bad extent list" , +"Owner %llu has a bad extent list\n" , (unsigned long long )ocfs2_metadata_cache_owner (et->et_ci)); ret = -EIO ;return ;
@@ -4351,10 +4340,7 @@ ocfs2_figure_merge_contig_type(struct ocfs2_extent_tree *et, bh =path_leaf_bh (left_path); eb = (struct ocfs2_extent_block *)bh->b_data;ocfs2_error (sb, -"Extent block #%llu has an " -"invalid l_next_free_rec of " -"%d. It should have " -"matched the l_count of %d" , +"Extent block #%llu has an invalid l_next_free_rec of %d. It should have matched the l_count of %d\n" , (unsigned long long )le64_to_cpu (eb->h_blkno),le16_to_cpu (new_el->l_next_free_rec),le16_to_cpu (new_el->l_count));
@@ -4406,8 +4392,7 @@ ocfs2_figure_merge_contig_type(struct ocfs2_extent_tree *et, bh =path_leaf_bh (right_path); eb = (struct ocfs2_extent_block *)bh->b_data;ocfs2_error (sb, -"Extent block #%llu has an " -"invalid l_next_free_rec of %d" , +"Extent block #%llu has an invalid l_next_free_rec of %d\n" , (unsigned long long )le64_to_cpu (eb->h_blkno),le16_to_cpu (new_el->l_next_free_rec)); status = -EINVAL ;
@@ -4960,10 +4945,9 @@ leftright: split_index =ocfs2_search_extent_list (el, cpos);if (split_index ==-1 ) {ocfs2_error (ocfs2_metadata_cache_get_super (et->et_ci), -"Owner %llu has an extent at cpos %u " -"which can no longer be found.\n" , - (unsigned long long )ocfs2_metadata_cache_owner (et->et_ci), - cpos); +"Owner %llu has an extent at cpos %u which can no longer be found\n" , + (unsigned long long )ocfs2_metadata_cache_owner (et->et_ci), + cpos); ret = -EROFS ; goto out; }
@@ -5143,10 +5127,9 @@ int ocfs2_change_extent_flag(handle_t *handle, index =ocfs2_search_extent_list (el, cpos);if (index ==-1 ) {ocfs2_error (sb, -"Owner %llu has an extent at cpos %u which can no " -"longer be found.\n" , - (unsigned long long ) -ocfs2_metadata_cache_owner (et->et_ci), cpos); +"Owner %llu has an extent at cpos %u which can no longer be found\n" , + (unsigned long long )ocfs2_metadata_cache_owner (et->et_ci), + cpos); ret = -EROFS ; goto out; }
@@ -5213,9 +5196,7 @@ int ocfs2_mark_extent_written(struct inode *inode, cpos, len, phys);if (!ocfs2_writes_unwritten_extents (OCFS2_SB (inode->i_sb))) { -ocfs2_error (inode->i_sb,"Inode %llu has unwritten extents " -"that are being written to, but the feature bit " -"is not set in the super block." , +ocfs2_error (inode->i_sb,"Inode %llu has unwritten extents that are being written to, but the feature bit is not set in the super block\n" , (unsigned long long )OCFS2_I (inode)->ip_blkno); ret = -EROFS ; goto out;
@@ -5499,8 +5480,7 @@ int ocfs2_remove_extent(handle_t *handle, index =ocfs2_search_extent_list (el, cpos);if (index ==-1 ) {ocfs2_error (ocfs2_metadata_cache_get_super (et->et_ci), -"Owner %llu has an extent at cpos %u which can no " -"longer be found.\n" , +"Owner %llu has an extent at cpos %u which can no longer be found\n" , (unsigned long long )ocfs2_metadata_cache_owner (et->et_ci), cpos); ret = -EROFS ;
@@ -5565,7 +5545,7 @@ int ocfs2_remove_extent(handle_t *handle, index =ocfs2_search_extent_list (el, cpos);if (index ==-1 ) {ocfs2_error (ocfs2_metadata_cache_get_super (et->et_ci), -"Owner %llu: split at cpos %u lost record." , +"Owner %llu: split at cpos %u lost record\n" , (unsigned long long )ocfs2_metadata_cache_owner (et->et_ci), cpos); ret = -EROFS ;
@@ -5581,8 +5561,7 @@ int ocfs2_remove_extent(handle_t *handle,ocfs2_rec_clusters (el, rec);if (rec_range != trunc_range) {ocfs2_error (ocfs2_metadata_cache_get_super (et->et_ci), -"Owner %llu: error after split at cpos %u" -"trunc len %u, existing record is (%u,%u)" , +"Owner %llu: error after split at cpos %u trunc len %u, existing record is (%u,%u)\n" , (unsigned long long )ocfs2_metadata_cache_owner (et->et_ci), cpos, len,le32_to_cpu (rec->e_cpos),ocfs2_rec_clusters (el, rec));
@@ -7093,8 +7072,8 @@ start:* to check it up here before changing the tree. */ if (root_el->l_tree_depth && rec->e_int_clusters ==0 ) { -ocfs2_error (inode->i_sb,"Inode %lu has an empty " -"extent record, depth %u\n" , inode->i_ino, +ocfs2_error (inode->i_sb,"Inode %lu has an empty extent record, depth %u\n" , + inode->i_ino,le16_to_cpu (root_el->l_tree_depth)); status = -EROFS ; goto bail;
@@ -7189,8 +7168,7 @@ int ocfs2_truncate_inline(struct inode *inode, struct buffer_head *di_bh, !(le16_to_cpu(di->i_dyn_features) & OCFS2_INLINE_DATA_FL) || !ocfs2_supports_inline_data(osb)) { ocfs2_error(inode->i_sb, - "Inline data flags for inode %llu don't agree! " - "Disk: 0x%x, Memory: 0x%x, Superblock: 0x%x\n", + "Inline data flags for inode %llu don't agree! Disk: 0x%x, Memory: 0x%x, Superblock: 0x%x\n", (unsigned long long)OCFS2_I(inode)->ip_blkno, le16_to_cpu(di->i_dyn_features), OCFS2_I(inode)->ip_dyn_features,
fs/ocfs2/aops.c +2 -2
@@ -227,7 +227,7 @@ int ocfs2_read_inline_data(struct inode *inode, struct page *page,struct ocfs2_dinode *di = (struct ocfs2_dinode *)di_bh->b_data;if (!(le16_to_cpu (di->i_dyn_features) &OCFS2_INLINE_DATA_FL )) { -ocfs2_error (inode->i_sb,"Inode %llu lost inline data flag" , +ocfs2_error (inode->i_sb,"Inode %llu lost inline data flag\n" , (unsigned long long )OCFS2_I (inode)->ip_blkno);return -EROFS ; }
@@ -237,7 +237,7 @@ int ocfs2_read_inline_data(struct inode *inode, struct page *page,if (size >PAGE_CACHE_SIZE || size >ocfs2_max_inline_data_with_xattr (inode->i_sb, di)) {ocfs2_error (inode->i_sb, -"Inode %llu has with inline data has bad size: %Lu" , +"Inode %llu has with inline data has bad size: %Lu\n" , (unsigned long long )OCFS2_I (inode)->ip_blkno, (unsigned long long )size);return -EROFS ;
fs/ocfs2/dir.c +23 -26
88 lines not on this page · raw message
fs/ocfs2/extent_map.c +12 -10
@@ -305,8 +305,8 @@ static int ocfs2_last_eb_is_empty(struct inode *inode,if (el->l_tree_depth) {ocfs2_error (inode->i_sb, -"Inode %lu has non zero tree depth in " -"leaf block %llu\n" , inode->i_ino, +"Inode %lu has non zero tree depth in leaf block %llu\n" , + inode->i_ino, (unsigned long long )eb_bh->b_blocknr); ret = -EROFS ; goto out;
@@ -441,8 +441,8 @@ static int ocfs2_get_clusters_nocache(struct inode *inode,if (el->l_tree_depth) {ocfs2_error (inode->i_sb, -"Inode %lu has non zero tree depth in " -"leaf block %llu\n" , inode->i_ino, +"Inode %lu has non zero tree depth in leaf block %llu\n" , + inode->i_ino, (unsigned long long )eb_bh->b_blocknr); ret = -EROFS ; goto out;
@@ -475,8 +475,9 @@ static int ocfs2_get_clusters_nocache(struct inode *inode,BUG_ON (v_cluster <le32_to_cpu (rec->e_cpos));if (!rec->e_blkno) { -ocfs2_error (inode->i_sb,"Inode %lu has bad extent " -"record (%u, %u, 0)" , inode->i_ino, +ocfs2_error (inode->i_sb, +"Inode %lu has bad extent record (%u, %u, 0)\n" , + inode->i_ino,le32_to_cpu (rec->e_cpos),ocfs2_rec_clusters (el, rec)); ret = -EROFS ;
@@ -564,8 +565,8 @@ int ocfs2_xattr_get_clusters(struct inode *inode, u32 v_cluster,if (el->l_tree_depth) {ocfs2_error (inode->i_sb, -"Inode %lu has non zero tree depth in " -"xattr leaf block %llu\n" , inode->i_ino, +"Inode %lu has non zero tree depth in xattr leaf block %llu\n" , + inode->i_ino, (unsigned long long )eb_bh->b_blocknr); ret = -EROFS ; goto out;
@@ -582,8 +583,9 @@ int ocfs2_xattr_get_clusters(struct inode *inode, u32 v_cluster,BUG_ON (v_cluster <le32_to_cpu (rec->e_cpos));if (!rec->e_blkno) { -ocfs2_error (inode->i_sb,"Inode %lu has bad extent " -"record (%u, %u, 0) in xattr" , inode->i_ino, +ocfs2_error (inode->i_sb, +"Inode %lu has bad extent record (%u, %u, 0) in xattr\n" , + inode->i_ino,le32_to_cpu (rec->e_cpos),ocfs2_rec_clusters (el, rec)); ret = -EROFS ;
fs/ocfs2/inode.c +9 -9
@@ -1353,31 +1353,31 @@ int ocfs2_validate_inode_block(struct super_block *sb,if (!OCFS2_IS_VALID_DINODE (di)) { rc =ocfs2_error (sb,"Invalid dinode #%llu: signature = %.*s\n" , - (unsigned long long )bh->b_blocknr,7 , - di->i_signature); + (unsigned long long )bh->b_blocknr,7 , + di->i_signature); goto bail; }if (le64_to_cpu (di->i_blkno) != bh->b_blocknr) { rc =ocfs2_error (sb,"Invalid dinode #%llu: i_blkno is %llu\n" , - (unsigned long long )bh->b_blocknr, - (unsigned long long )le64_to_cpu (di->i_blkno)); + (unsigned long long )bh->b_blocknr, + (unsigned long long )le64_to_cpu (di->i_blkno)); goto bail; }if (!(di->i_flags &cpu_to_le32 (OCFS2_VALID_FL ))) { rc =ocfs2_error (sb, -"Invalid dinode #%llu: OCFS2_VALID_FL not set\n" , - (unsigned long long )bh->b_blocknr); +"Invalid dinode #%llu: OCFS2_VALID_FL not set\n" , + (unsigned long long )bh->b_blocknr); goto bail; }if (le32_to_cpu (di->i_fs_generation) !=OCFS2_SB (sb)->fs_generation) { rc =ocfs2_error (sb, -"Invalid dinode #%llu: fs_generation is %u\n" , - (unsigned long long )bh->b_blocknr, -le32_to_cpu (di->i_fs_generation)); +"Invalid dinode #%llu: fs_generation is %u\n" , + (unsigned long long )bh->b_blocknr, +le32_to_cpu (di->i_fs_generation)); goto bail; }
fs/ocfs2/journal.c +1 -1
@@ -374,7 +374,7 @@ handle_t *ocfs2_start_trans(struct ocfs2_super *osb, int max_buffs)mlog_errno (PTR_ERR (handle));if (is_journal_aborted (journal)) { -ocfs2_abort (osb->sb,"Detected aborted journal" ); +ocfs2_abort (osb->sb,"Detected aborted journal\n" ); handle =ERR_PTR (-EROFS ); } }else {
fs/ocfs2/localalloc.c +1 -2
@@ -665,8 +665,7 @@ int ocfs2_reserve_local_alloc_bits(struct ocfs2_super *osb,#ifdef CONFIG_OCFS2_DEBUG_FS if (le32_to_cpu (alloc->id1.bitmap1.i_used) !=ocfs2_local_alloc_count_bits (alloc)) { -ocfs2_error (osb->sb,"local alloc inode %llu says it has " -"%u used bits, but a count shows %u" , +ocfs2_error (osb->sb,"local alloc inode %llu says it has %u used bits, but a count shows %u\n" , (unsigned long long )le64_to_cpu (alloc->i_blkno),le32_to_cpu (alloc->id1.bitmap1.i_used),ocfs2_local_alloc_count_bits (alloc));
fs/ocfs2/move_extents.c +2 -3
@@ -100,9 +100,8 @@ static int __ocfs2_move_extent(handle_t *handle, index =ocfs2_search_extent_list (el, cpos);if (index ==-1 ) { ret =ocfs2_error (inode->i_sb, -"Inode %llu has an extent at cpos %u which can no " -"longer be found.\n" , - (unsigned long long )ino, cpos); +"Inode %llu has an extent at cpos %u which can no longer be found\n" , + (unsigned long long )ino, cpos); goto out; }
fs/ocfs2/quota_local.c +1 -2
@@ -138,8 +138,7 @@ static int ocfs2_read_quota_block(struct inode *inode, u64 v_block,if (i_size_read (inode) >> inode->i_sb->s_blocksize_bits <= v_block) {ocfs2_error (inode->i_sb, -"Quota file %llu is probably corrupted! Requested " -"to read block %Lu but file has size only %Lu\n" , +"Quota file %llu is probably corrupted! Requested to read block %Lu but file has size only %Lu\n" , (unsigned long long )OCFS2_I (inode)->ip_blkno, (unsigned long long )v_block, (unsigned long long )i_size_read (inode));
fs/ocfs2/refcounttree.c +23 -30
105 lines not on this page · raw message
fs/ocfs2/suballoc.c +35 -40
156 lines not on this page · raw message
fs/ocfs2/super.c +2 -2
@@ -2606,7 +2606,7 @@ int __ocfs2_error(struct super_block *sb, const char *function,/* Not using mlog here because we want to show the actual * function the error came from. */ -printk (KERN_CRIT "OCFS2: ERROR (device %s): %s: %pV\n" , +printk (KERN_CRIT "OCFS2: ERROR (device %s): %s: %pV" , sb->s_id, function, &vaf);va_end (args);
@@ -2628,7 +2628,7 @@ void __ocfs2_abort(struct super_block *sb, const char *function, vaf.fmt = fmt; vaf.va = &args; -printk (KERN_CRIT "OCFS2: abort (device %s): %s: %pV\n" , +printk (KERN_CRIT "OCFS2: abort (device %s): %s: %pV" , sb->s_id, function, &vaf);va_end (args);
fs/ocfs2/super.h +4 -2
@@ -35,13 +35,15 @@ __printf(3, 4)int __ocfs2_error (struct super_block *sb,const char *function,const char *fmt, ...); -#define ocfs2_error(sb, fmt, args...) __ocfs2_error(sb, __PRETTY_FUNCTION__, fmt, ##args) +#define ocfs2_error (sb, fmt, ...) \ + __ocfs2_error(sb, __PRETTY_FUNCTION__, fmt, ##__VA_ARGS__) __printf(3, 4)void __ocfs2_abort (struct super_block *sb,const char *function,const char *fmt, ...); -#define ocfs2_abort(sb, fmt, args...) __ocfs2_abort(sb, __PRETTY_FUNCTION__, fmt, ##args) +#define ocfs2_abort (sb, fmt, ...) \ + __ocfs2_abort(sb, __PRETTY_FUNCTION__, fmt, ##__VA_ARGS__)/* * Void signal blockers, because in-kernel sigprocmask() only fails
fs/ocfs2/xattr.c +16 -19
@@ -500,26 +500,23 @@ static int ocfs2_validate_xattr_block(struct super_block *sb,if (!OCFS2_IS_VALID_XATTR_BLOCK (xb)) {return ocfs2_error (sb, -"Extended attribute block #%llu has bad " -"signature %.*s" , - (unsigned long long )bh->b_blocknr,7 , - xb->xb_signature); +"Extended attribute block #%llu has bad signature %.*s\n" , + (unsigned long long )bh->b_blocknr,7 , + xb->xb_signature); }if (le64_to_cpu (xb->xb_blkno) != bh->b_blocknr) {return ocfs2_error (sb, -"Extended attribute block #%llu has an " -"invalid xb_blkno of %llu" , - (unsigned long long )bh->b_blocknr, - (unsigned long long )le64_to_cpu (xb->xb_blkno)); +"Extended attribute block #%llu has an invalid xb_blkno of %llu\n" , + (unsigned long long )bh->b_blocknr, + (unsigned long long )le64_to_cpu (xb->xb_blkno)); }if (le32_to_cpu (xb->xb_fs_generation) !=OCFS2_SB (sb)->fs_generation) {return ocfs2_error (sb, -"Extended attribute block #%llu has an invalid " -"xb_fs_generation of #%u" , - (unsigned long long )bh->b_blocknr, -le32_to_cpu (xb->xb_fs_generation)); +"Extended attribute block #%llu has an invalid xb_fs_generation of #%u\n" , + (unsigned long long )bh->b_blocknr, +le32_to_cpu (xb->xb_fs_generation)); }return 0 ;
@@ -3692,9 +3689,9 @@ static int ocfs2_xattr_get_rec(struct inode *inode,if (el->l_tree_depth) { ret =ocfs2_error (inode->i_sb, -"Inode %lu has non zero tree depth in " -"xattr tree block %llu\n" , inode->i_ino, - (unsigned long long )eb_bh->b_blocknr); +"Inode %lu has non zero tree depth in xattr tree block %llu\n" , + inode->i_ino, + (unsigned long long )eb_bh->b_blocknr); goto out; } }
@@ -3709,10 +3706,10 @@ static int ocfs2_xattr_get_rec(struct inode *inode, }if (!e_blkno) { - ret =ocfs2_error (inode->i_sb,"Inode %lu has bad extent " -"record (%u, %u, 0) in xattr" , inode->i_ino, -le32_to_cpu (rec->e_cpos), -ocfs2_rec_clusters (el, rec)); + ret =ocfs2_error (inode->i_sb,"Inode %lu has bad extent record (%u, %u, 0) in xattr\n" , + inode->i_ino, +le32_to_cpu (rec->e_cpos), +ocfs2_rec_clusters (el, rec)); goto out; }
Signature · 1 line
2.1.2
Re: [Ocfs2-devel] [PATCH 2/2] ocfs2: Neaten do_error, ocfs2_error and ocfs2_abort
Quoted 3 lines · On Thu, 26 Mar 2015 20:07:08 -0700 Joe Perches <[email protected]> wrote:
These uses sometimes do and sometimes don't have '\n' terminations. Make the uses consistently use '\n' terminations and remove the newline from the functions.
This is going to take a while to merge, as it's backed up behind a pile of needs-more-reviewing ocfs2 patches. Namely:
#ocfs2-trusted-xattr-missing-cap_sys_admin-check.patch: breaks userspace? ocfs2-trusted-xattr-missing-cap_sys_admin-check.patch
#
ocfs2-flush-inode-data-to-disk-and-free-inode-when-i_count-becomes-zero.patch
#
add-errors=continue.patch
acknowledge-return-value-of-ocfs2_error.patch
clear-the-rest-of-the-buffers-on-error.patch
#
ocfs2-fix-a-tiny-case-that-inode-can-not-removed.patch
#
#ocfs2-use-64bit-variables-to-track-heartbeat-time.patch: acks?
ocfs2-use-64bit-variables-to-track-heartbeat-time.patch
#
#ocfs2-call-ocfs2_journal_access_di-before-ocfs2_journal_dirty-in-ocfs2_write_end_nolock.patch: acks? Mark wants changes. Mark has list of notes ocfs2-call-ocfs2_journal_access_di-before-ocfs2_journal_dirty-in-ocfs2_write_end_nolock.patch
#
#ocfs2-avoid-access-invalid-address-when-read-o2dlm-debug-messages.patch: acks? Mark has issues ocfs2-avoid-access-invalid-address-when-read-o2dlm-debug-messages.patch ocfs2-avoid-access-invalid-address-when-read-o2dlm-debug-messages-v3.patch
Re: [Ocfs2-devel] [PATCH 2/2] ocfs2: Neaten do_error, ocfs2_error and ocfs2_abort
Quoted 8 lines · Andrew Morton
Quoted 3 lines · On Thu, 26 Mar 2015 20:07:08 -0700 Joe Perches <[email protected]> wrote:
These uses sometimes do and sometimes don't have '\n' terminations. Make the uses consistently use '\n' terminations and remove the newline from the functions.
This is going to take a while to merge, as it's backed up behind a pile of needs-more-reviewing ocfs2 patches.
Thanks, no worries, this one's a trivial neatening patch.