All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ben Myers <bpm@sgi.com>
To: Dave Chinner <david@fromorbit.com>
Cc: xfs@oss.sgi.com
Subject: Re: [PATCH 3/9] xfs: add CRC checks to the AGF
Date: Thu, 21 Feb 2013 16:53:05 -0600	[thread overview]
Message-ID: <20130221225305.GT22182@sgi.com> (raw)
In-Reply-To: <1358774760-21841-4-git-send-email-david@fromorbit.com>

Dave,

Just some minor nits.

On Tue, Jan 22, 2013 at 12:25:54AM +1100, Dave Chinner wrote:
> From: Dave Chinner <dchinner@redhat.com>
> 
> THe AGF already has some self identifying fields (e.g. the sequence
  The

> number) so we only need to add the uuid to it to identify the
> filesystem it belongs to. The location is fixed based on the
> sequence number, so there's no need to add a block number, either.
> 
> Hence the only additional fields are the CRC and LSN fields. These
> are unlogged, so place some space between the end of the logged
> fields and them so that future expansion of the AGF for legged
							  logged

> fields can be placed adjacent to the existing logged fields and
> hence not complicate the field-derived range based logging we
> currently have.
> 
> Based originally on a patch from myself, modified further by
> Christoph Hellwig and then modified again to fit into the
> verifier structure with additional fields by myself. The multiple
> signed-off-by tags indicate the age and history of this patch.
> 
> Signed-off-by: Dave Chinner <dgc@sgi.com>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Signed-off-by: Dave Chinner <dchinner@redhat.com>
> ---
>  fs/xfs/xfs_ag.h          |   21 +++++++++++-
>  fs/xfs/xfs_alloc.c       |   80 ++++++++++++++++++++++++++++++++--------------
>  fs/xfs/xfs_buf_item.h    |    4 ++-
>  fs/xfs/xfs_fsops.c       |    3 ++
>  fs/xfs/xfs_log_recover.c |    7 ++++
>  5 files changed, 89 insertions(+), 26 deletions(-)
> 
> diff --git a/fs/xfs/xfs_ag.h b/fs/xfs/xfs_ag.h
> index f2aeedb..b382703 100644
> --- a/fs/xfs/xfs_ag.h
> +++ b/fs/xfs/xfs_ag.h
> @@ -63,12 +63,29 @@ typedef struct xfs_agf {
>  	__be32		agf_spare0;	/* spare field */
>  	__be32		agf_levels[XFS_BTNUM_AGF];	/* btree levels */
>  	__be32		agf_spare1;	/* spare field */
> +
>  	__be32		agf_flfirst;	/* first freelist block's index */
>  	__be32		agf_fllast;	/* last freelist block's index */
>  	__be32		agf_flcount;	/* count of blocks in freelist */
>  	__be32		agf_freeblks;	/* total free blocks */
> +
>  	__be32		agf_longest;	/* longest free space */
>  	__be32		agf_btreeblks;	/* # of blocks held in AGF btrees */
> +	uuid_t		agf_uuid;	/* uuid of filesystem */
> +
> +	/*
> +	 * reserve some contiguous space for future logged fields before we add
> +	 * the unlogged fields. This makes the range logging via flags and
> +	 * structure offsets much simpler.
> +	 */
> +	__be64		agf_spare64[16];
> +
> +	/* unlogged fields, written during buffer writeback. */
> +	__be64		agf_lsn;	/* last write sequence */
> +	__be32		agf_crc;	/* crc of agf sector */
> +	__be32		agf_spare2;
> +
> +	/* structure must be padded to 64 bit alignment */
>  } xfs_agf_t;
>  
>  #define	XFS_AGF_MAGICNUM	0x00000001
> @@ -83,6 +100,7 @@ typedef struct xfs_agf {
>  #define	XFS_AGF_FREEBLKS	0x00000200
>  #define	XFS_AGF_LONGEST		0x00000400
>  #define	XFS_AGF_BTREEBLKS	0x00000800
> +#define	XFS_AGF_UUID		0x00001000
>  #define	XFS_AGF_NUM_BITS	12
					13 ?
You added a 13th bit.

How do you envision having the uuid in these structures will be helpful?

Regards,
	Ben

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

  parent reply	other threads:[~2013-02-21 22:53 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1358774760-21841-1-git-send-email-david@fromorbit.com>
     [not found] ` <1358774760-21841-2-git-send-email-david@fromorbit.com>
2013-02-14 21:25   ` [PATCH 1/9] xfs: take inode version into account in XFS_LITINO Ben Myers
     [not found] ` <1358774760-21841-3-git-send-email-david@fromorbit.com>
2013-02-15 21:20   ` [PATCH 2/9] xfs: add support for large btree blocks Ben Myers
2013-02-22  1:34     ` Dave Chinner
2013-02-23  2:27       ` Dave Chinner
2013-03-04 16:31         ` Ben Myers
     [not found] ` <1358774760-21841-4-git-send-email-david@fromorbit.com>
2013-02-21 22:53   ` Ben Myers [this message]
2013-02-22  1:41     ` [PATCH 3/9] xfs: add CRC checks to the AGF Dave Chinner
2013-02-22 15:19 ` [PATCH 0/9] xfs: metadata CRCs, kernel, first batch Ben Myers
2013-02-22 23:12   ` Dave Chinner
2013-02-22 23:50     ` Ben Myers
2013-02-23  2:38       ` Dave Chinner
2013-03-04 16:33         ` Ben Myers
     [not found] ` <1358774760-21841-5-git-send-email-david@fromorbit.com>
2013-02-27 22:37   ` [PATCH 4/9] xfs: add CRC checks to the AGFL Ben Myers
2013-02-27 23:20     ` Dave Chinner
2013-02-27 23:31       ` Dave Chinner
2013-02-27 23:35         ` Ben Myers
2013-02-27 23:32       ` Ben Myers
     [not found] ` <1358774760-21841-6-git-send-email-david@fromorbit.com>
2013-03-04 17:40   ` [PATCH 5/9] xfs: add CRC checks to the AGI Ben Myers
2013-03-04 17:41     ` Ben Myers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130221225305.GT22182@sgi.com \
    --to=bpm@sgi.com \
    --cc=david@fromorbit.com \
    --cc=xfs@oss.sgi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.