[PATCH 05/60] xfs: don't do IO when creating an new inode

Mark Tinguely tinguely at sgi.com
Fri Jun 21 08:57:22 CDT 2013


On 06/18/13 23:50, Dave Chinner wrote:
> From: Dave Chinner<dchinner at redhat.com>
>
> When we are allocating a new inode, we read the inode cluster off
> disk to increment the generation number. We are already using a
> random generation number for newly allocated inodes, so if we are not
> using the ikeep mode, we can just generate a new generation number
> when we initialise the newly allocated inode.
>
> This avoids the need for reading the inode buffer during inode
> creation. This will speed up allocation of inodes in cold, partially
> allocated clusters as they will no longer need to be read from disk
> during allocation. It will also reduce the CPU overhead of inode
> allocation by not having the process the buffer read, even on cache
> hits.
>
> Signed-off-by: Dave Chinner<dchinner at redhat.com>
> ---


Looks good.

As a side note, the comment in xfs_inode.h for the i_d:
xfs_icdinode_t          i_d;            /* most of ondisk inode */

In Linux 3.10, it is no longer just most.

Reviewed-by: Mark Tinguely <tinguely at sgi.com>



More information about the xfs mailing list