File systems aren't free to use inode numbers of arbitrary size.
Operating system interfaces and legacy software products often mandate the use of 32 bit inode numbers even on systems that support 64 bit inode numbers.
This can be a problem on large file systems, since 32 bit inode numbers only provide enough bits to encode inode locations in the first 1TB of a volume when 256 byte inodes are used, up to 8TB in the case of 2kB inodes.
For best performance, a file system needs to keep a file's data blocks close to its inode to minimise seeks when performing I/O. XFS's ability to do this suffers on large volumes when 32 bit inode numbers are used.