Hi,
Do any of the ext file systems support hole punching? If so, do the
redhat distributions support it? Can someone provide an example of a
program that punches a hole in a file in an ext4 file system?
-Bradley
On 1/22/13 8:34 AM, Bradley C. Kuszmaul wrote:
> Hi,
>
> Do any of the ext file systems support hole punching?
ext4 does:
[esandeen@host linux-2.6]$ grep -l FALLOC_FL_PUNCH_HOLE fs/ext?/*.[ch]
fs/ext4/extents.c
> If so, do the redhat distributions support it?
Normally a question for Red Hat support, but yes, recent RHEL6
supports punch in ext4.
> Can someone provide an example of a
> program that punches a hole in a file in an ext4 file system?
Upstream fallocate command does with the -p option, for example.
-Eric
> -Bradley
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
On Tue, Jan 22, 2013 at 09:34:59AM -0500, Bradley C. Kuszmaul wrote:
> Hi,
>
> Do any of the ext file systems support hole punching? If so, do the
> redhat distributions support it? Can someone provide an example of a
> program that punches a hole in a file in an ext4 file system?
Hello,
Ext4 file system supports hole punching. But until now only extent-based
file supports it. As far as I know, redhat distributions don't support
hole punching. You can find a sample program from e2fsprogs which is in
$e2fsprogs/conrib/fallocate.c. The latest fallocate(1) in util-linux
also can be as a demo.
Regards,
- Zheng
Ext4 supports it, and you can use fallocate(2) with flag FALLOC_FL_PUNCH_HOLE to
dealloc space of a specific file (please see `man 2 fallocate` for more info).
You can use `fallocate` cmdline program to test it.
Ex:
fallocate -p -o 1024 -l 4096 <filename>
fallocate is available on ext4 since linux 3.1 afaik
About Enterprise distros, it's usually better to contact the customer support to
get information about availability/supportability of a specific feature.
Cheers
On Tue, Jan 22, 2013 at 09:34:59AM -0500, Bradley C. Kuszmaul wrote:
> Hi,
>
> Do any of the ext file systems support hole punching? If so, do the
> redhat distributions support it? Can someone provide an example of a
> program that punches a hole in a file in an ext4 file system?
>
> -Bradley
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
Carlos
Thanks, this has been a very helpful thread.
How do I determine and control whether a file is extent-based?
-Bradley
On Tue, Jan 22, 2013 at 11:20 AM, Zheng Liu <[email protected]> wrote:
> Ext4 file system supports hole punching. But until now only extent-based
> file supports it. As far as I know, redhat distributions don't support
> hole punching. You can find a sample program from e2fsprogs which is in
> $e2fsprogs/conrib/fallocate.c. The latest fallocate(1) in util-linux
> also can be as a demo.
On 2013-01-22, at 4:50 PM, Bradley C. Kuszmaul wrote:
> Thanks, this has been a very helpful thread.
>
> How do I determine and control whether a file is extent-based?
You can use "lsattr" on the file, and look for the "e" attribute.
This should be standard for any ext4-formatted filesystem. For
filesystems upgraded from ext3, you need to "tune2fs -O extents"
to enable this feature.
Cheers, Andreas
> On Tue, Jan 22, 2013 at 11:20 AM, Zheng Liu <[email protected]> wrote:
>> Ext4 file system supports hole punching. But until now only extent-based
>> file supports it. As far as I know, redhat distributions don't support
>> hole punching. You can find a sample program from e2fsprogs which is in
>> $e2fsprogs/conrib/fallocate.c. The latest fallocate(1) in util-linux
>> also can be as a demo.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
On 1/22/13 6:03 PM, Andreas Dilger wrote:
> On 2013-01-22, at 4:50 PM, Bradley C. Kuszmaul wrote:
>> Thanks, this has been a very helpful thread.
>>
>> How do I determine and control whether a file is extent-based?
>
> You can use "lsattr" on the file, and look for the "e" attribute.
>
> This should be standard for any ext4-formatted filesystem. For
> filesystems upgraded from ext3, you need to "tune2fs -O extents"
> to enable this feature.
But since it sounds like you might be on RHEL, don't do that. We don't
test it or support it. If you want ext4, mkfs.ext4 the device and go
from there.
-Eric
> Cheers, Andreas
>
>> On Tue, Jan 22, 2013 at 11:20 AM, Zheng Liu <[email protected]> wrote:
>>> Ext4 file system supports hole punching. But until now only extent-based
>>> file supports it. As far as I know, redhat distributions don't support
>>> hole punching. You can find a sample program from e2fsprogs which is in
>>> $e2fsprogs/conrib/fallocate.c. The latest fallocate(1) in util-linux
>>> also can be as a demo.
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
>> the body of a message to [email protected]
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>