public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] v3 inodes are only valid on crc-enabled filesystems.
@ 2015-08-16  0:14 Roger Willcocks
  2015-08-16  0:20 ` Roger Willcocks
  2015-08-16  0:42 ` Dave Chinner
  0 siblings, 2 replies; 6+ messages in thread
From: Roger Willcocks @ 2015-08-16  0:14 UTC (permalink / raw)
  To: xfs

Fix an xfs_repair regression reported by Leslie Rhorer where a bad
(v3) inode version number was not reset.

Signed-off-by: Roger Willcocks <roger@filmlight.ltd.uk>
---
db/check.c             | 2 +-
include/xfs_dinode.h   | 3 ++-
libxfs/xfs_inode_buf.c | 2 +-
repair/dinode.c        | 7 +++----
repair/prefetch.c      | 2 +-
5 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/db/check.c b/db/check.c
index c4c972f..810fa55 100644
--- a/db/check.c
+++ b/db/check.c
@@ -2637,7 +2637,7 @@ process_inode(
		error++;
		return;
	}
-	if (!XFS_DINODE_GOOD_VERSION(idic.di_version)) {
+	if (!XFS_DINODE_GOOD_VERSION(&mp->m_sb, idic.di_version)) {
		if (isfree || v)
			dbprintf(_("bad version number %#x for inode %lld\n"),
				idic.di_version, ino);
diff --git a/include/xfs_dinode.h b/include/xfs_dinode.h
index 623bbe8..40700e6 100644
--- a/include/xfs_dinode.h
+++ b/include/xfs_dinode.h
@@ -19,7 +19,8 @@
#define	__XFS_DINODE_H__

#define	XFS_DINODE_MAGIC		0x494e	/* 'IN' */
-#define XFS_DINODE_GOOD_VERSION(v)	((v) >= 1 && (v) <= 3)
+#define XFS_DINODE_GOOD_VERSION(sb, v) \
+	(xfs_sb_version_hascrc(sb) ? ((v) == 3) : ((v) == 1 || (v) == 2))

typedef struct xfs_timestamp {
	__be32		t_sec;		/* timestamp seconds */
diff --git a/libxfs/xfs_inode_buf.c b/libxfs/xfs_inode_buf.c
index de16ed9..e9cc74c 100644
--- a/libxfs/xfs_inode_buf.c
+++ b/libxfs/xfs_inode_buf.c
@@ -78,7 +78,7 @@ xfs_inode_buf_verify(
		dip = (struct xfs_dinode *)xfs_buf_offset(bp,
					(i << mp->m_sb.sb_inodelog));
		di_ok = dip->di_magic == cpu_to_be16(XFS_DINODE_MAGIC) &&
-			    XFS_DINODE_GOOD_VERSION(dip->di_version);
+			XFS_DINODE_GOOD_VERSION(&mp->m_sb, dip->di_version);
		if (unlikely(XFS_TEST_ERROR(!di_ok, mp,
						XFS_ERRTAG_ITOBP_INOTOBP,
						XFS_RANDOM_ITOBP_INOTOBP))) {
diff --git a/repair/dinode.c b/repair/dinode.c
index 035212c..29a7a19 100644
--- a/repair/dinode.c
+++ b/repair/dinode.c
@@ -129,7 +129,7 @@ clear_dinode_core(struct xfs_mount *mp, xfs_dinode_t *dinoc, xfs_ino_t ino_num)
		dinoc->di_magic = cpu_to_be16(XFS_DINODE_MAGIC);
	}

-	if (!XFS_DINODE_GOOD_VERSION(dinoc->di_version) ||
+	if (!XFS_DINODE_GOOD_VERSION(&mp->m_sb, dinoc->di_version) ||
	    (!fs_inode_nlink && dinoc->di_version > 1))  {
		__dirty_no_modify_ret(dirty);
		if (xfs_sb_version_hascrc(&mp->m_sb))
@@ -2331,9 +2331,8 @@ process_dinode_int(xfs_mount_t *mp,
		}
	}

-	if (!XFS_DINODE_GOOD_VERSION(dino->di_version) ||
-	    (!fs_inode_nlink && dino->di_version > 1) ||
-	    (xfs_sb_version_hascrc(&mp->m_sb) && dino->di_version < 3) )  {
+	if (!XFS_DINODE_GOOD_VERSION(&mp->m_sb, dino->di_version) ||
+	    (!fs_inode_nlink && dino->di_version > 1) ) {
		retval = 1;
		if (!uncertain)
			do_warn(_("bad version number 0x%x on inode %" PRIu64 "%c"),
diff --git a/repair/prefetch.c b/repair/prefetch.c
index 7ea0d36..ad7082c 100644
--- a/repair/prefetch.c
+++ b/repair/prefetch.c
@@ -419,7 +419,7 @@ pf_read_inode_dirs(
		if (be16_to_cpu(dino->di_magic) != XFS_DINODE_MAGIC)
			continue;

-		if (!XFS_DINODE_GOOD_VERSION(dino->di_version) ||
+		if (!XFS_DINODE_GOOD_VERSION(&mp->m_sb, dino->di_version) ||
				(!fs_inode_nlink && dino->di_version > 1))
			continue;

-- 
2.5.0.rc0

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] v3 inodes are only valid on crc-enabled filesystems.
  2015-08-16  0:14 [PATCH] v3 inodes are only valid on crc-enabled filesystems Roger Willcocks
@ 2015-08-16  0:20 ` Roger Willcocks
  2015-08-16  0:42 ` Dave Chinner
  1 sibling, 0 replies; 6+ messages in thread
From: Roger Willcocks @ 2015-08-16  0:20 UTC (permalink / raw)
  To: xfs; +Cc: Roger Willcocks

With this patch, Leslie’s filesystem now reports a Metadata corruption as well as an invalid inode:

Phase 3 - for each AG...
        - scan and clear agi unlinked lists...
        - 00:41:25: scanning agi unlinked lists - 32 of 32 allocation groups done
        - process known inodes and perform inode discovery...
        - agno = 0
...
        - agno = 29
Metadata corruption detected at block 0x9e7833810/0x2000
        - agno = 11
bad version number 0x3 on inode 124656869424
bad version number 0x3 on inode 124656869424, resetting version number
        - agno = 12
        - agno = 13
        - agno = 14
        - 00:41:26: process known inodes and inode discovery - 42368 of 42368 inodes done

—
Roger


On 16 Aug 2015, at 01:14, Roger Willcocks <roger@filmlight.ltd.uk> wrote:

> Fix an xfs_repair regression reported by Leslie Rhorer where a bad
> (v3) inode version number was not reset.
> 
> Signed-off-by: Roger Willcocks <roger@filmlight.ltd.uk>
> ---
> db/check.c             | 2 +-
> include/xfs_dinode.h   | 3 ++-
> libxfs/xfs_inode_buf.c | 2 +-
> repair/dinode.c        | 7 +++----
> repair/prefetch.c      | 2 +-
> 5 files changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/db/check.c b/db/check.c
> index c4c972f..810fa55 100644
> --- a/db/check.c
> +++ b/db/check.c
> @@ -2637,7 +2637,7 @@ process_inode(
> 		error++;
> 		return;
> 	}
> -	if (!XFS_DINODE_GOOD_VERSION(idic.di_version)) {
> +	if (!XFS_DINODE_GOOD_VERSION(&mp->m_sb, idic.di_version)) {
> 		if (isfree || v)
> 			dbprintf(_("bad version number %#x for inode %lld\n"),
> 				idic.di_version, ino);
> diff --git a/include/xfs_dinode.h b/include/xfs_dinode.h
> index 623bbe8..40700e6 100644
> --- a/include/xfs_dinode.h
> +++ b/include/xfs_dinode.h
> @@ -19,7 +19,8 @@
> #define	__XFS_DINODE_H__
> 
> #define	XFS_DINODE_MAGIC		0x494e	/* 'IN' */
> -#define XFS_DINODE_GOOD_VERSION(v)	((v) >= 1 && (v) <= 3)
> +#define XFS_DINODE_GOOD_VERSION(sb, v) \
> +	(xfs_sb_version_hascrc(sb) ? ((v) == 3) : ((v) == 1 || (v) == 2))
> 
> typedef struct xfs_timestamp {
> 	__be32		t_sec;		/* timestamp seconds */
> diff --git a/libxfs/xfs_inode_buf.c b/libxfs/xfs_inode_buf.c
> index de16ed9..e9cc74c 100644
> --- a/libxfs/xfs_inode_buf.c
> +++ b/libxfs/xfs_inode_buf.c
> @@ -78,7 +78,7 @@ xfs_inode_buf_verify(
> 		dip = (struct xfs_dinode *)xfs_buf_offset(bp,
> 					(i << mp->m_sb.sb_inodelog));
> 		di_ok = dip->di_magic == cpu_to_be16(XFS_DINODE_MAGIC) &&
> -			    XFS_DINODE_GOOD_VERSION(dip->di_version);
> +			XFS_DINODE_GOOD_VERSION(&mp->m_sb, dip->di_version);
> 		if (unlikely(XFS_TEST_ERROR(!di_ok, mp,
> 						XFS_ERRTAG_ITOBP_INOTOBP,
> 						XFS_RANDOM_ITOBP_INOTOBP))) {
> diff --git a/repair/dinode.c b/repair/dinode.c
> index 035212c..29a7a19 100644
> --- a/repair/dinode.c
> +++ b/repair/dinode.c
> @@ -129,7 +129,7 @@ clear_dinode_core(struct xfs_mount *mp, xfs_dinode_t *dinoc, xfs_ino_t ino_num)
> 		dinoc->di_magic = cpu_to_be16(XFS_DINODE_MAGIC);
> 	}
> 
> -	if (!XFS_DINODE_GOOD_VERSION(dinoc->di_version) ||
> +	if (!XFS_DINODE_GOOD_VERSION(&mp->m_sb, dinoc->di_version) ||
> 	    (!fs_inode_nlink && dinoc->di_version > 1))  {
> 		__dirty_no_modify_ret(dirty);
> 		if (xfs_sb_version_hascrc(&mp->m_sb))
> @@ -2331,9 +2331,8 @@ process_dinode_int(xfs_mount_t *mp,
> 		}
> 	}
> 
> -	if (!XFS_DINODE_GOOD_VERSION(dino->di_version) ||
> -	    (!fs_inode_nlink && dino->di_version > 1) ||
> -	    (xfs_sb_version_hascrc(&mp->m_sb) && dino->di_version < 3) )  {
> +	if (!XFS_DINODE_GOOD_VERSION(&mp->m_sb, dino->di_version) ||
> +	    (!fs_inode_nlink && dino->di_version > 1) ) {
> 		retval = 1;
> 		if (!uncertain)
> 			do_warn(_("bad version number 0x%x on inode %" PRIu64 "%c"),
> diff --git a/repair/prefetch.c b/repair/prefetch.c
> index 7ea0d36..ad7082c 100644
> --- a/repair/prefetch.c
> +++ b/repair/prefetch.c
> @@ -419,7 +419,7 @@ pf_read_inode_dirs(
> 		if (be16_to_cpu(dino->di_magic) != XFS_DINODE_MAGIC)
> 			continue;
> 
> -		if (!XFS_DINODE_GOOD_VERSION(dino->di_version) ||
> +		if (!XFS_DINODE_GOOD_VERSION(&mp->m_sb, dino->di_version) ||
> 				(!fs_inode_nlink && dino->di_version > 1))
> 			continue;
> 
> -- 
> 2.5.0.rc0
> 
> _______________________________________________
> xfs mailing list
> xfs@oss.sgi.com
> http://oss.sgi.com/mailman/listinfo/xfs
> 

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] v3 inodes are only valid on crc-enabled filesystems.
  2015-08-16  0:14 [PATCH] v3 inodes are only valid on crc-enabled filesystems Roger Willcocks
  2015-08-16  0:20 ` Roger Willcocks
@ 2015-08-16  0:42 ` Dave Chinner
  2015-08-16 11:34   ` Roger Willcocks
  1 sibling, 1 reply; 6+ messages in thread
From: Dave Chinner @ 2015-08-16  0:42 UTC (permalink / raw)
  To: Roger Willcocks; +Cc: xfs

On Sun, Aug 16, 2015 at 01:14:55AM +0100, Roger Willcocks wrote:
> Fix an xfs_repair regression reported by Leslie Rhorer where a bad
> (v3) inode version number was not reset.
> 
> Signed-off-by: Roger Willcocks <roger@filmlight.ltd.uk>
> ---
> db/check.c             | 2 +-
> include/xfs_dinode.h   | 3 ++-
> libxfs/xfs_inode_buf.c | 2 +-
> repair/dinode.c        | 7 +++----
> repair/prefetch.c      | 2 +-
> 5 files changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/db/check.c b/db/check.c
> index c4c972f..810fa55 100644
> --- a/db/check.c
> +++ b/db/check.c
> @@ -2637,7 +2637,7 @@ process_inode(
> 		error++;
> 		return;
> 	}
> -	if (!XFS_DINODE_GOOD_VERSION(idic.di_version)) {
> +	if (!XFS_DINODE_GOOD_VERSION(&mp->m_sb, idic.di_version)) {
> 		if (isfree || v)
> 			dbprintf(_("bad version number %#x for inode %lld\n"),
> 				idic.di_version, ino);
> diff --git a/include/xfs_dinode.h b/include/xfs_dinode.h
> index 623bbe8..40700e6 100644
> --- a/include/xfs_dinode.h
> +++ b/include/xfs_dinode.h
> @@ -19,7 +19,8 @@
> #define	__XFS_DINODE_H__
> 
> #define	XFS_DINODE_MAGIC		0x494e	/* 'IN' */
> -#define XFS_DINODE_GOOD_VERSION(v)	((v) >= 1 && (v) <= 3)
> +#define XFS_DINODE_GOOD_VERSION(sb, v) \
> +	(xfs_sb_version_hascrc(sb) ? ((v) == 3) : ((v) == 1 || (v) == 2))

I'd make this a static inline function so it gets type checking and
it is easier to understand the logic at a glance. i.e. something
like:

static inline bool
xfs_dinode_good_version(struct xfs_mount *mp, __uint8_t version)
{
	if (version < 1 || version > 3)
		return false;
	if (xfs_sb_version_hascrc(&mp->m_sb)) {
		if (version != 3)
			return false;
	} else if (version > 2)
		return false;

	return true;
}

Otherwise looks fine.

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] v3 inodes are only valid on crc-enabled filesystems.
  2015-08-16  0:42 ` Dave Chinner
@ 2015-08-16 11:34   ` Roger Willcocks
  0 siblings, 0 replies; 6+ messages in thread
From: Roger Willcocks @ 2015-08-16 11:34 UTC (permalink / raw)
  To: Dave Chinner; +Cc: Roger Willcocks, xfs


On 16 Aug 2015, at 01:42, Dave Chinner <david@fromorbit.com> wrote:

> On Sun, Aug 16, 2015 at 01:14:55AM +0100, Roger Willcocks wrote:
>> Fix an xfs_repair regression reported by Leslie Rhorer where a bad
>> (v3) inode version number was not reset.
>> 
>> Signed-off-by: Roger Willcocks <roger@filmlight.ltd.uk>
>> 
>> -#define XFS_DINODE_GOOD_VERSION(v)	((v) >= 1 && (v) <= 3)
>> +#define XFS_DINODE_GOOD_VERSION(sb, v) \
>> +	(xfs_sb_version_hascrc(sb) ? ((v) == 3) : ((v) == 1 || (v) == 2))
> 
> I'd make this a static inline function so it gets type checking and
> it is easier to understand the logic at a glance. i.e. something
> like:
> 
> static inline bool
> xfs_dinode_good_version(struct xfs_mount *mp, __uint8_t version)
> {
> 	if (version < 1 || version > 3)
> 		return false;
> 	if (xfs_sb_version_hascrc(&mp->m_sb)) {
> 		if (version != 3)
> 			return false;
> 	} else if (version > 2)
> 		return false;
> 
> 	return true;
> }
> 

include of xfs_dinode.h has to be moved to after the definition of
xfs_mount in libxfs.h, but that’s okay following the pattern set by
xfs_da_format.h.

Updated patch follows.

—
Roger

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] v3 inodes are only valid on crc-enabled filesystems
@ 2015-08-16 11:34 Roger Willcocks
  2015-08-18  0:30 ` Dave Chinner
  0 siblings, 1 reply; 6+ messages in thread
From: Roger Willcocks @ 2015-08-16 11:34 UTC (permalink / raw)
  To: xfs

Fix an xfs_repair regression reported by Leslie Rhorer where a bad
(v3) inode version number was not reset.

Signed-off-by: Roger Willcocks <roger@filmlight.ltd.uk>
---
db/check.c             |  2 +-
include/libxfs.h       |  2 +-
include/xfs_dinode.h   | 10 +++++++++-
libxfs/xfs_inode_buf.c |  2 +-
repair/dinode.c        |  7 +++----
repair/prefetch.c      |  2 +-
6 files changed, 16 insertions(+), 9 deletions(-)

diff --git a/db/check.c b/db/check.c
index c4c972f..b5c3b8e 100644
--- a/db/check.c
+++ b/db/check.c
@@ -2637,7 +2637,7 @@ process_inode(
		error++;
		return;
	}
-	if (!XFS_DINODE_GOOD_VERSION(idic.di_version)) {
+	if (!xfs_dinode_good_version(mp, idic.di_version)) {
		if (isfree || v)
			dbprintf(_("bad version number %#x for inode %lld\n"),
				idic.di_version, ino);
diff --git a/include/libxfs.h b/include/libxfs.h
index 962e319..450a38f 100644
--- a/include/libxfs.h
+++ b/include/libxfs.h
@@ -51,7 +51,6 @@
#include <xfs/xfs_alloc_btree.h>
#include <xfs/xfs_ialloc_btree.h>
#include <xfs/xfs_attr_sf.h>
-#include <xfs/xfs_dinode.h>
#include <xfs/xfs_inode_fork.h>
#include <xfs/xfs_inode_buf.h>
#include <xfs/xfs_alloc.h>
@@ -279,6 +278,7 @@ extern void	libxfs_rtmount_destroy (xfs_mount_t *);
 */
#include <xfs/xfs_da_format.h>
#include <xfs/xfs_da_btree.h>
+#include <xfs/xfs_dinode.h>
#include <xfs/xfs_dir2.h>

/*
diff --git a/include/xfs_dinode.h b/include/xfs_dinode.h
index 623bbe8..2079061 100644
--- a/include/xfs_dinode.h
+++ b/include/xfs_dinode.h
@@ -19,7 +19,15 @@
#define	__XFS_DINODE_H__

#define	XFS_DINODE_MAGIC		0x494e	/* 'IN' */
-#define XFS_DINODE_GOOD_VERSION(v)	((v) >= 1 && (v) <= 3)
+
+static inline bool
+xfs_dinode_good_version(struct xfs_mount *mp, __u8 version)
+{
+	if (xfs_sb_version_hascrc(&mp->m_sb))
+		return version == 3;
+
+	return version == 1 || version == 2;
+}

typedef struct xfs_timestamp {
	__be32		t_sec;		/* timestamp seconds */
diff --git a/libxfs/xfs_inode_buf.c b/libxfs/xfs_inode_buf.c
index de16ed9..c79b90b 100644
--- a/libxfs/xfs_inode_buf.c
+++ b/libxfs/xfs_inode_buf.c
@@ -78,7 +78,7 @@ xfs_inode_buf_verify(
		dip = (struct xfs_dinode *)xfs_buf_offset(bp,
					(i << mp->m_sb.sb_inodelog));
		di_ok = dip->di_magic == cpu_to_be16(XFS_DINODE_MAGIC) &&
-			    XFS_DINODE_GOOD_VERSION(dip->di_version);
+			xfs_dinode_good_version(mp, dip->di_version);
		if (unlikely(XFS_TEST_ERROR(!di_ok, mp,
						XFS_ERRTAG_ITOBP_INOTOBP,
						XFS_RANDOM_ITOBP_INOTOBP))) {
diff --git a/repair/dinode.c b/repair/dinode.c
index 035212c..b76066b 100644
--- a/repair/dinode.c
+++ b/repair/dinode.c
@@ -129,7 +129,7 @@ clear_dinode_core(struct xfs_mount *mp, xfs_dinode_t *dinoc, xfs_ino_t ino_num)
		dinoc->di_magic = cpu_to_be16(XFS_DINODE_MAGIC);
	}

-	if (!XFS_DINODE_GOOD_VERSION(dinoc->di_version) ||
+	if (!xfs_dinode_good_version(mp, dinoc->di_version) ||
	    (!fs_inode_nlink && dinoc->di_version > 1))  {
		__dirty_no_modify_ret(dirty);
		if (xfs_sb_version_hascrc(&mp->m_sb))
@@ -2331,9 +2331,8 @@ process_dinode_int(xfs_mount_t *mp,
		}
	}

-	if (!XFS_DINODE_GOOD_VERSION(dino->di_version) ||
-	    (!fs_inode_nlink && dino->di_version > 1) ||
-	    (xfs_sb_version_hascrc(&mp->m_sb) && dino->di_version < 3) )  {
+	if (!xfs_dinode_good_version(mp, dino->di_version) ||
+	    (!fs_inode_nlink && dino->di_version > 1)) {
		retval = 1;
		if (!uncertain)
			do_warn(_("bad version number 0x%x on inode %" PRIu64 "%c"),
diff --git a/repair/prefetch.c b/repair/prefetch.c
index 7ea0d36..3631ff5 100644
--- a/repair/prefetch.c
+++ b/repair/prefetch.c
@@ -419,7 +419,7 @@ pf_read_inode_dirs(
		if (be16_to_cpu(dino->di_magic) != XFS_DINODE_MAGIC)
			continue;

-		if (!XFS_DINODE_GOOD_VERSION(dino->di_version) ||
+		if (!xfs_dinode_good_version(mp, dino->di_version) ||
				(!fs_inode_nlink && dino->di_version > 1))
			continue;

-- 
2.5.0.rc0

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] v3 inodes are only valid on crc-enabled filesystems
  2015-08-16 11:34 Roger Willcocks
@ 2015-08-18  0:30 ` Dave Chinner
  0 siblings, 0 replies; 6+ messages in thread
From: Dave Chinner @ 2015-08-18  0:30 UTC (permalink / raw)
  To: Roger Willcocks; +Cc: xfs

On Sun, Aug 16, 2015 at 12:34:24PM +0100, Roger Willcocks wrote:
> Fix an xfs_repair regression reported by Leslie Rhorer where a bad
> (v3) inode version number was not reset.
> 
> Signed-off-by: Roger Willcocks <roger@filmlight.ltd.uk>

Hi Roger,

Just a FYI - the patch has mangled whitespace:
in it.

> ---
> db/check.c             |  2 +-
> include/libxfs.h       |  2 +-
> include/xfs_dinode.h   | 10 +++++++++-
> libxfs/xfs_inode_buf.c |  2 +-
> repair/dinode.c        |  7 +++----
> repair/prefetch.c      |  2 +-
> 6 files changed, 16 insertions(+), 9 deletions(-)
> 
> diff --git a/db/check.c b/db/check.c
> index c4c972f..b5c3b8e 100644
> --- a/db/check.c
> +++ b/db/check.c
> @@ -2637,7 +2637,7 @@ process_inode(
> 		error++;
> 		return;
> 	}
> -	if (!XFS_DINODE_GOOD_VERSION(idic.di_version)) {
> +	if (!xfs_dinode_good_version(mp, idic.di_version)) {
> 		if (isfree || v)
> 			dbprintf(_("bad version number %#x for inode %lld\n"),
> 				idic.di_version, ino);

All the patch hunks are missing the leading " " for non-modified
lines. I've fixed it manually, but can you make sure future patches
are not mangled?

> -- 
> 2.5.0.rc0

IMO, it's best not to use development versions of git for anything
other than testing.... ;)

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-08-18  0:38 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-16  0:14 [PATCH] v3 inodes are only valid on crc-enabled filesystems Roger Willcocks
2015-08-16  0:20 ` Roger Willcocks
2015-08-16  0:42 ` Dave Chinner
2015-08-16 11:34   ` Roger Willcocks
  -- strict thread matches above, loose matches on Subject: below --
2015-08-16 11:34 Roger Willcocks
2015-08-18  0:30 ` Dave Chinner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox