RE: [PATCH v9 0/11] fs: Introduce FALLOC_FL_INSERT_RANGE for fallocate

From: Namjae Jeon
Date: Thu Jan 22 2015 - 03:52:55 EST


> [CC += linux-api]
>
> Hello Namjae
>
> Please, all patches such as this that touch the user-space ABI must CC
> linux-api@. (The kernel source file Documentation/SubmitChecklist
> notes that all Linux kernel patches that change userspace interfaces
> should be CCed to linux-api@xxxxxxxxxxxxxxxx See also
> https://www.kernel.org/doc/man-pages/linux-api-ml.html )
Hi Michael,

I will keep that in mind.
Thank you!

>
> Thanks,
>
> Michael
>
>
> On Wed, Jan 21, 2015 at 4:11 PM, Namjae Jeon <linkinjeon@xxxxxxxxx> wrote:
> > From: Namjae Jeon <namjae.jeon@xxxxxxxxxxx>
> >
> > In continuation of the work of making the process of non linear editing of
> > media files faster, we introduce here the new flag FALLOC_FL_INSERT_RANGE
> > for fallocate.
> >
> > This flag will work opposite to the FALLOC_FL_COLLAPSE_RANGE flag.
> > As such, specifying FALLOC_FL_INSERT_RANGE flag will create new space inside file
> > by inserting a hole within the range specified by offset and len.
> > User can write new data in this space. e.g. ads.
> > Like collapse range, currently we have the limitation that offset and len should
> > be block size aligned for both XFS and Ext4.
> >
> > The semantics of the flag are :
> > 1) It creates space within file by inserting a hole of len bytes starting
> > at offset byte without overwriting any existing data. All the data blocks
> > from offset to EOF are shifted towards right to make hole space.
> > 2) It should be used exclusively. No other fallocate flag in combination.
> > 3) Offset and length supplied to fallocate should be fs block size aligned
> > in case of xfs and ext4.
> > 4) Insert range does not work for the case when offset is overlapping/beyond
> > i_size. If the user wants to insert space at the end of file they are
> > advised to use either ftruncate(2) or fallocate(2) with mode 0.
> > 5) It increses the size of file by len bytes.
> >
> >
> > Namjae Jeon (11):
> > fs: Add support FALLOC_FL_INSERT_RANGE for fallocate
> > xfs: Add support FALLOC_FL_INSERT_RANGE for fallocate
> > ext4: Add support FALLOC_FL_INSERT_RANGE for fallocate
> > xfsprogs: xfs_io: add finsert command for insert range via fallocate
> > xfstests: generic/039: Standard insert range tests
> > xfstests: generic/040: Delayed allocation insert range
> > xfstests: generic/041: Multi insert range tests
> > xfstests: generic/042: Delayed allocation multi insert
> > xfstests: generic/043: Test multiple fallocate insert/collapse range calls
> > xfstests: fsstress: Add fallocate insert range operation
> > xfstests: fsx: Add fallocate insert range operation
> > --
> > 1.7.9.5
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@xxxxxxxxxxxxxxx
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
>
>
>
> --
> Michael Kerrisk Linux man-pages maintainer;
> http://www.kernel.org/doc/man-pages/
> Author of "The Linux Programming Interface", http://blog.man7.org/

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/