On Thu, Nov 03, 2005 at 05:38:43PM +0100, Grzegorz Nosek wrote:
> Hello all
> 
> I needed to apply the patch below in order to keep the kernel from
> oopsing (in some older revisions) or freezing solid (in the newest,
> listed in the subject.
> 
> This is the bug that I came across earlier and made a fool out of
> myself at the lkml :) Apparently the code around this place has been
> modified but the offending check is still there. The code is checking
> *ppos and max, which both have bogus values and this exact check (with
> proper values) is made in vfs_sendfile a few lines earlier.
> 
> Why it freezes the box - I have no idea. I have also received some
> reports about weird vserver behaviour (more crashes) but I'll gather
> more info before I post.

well, looks like your do_sendfile() is called with ppos
being empty, which is not handled properly, removing
the max check will only paper over the issue ...

did you try this with 2.6.14 yet?

TIA,
Herbert

> Best regards,
> Grzegorz Nosek
> 
> Oops (from netconsole - enabled it at last) follows:
> 
> Nov  3 17:18:40 40 [  799.084295] Unable to handle kernel NULL pointer
> dereference
> 
> --- linux-2.6/fs/read_write.c~  2005-10-28 23:59:02.000000000 +0200
> +++ linux-2.6/fs/read_write.c   2005-11-03 17:28:50.000000000 +0100
> @@ -719,9 +719,6 @@
>         current->syscr++;
>         current->syscw++;
> 
> -       if (*ppos > max)
> -               retval = -EOVERFLOW;
> -
>  fput_out:
>         fput_light(out_file, fput_needed_out);
>  fput_in:
> _______________________________________________
> Vserver mailing list
> Vserver@list.linux-vserver.org
> http://list.linux-vserver.org/mailman/listinfo/vserver
_______________________________________________
Vserver mailing list
Vserver@list.linux-vserver.org
http://list.linux-vserver.org/mailman/listinfo/vserver

Reply via email to