Size difference reported by /proc/partitions and lseek(SEEK_END) on block device
Corinna Vinschen
corinna-cygwin@cygwin.com
Wed Dec 7 18:13:00 GMT 2005
On Dec 7 11:17, Loh, Joe wrote:
> We just installed the cygwin-inst-20051207.tar.bz2 snapshot. The output
> in //proc/partitions is the same as the Cygwin Kernel 1.5.18. However,
> the lseek(SEEK_END) no longer works. When I rerun the "C" program it
> gave the following error. I even recompiled with the new snapshot just
> to make sure, still the same error. I have also attached the strace
> output for the lseekend.
>
> $ ./lseekend.exe /dev/sda
> lseek: Invalid argument
Ouch. Thanks for the report. I have fixed a buggy condition which
only allowed to seek to 1 byte below EOM in CVS. You should see the
change in the next developers snapshot.
> Here's the output from the snapshot:
>
> major minor #blocks name
>
> 8 0 78124095 sda
> 8 1 15358108 sda1
> 8 2 104422 sda2
> 8 3 16386300 sda3
The reason that /proc/partition contains wrong information is that
the /proc/partition information uses an old, deprecated IOCTL call
to evaluate the disk size by # of cylinders, # of tracks per sektor,
etc. I didn't fix that so far but it's not overly complicated, so
stay tuned.
Thanks again,
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Project Co-Leader cygwin AT cygwin DOT com
Red Hat, Inc.
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
More information about the Cygwin
mailing list