Message-ID: <002701c17889$185c9d60$0100a8c0@pentiumii> From: "Dennis Louie" To: "Eli Zaretskii" Cc: "Andrew Cottrell" , , "Charles Sandmann" References: Subject: Re: statfs not returning correct cluster size - 7302h and GNU df don't work either Date: Wed, 28 Nov 2001 19:50:44 -0800 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Reply-To: djgpp-workers AT delorie DOT com From: "Eli Zaretskii" Sent: Wednesday, November 28, 2001 12:36 AM > On Tue, 27 Nov 2001, Dennis Louie wrote: > > > BTW, the clusters on drive problem also affects 'df' from GNU file utilities > > (fil40b.zip). > > How does it affect `df'? 'df' uses statfs(), so the fact that statfs is broken because INT21 Function 36h doesn't work for large FAT32 partitions means 'df' is broken too. > > Could you send me mail when the statfs problem is fixed? > > Fixed--how? AFAIU, `statfs' does on W2K the best job it could, given > the system calls implemented by W2K. How can we fix that? There must be a DOS function that can be made to return this information correctly. Windows XP can determine the correct disk size and available space. Similarly, PartitionMagic 7.0 can determine the correct cluster size (it even lets you change the cluster size in an existing partition). Once someone finds a workaround, statfs can be made to function correctly. I only use Win2K at work and can live with statfs not working on that platform; I do all of my development on Win98 and now WinXPpro. The current statfs code doesn't even try to use Functions 7302h or 7303h. _osmajor is 5 for WinXP and the conditional only tries to execute those functions if it's between 7 and 10 (whatever Windows versions they correspond to). Whoever wrote that code must have some information about INT21 functions that isn't widely known (yet)... All I know about DOS interrupts comes from my V4 Programmer's Reference plus what I've picked up from individuals like you on this list. Thanks, Dennis