linuxolator problem on i386

Roman Divacky rdivacky at freebsd.org
Wed Sep 19 06:25:50 PDT 2007


> > @@ -442,8 +443,7 @@
> 
> >         off = fp->f_offset;
> 
> > -       buflen = max(LINUX_DIRBLKSIZ, nbytes);
> > -       buflen = min(buflen, MAXBSIZE);
> > +       buflen = max(buflen, MAXBSIZE);
> >         buf = malloc(buflen, M_TEMP, M_WAITOK);
> >         vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td);
> 
> No. It limits buflen to which is smaller, buflen or MAXBSIZE.
 
yes... brain does not work real good today :(

I wonder why the limitation is there.. can you try

        buflen = min(nbytes, MAXBSIZE);

and/or

changing

     while (len > 0) {

to

     while (len >= 0)4 {




More information about the freebsd-emulation mailing list