xfs
[Top] [All Lists]

Re: [PATCH 2/2] free partially initialized inodes using destroy_inode

To: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Subject: Re: [PATCH 2/2] free partially initialized inodes using destroy_inode
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Thu, 23 Oct 2008 08:30:49 +1100
Cc: xfs@xxxxxxxxxxx
In-reply-to: <20081022163129.GC25556@xxxxxxxxxxxxx>
Mail-followup-to: Christoph Hellwig <hch@xxxxxxxxxxxxx>, xfs@xxxxxxxxxxx
References: <20081022163129.GC25556@xxxxxxxxxxxxx>
User-agent: Mutt/1.5.18 (2008-05-17)
On Wed, Oct 22, 2008 at 12:31:29PM -0400, Christoph Hellwig wrote:
> To make sure we free the security data inodes need to be freed using
> the proper VFS helper (which we also need to export for this). We mark
> these inodes bad so we can skip the flush path for them.

Looks good, except for one minor mistake in a comment:

> Index: xfs-2.6/fs/xfs/xfs_inode.h
> ===================================================================
> --- xfs-2.6.orig/fs/xfs/xfs_inode.h   2008-10-22 17:57:30.000000000 +0200
> +++ xfs-2.6/fs/xfs/xfs_inode.h        2008-10-22 18:00:15.000000000 +0200
> @@ -310,6 +310,23 @@ static inline struct inode *VFS_I(struct
>  }
>  
>  /*
> + * Get rid of a partially initialized inode.
> + *
> + * We have to go through destroy_inode to make sure allocations
> + * from init_inode_always like the security data are undone.
> + *
> + * We mark the inode dirty so that it takes the short cut in
                        ^^^^^
                        "bad"

> + * the reclaim path instead of going through the flush path
> + * which doesn't make sense for an inode that has never seen the
> + * light of day.
> + */
> +static inline void xfs_destroy_inode(struct xfs_inode *ip)
> +{
> +     make_bad_inode(VFS_I(ip));
> +     return destroy_inode(VFS_I(ip));
> +}
> +
> +/*
>   * i_flags helper functions
>   */
>  static inline void

I don't think this needs another round of review just to fix the
comment, so it can probably go straight in if the committer can
touch up that comment.

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>