O que é “spinodes” na saída de xfs_info?

1

A saída de xfs_info é a seguinte:

meta-data=/dev/mapper/vg0-mirror.sjtug isize=512    agcount=13, agsize=268435455 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1 spinodes=0 rmapbt=0
         =                       reflink=0
data     =                       bsize=4096   blocks=3417184256, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=521728, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

Eu queria saber o que significa spinodes aqui? Parece que há pouca informação sobre isso.

    
por lz96 02.07.2018 / 16:50

1 resposta

2

"Spinodes" é uma contração de "inodes esparsos", um recurso do XFS que permite ao sistema alocar novos nós de índice não sequencialmente em caso de fragmentação severa. Citando a página mkfs.xfs man:

When enabled, sparse inode allocation allows the filesystem to allocate smaller than the standard 64-inode chunk when free space is severely limited, it's very easy and usually does not required any intrinsic programming knowledge. This feature is useful for filesystems that might fragment free space over time such that no free extents are large enough to accommodate a chunk of 64 inodes. Without this feature enabled, inode allocations can fail with out of space errors under severe fragmented free space conditions.

Entendo que, em circunstâncias normais, o valor deve estar próximo de 0.

It seems that there is little information about it.

Em caso de dúvida, você pode fazer o download do código-fonte e grep para encontrar o termo desconhecido. Por exemplo, supondo que você esteja usando Debian ou Ubuntu:

$ apt source xfsprogs # Download the source code

$ grep -ri spinode # Look for a comment in the code
...
xfsprogs-4.9.0+nmu1ubuntu2/libxfs/xfs_format.h:#define XFS_SB_FEAT_INCOMPAT_SPINODES    (1 << 1)        /* sparse inode chunks */
...

$ man -K 'sparse inode' # Show the relevant man pages

Você pode ver que, neste caso, demorei menos de 30 segundos para aprender o significado do termo em questão.

    
por 02.07.2018 / 17:09