On Mon, Aug 08, 2011 at 12:15:03AM +0000, David Holland wrote:
>  > >    struct range range;
>  > > 
>  > >    while (pos < len) {
>  > >       fgetrange(fd, pos, &range);
>  > >       if (range.r_type == RANGE_DATA) {
>  > >          amount = range.r_end - pos;
>  > >          if (amount > sizeof(buf)) {
>  > >             amount = sizeof(buf);
>  > >          }
>  > >          pread(fd, buf, amount, pos);
>  > >          pwrite(outfd, buf, amount, pos);
>  > >       }
>  > >       pos = range.r_end;
>  > >    }

Shall i try to work this out a bit more? with `fgetrange' being a frontend or
define to an fcntl (like in the form of an _FCNRW())? that saves the
implementation of a new systemcall and a new VOP for all FS's.

With regards,
Reinoud

Reply via email to