| www.delorie.com/archives/browse.cgi | search |
| X-Recipient: | archive-cygwin AT delorie DOT com |
| DKIM-Filter: | OpenDKIM Filter v2.11.0 sourceware.org 4F3233858415 |
| DKIM-Signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; |
| s=default; t=1701428584; | |
| bh=Zml5kTO1b7xqX7yM8d1DTKhJCJbZrwfJhmzLukZWUzk=; | |
| h=Date:To:Subject:References:In-Reply-To:List-Id:List-Unsubscribe: | |
| List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: | |
| From; | |
| b=x+sKxQSHt4f7B8xDCT2B7RspsanfPGKwOg3l6xKKpqUxfFWtwWHJgYlFjD03HajtU | |
| fuTb5htr7qC2Fh3IrlfKYQurxdkEgFb5oCrY1BE/7G0LQtrtYHaMYzo12DDSLVgfZc | |
| Zs4naTKar1LekjQN6c17BAZbLrRqAS1DM+n7aAi4= | |
| X-Original-To: | cygwin AT cygwin DOT com |
| Delivered-To: | cygwin AT cygwin DOT com |
| DKIM-Filter: | OpenDKIM Filter v2.11.0 sourceware.org 7B6CF3858CDB |
| Date: | Fri, 1 Dec 2023 12:02:12 +0100 |
| To: | cygwin AT cygwin DOT com |
| Subject: | Re: Cygwin api to punch a hole into a file? |
| Message-ID: | <ZWm9NNUlxdOunBGP@calimero.vinschen.de> |
| Mail-Followup-To: | cygwin AT cygwin DOT com |
| References: | <CALXu0Uee2CHeCpthOKFmct+6HnEsKHbSzdK3Jyx8GsnYyt7Lbw AT mail DOT gmail DOT com> |
| <ZWCCfqny4lC11bBJ AT calimero DOT vinschen DOT de> | |
| <ZWXBH_viPFuSF6be AT calimero DOT vinschen DOT de> | |
| <CALXu0UcLK5AvrYDOg-9L2wFVhvjJuJre6X6GvL+5SyL744eygA AT mail DOT gmail DOT com> | |
| MIME-Version: | 1.0 |
| In-Reply-To: | <CALXu0UcLK5AvrYDOg-9L2wFVhvjJuJre6X6GvL+5SyL744eygA@mail.gmail.com> |
| X-BeenThere: | cygwin AT cygwin DOT com |
| X-Mailman-Version: | 2.1.30 |
| List-Id: | General Cygwin discussions and problem reports <cygwin.cygwin.com> |
| List-Unsubscribe: | <https://cygwin.com/mailman/options/cygwin>, |
| <mailto:cygwin-request AT cygwin DOT com?subject=unsubscribe> | |
| List-Archive: | <https://cygwin.com/pipermail/cygwin/> |
| List-Post: | <mailto:cygwin AT cygwin DOT com> |
| List-Help: | <mailto:cygwin-request AT cygwin DOT com?subject=help> |
| List-Subscribe: | <https://cygwin.com/mailman/listinfo/cygwin>, |
| <mailto:cygwin-request AT cygwin DOT com?subject=subscribe> | |
| From: | Corinna Vinschen via Cygwin <cygwin AT cygwin DOT com> |
| Reply-To: | cygwin AT cygwin DOT com |
| Cc: | Corinna Vinschen <corinna-cygwin AT cygwin DOT com> |
| Errors-To: | cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com |
| Sender: | "Cygwin" <cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com> |
On Dec 1 11:22, Cedric Blancher via Cygwin wrote: > I see the value of 128k (128*1024 bytes) quite often in your sparse > file commits. Yes, but they have been removed. Read the patches again, especially commit 65831f88d6c4. > Can you please make this value a per filesystem tunable? No, because we don't have a facility for that. > Not all filesystems have a 128k block/stripe size, and certainly most > filesystems have smaller minimum hole sizes than 128k (e.g. 512bytes > is common, ref pathconf _PC_MIN_HOLE_SIZE). There's no _PC_MIN_HOLE_SIZE in Linux or POSIX. In Windows, a sparse file uses chunks of 64K. You can see this even with a file of just a single block. Try this: $ touch x $ chattr +S x $ echo 1234567890123456789012345678901234567890123456789012345678901234567890123456789 >> x $ ls -ls x 1 -rw-r--r-- 1 corinna vinschen 80 Dec 1 11:56 x [repeat echo and ls -ls until...] $ echo 1234567890123456789012345678901234567890123456789012345678901234567890123456789 >> x $ ls -ls x 1 -rw-r--r-- 1 corinna vinschen 720 Dec 1 11:56 x $ echo 1234567890123456789012345678901234567890123456789012345678901234567890123456789 >> x $ ls -ls x 64 -rw-r--r-- 1 corinna vinschen 800 Dec 1 11:56 x2 ^^ This I don't know how Windows stores short files, maybe they are part of the metadata up to a point or some such. However, as soon as you raise the size over a given point, the *allocation size* will be rounded up to 64K and from that point on, it will be in 64K chunks. Also sparsifying and desparsifying of blocks only works in 64K chunks. Corinna -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |