lseek() fails to seek on /dev/fd0 ('\\.\A:')

Egor Duda deo@logos-m.ru
Tue Feb 27 07:20:00 GMT 2001


Hi!

Tuesday, 27 February, 2001 Corinna Vinschen cygwin-patches@cygwin.com wrote:

CV> On Tue, Feb 27, 2001 at 04:04:30PM +0300, Egor Duda wrote:
>> CV> Has somebody a 2.4 kernel to test the behaviour there?
>> 
>> i've just tested it under 2.4.0. it seeks correctly from the end of device
>> and returns device_size + offset.
>> 
>>  if  return  value > 2G, it returns -1 with EOVERFLOW. I feel EFBIG is
>> more appropriate here, but it's arguable.

CV> Ok, that sounds more reasonable than the 2.2 behaviour. Would you
CV> mind to change your current patch to work on physical drives
CV> using IOCTL_DISK_GET_DRIVE_GEOMETRY and on partitions using the
CV> IOCTL_DISK_GET_PARTITION_INFO call and, hmm, I think you're right,
CV> to return EFBIG in the above case? That would be nice. I would
CV> like to see the patch first but I'm pretty sure I will approve it.

i've  already  modified  it,  the  diff  in my previous message is the
modified  one.  It  determines drive geometry, and fails if it cannot,
and then tries to determine partition length. if the letter attempt is
successful,  we  assume  it's partition, otherwise, that it uses drive
geometry. Alas, both ioctls fail on cdrom drive :(

Egor.            mailto:deo@logos-m.ru ICQ 5165414 FidoNet 2:5020/496.19




More information about the Cygwin-patches mailing list