Hi, all Btrfs self test seems to contain impossible case in it: [0 - 5][5 - 6][6 - 10][10 - 4096] [hole ][inline][ hole ][ regular ] I really don't understand how such case can happen in real world. If we create an inline extent, and punch hole inside inline extent, it will only zero out the inline extents, but not to create a new small hole extent. It is also strange that if we do write beyong the inline range and reach 4K, then it will be converted to a normal extent, no more inline extent any more. In fact, these test cases forces extent maps to handle unaligned extent. However in fact, this will not happen except inlined file extent, and regular/preallocated/hole file extents are all page size aligned. Commit like the following could align to pagesize without problem if there is no such self test. Actually the commit will cause some bug if not aligned to page size. My fault again. :( 51f395ad4058883e4273b02fdebe98072dbdc0d2 btrfs: Use right extent length when inserting overlap extent map. Should we change the inode-test self test? Thanks, Qu -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html