This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "XFS development tree". The branch, for-next has been updated 2ea0392 xfs: Make inode32 a remountable option 4056c1d xfs: add inode64->inode32 transition into xfs_set_inode32() 4c08372 xfs: Fix mp->m_maxagi update during inode64 remount 2d2194f xfs: reduce code duplication handling inode32/64 options 08bf540 xfs: make inode64 as the default allocation mode 8aea3ff xfs: Fix m_agirotor reset during AG selection c3a58fe Make inode64 a remountable option from 4026c9fde9c67266932afd209e25bfef4474a1be (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 2ea0392983a82f7dc3055568ae0f2558724d119b Author: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Date: Thu Sep 20 10:32:41 2012 -0300 xfs: Make inode32 a remountable option As inode64 is the default option now, and was also made remountable previously, inode32 can also be remounted on-the-fly when it is needed. Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> Reviewed-by: Mark Tinguely <tinguely@xxxxxxx> Signed-off-by: Ben Myers <bpm@xxxxxxx> commit 4056c1d08d2a7c50ae7414db7c1783ba45b4835d Author: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Date: Thu Sep 20 10:32:40 2012 -0300 xfs: add inode64->inode32 transition into xfs_set_inode32() To make inode32 a remountable option, xfs_set_inode32() should be able to make a transition from inode64 option, disabling inode allocation on higher AGs. Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> Reviewed-by: Mark Tinguely <tinguely@xxxxxxx> Signed-off-by: Ben Myers <bpm@xxxxxxx> commit 4c0837224c677db35cd85b04a77504c496cadb66 Author: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Date: Thu Sep 20 10:32:39 2012 -0300 xfs: Fix mp->m_maxagi update during inode64 remount With the changes made on xfs_set_inode64(), to make it behave as xfs_set_inode32() (now leaving to the caller the responsibility to update mp->m_maxagi), we use the return value of xfs_set_inode64() to update mp->m_maxagi during remount. Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Reviewed-by: Mark Tinguely <tinguely@xxxxxxx> Signed-off-by: Ben Myers <bpm@xxxxxxx> commit 2d2194f61fddab3a9731b6e7a7ae3a4a19dd810c Author: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Date: Thu Sep 20 10:32:38 2012 -0300 xfs: reduce code duplication handling inode32/64 options Add xfs_set_inode32() to be used to enable inode32 allocation mode. this will reduce the amount of duplicated code needed to mount/remount a filesystem with inode32 option. This patch also changes xfs_set_inode64() to return the maximum AG number that inodes can be allocated instead of set mp->m_maxagi by itself, so that the behaviour is the same as xfs_set_inode32(). This simplifies code that calls these functions and needs to know the maximum AG that inodes can be allocated in. Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> Reviewed-by: Mark Tinguely <tinguely@xxxxxxx> Signed-off-by: Ben Myers <bpm@xxxxxxx> commit 08bf540412ed82a15cb9068249ad49b410a7b082 Author: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Date: Thu Sep 20 10:32:37 2012 -0300 xfs: make inode64 as the default allocation mode since 64-bit inodes can be accessed while using inode32, and these can also be used on 32-bit kernels, there is no reason to still keep inode32 as the default mount option. If the filesystem cannot handle 64bit inode numbers (i.e CONFIG_LBDAF is not enabled and BITS_PER_LONG == 32), XFS_MOUNT_SMALL_INUMS will still be set by default, so inode64 is not an unconditional default value. Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> Reviewed-by: Mark Tinguely <tinguely@xxxxxxx> Signed-off-by: Ben Myers <bpm@xxxxxxx> commit 8aea3ff411b2ce8fe7b46644298ed243a920eb24 Author: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Date: Thu Sep 20 10:32:36 2012 -0300 xfs: Fix m_agirotor reset during AG selection xfs_ialloc_next_ag() currently resets m_agirotor when it is equal to m_maxagi: if (++mp->m_agirotor == mp->m_maxagi) mp->m_agirotor = 0; But, if for some reason mp->m_maxagi changes to a lower value than current m_agirotor, this condition will never be true, causing m_agirotor to exceed the maximum allowed value (m_maxagi). This implies mainly during lookups for xfs_perag structs in its radix tree, since the agno value used for the lookup is based on m_agirotor. An out-of-range m_agirotor may cause a lookup failure which in case will return NULL. As an example, the value of m_maxagi is decreased during inode64->inode32 remount process, case where I've found this problem. Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> Reviewed-by: Mark Tinguely <tinguely@xxxxxxx> Signed-off-by: Ben Myers <bpm@xxxxxxx> commit c3a58fecdd1934a8538ada9073107625f5151687 Author: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Date: Fri Aug 17 18:19:38 2012 -0300 Make inode64 a remountable option Actually, there is no reason about why a user must umount and mount a XFS filesystem to enable 'inode64' option. So, this patch makes this a remountable option. Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx> Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx> Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> Signed-off-by: Ben Myers <bpm@xxxxxxx> ----------------------------------------------------------------------- Summary of changes: fs/xfs/xfs_ialloc.c | 2 +- fs/xfs/xfs_mount.c | 43 +++-------------------- fs/xfs/xfs_super.c | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++- fs/xfs/xfs_super.h | 2 ++ 4 files changed, 102 insertions(+), 40 deletions(-) hooks/post-receive -- XFS development tree _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs