PR1245 device lseek
Joel Sherrill
joel.sherrill at oarcorp.com
Wed Aug 8 00:06:37 UTC 2007
Victor Vengerov wrote:
> Hi,
>
> Hard disk etc. represented in RTEMS device driver with
> open/close/read/write/control interface. rtems_libio_rw_args_t
> argument is passed to device read/write primitives, which contains the
> offset attribute. offset filled in device_write (deviceio.c) from
> iop->offset.
>
> May be I've missed something, but it looks for me you just need to
> adjust iop->offset in device_lseek in accordance to offset and whence
> arguments.
Where would we return EISPIPE for tty's, sockets, and eventually pipes?
I think this is all just a very small oversight and we just have to
carefully
drop a few lines of code in.
--joel
>
> Regards,
> Victor
>
> Joel Sherrill wrote:
>> Hi,
>>
>> This PR notes that device_lseek() always succeeds but
>> does nothing. According to OpenGroup
>> http://www.opengroup.org/onlinepubs/000095399/functions/lseek.html,
>> lseek() should return ESPIPE for ttys, sockets, and pipes.
>>
>> I may be having a brain freeze, but right now, I don't
>> see how to implement a seek on a block device like
>> a hard disk. I know you have to be able to do it.
>>
>> Any thoughts?
>>
>> --joel
>> _______________________________________________
>> rtems-users mailing list
>> rtems-users at rtems.com
>> http://rtems.rtems.org/mailman/listinfo/rtems-users
>>
>
More information about the users
mailing list