New fast EXT4 file system resizing interface

Original author: Michael Larabel
  • Transfer
Yesterday, a request was published to add changes to the Linux 3.3 kernel from Theodore Ts'o. Among the many bug fixes and other changes in the current de facto standard Linux file system, EXT4, there is a new file system resizing interface on the fly, which was first publicly released several months ago. The new interface for EXT4 was developed by Yongqiang Yang.

What does the author himself write on this topic? “This is a new on-the-fly resizing interface for ext4. It can be used by ioctl with EXT4_IOC_RESIZE_FS and a 64-bit number storing the file system size in a block. ”

The implementation of Yongqiang differs in that resizing EXT4 on the fly now occurs in the kernel. Tests provided by Yongqiang show that resizing the file system with the new code is much faster: resizing from 20GB to 230GB used to take more than five minutes, but now it has shown that this can be done in just 3.35 seconds. Resizing from 100GB to 230GB takes less than half a second. Detailed tests can be found in the newsletter .

Besides the fact that resizing the file system has become much faster, other useful features have been added to the new code, such as bigalloc and the simple exclude bitmap easily.

The new implementation added about 1000 lines of code to the kernel file system module. Pull request in 3.3 kernel, which includes the implementation described above, plus other changes in EXT4, can be found in Theodore Ts'o's letter .

This EXT4 improvement is just one of many improvements in the 3.3 kernel, which they have just started working on and which will officially be released in about two months.

Also popular now: