[patch] copy_to_user check and whitespace cleanups in
fs/cifs/file.c
Jesper Juhl
juhl-lkml at dif.dk
Mon Dec 27 01:21:36 GMT 2004
On Sun, 26 Dec 2004, Alan Cox wrote:
> On Sul, 2004-12-26 at 23:24, Jesper Juhl wrote:
> > Hi,
> >
> > Patch below adds a check for the copy_to_user return value and makes a few
> > whitespace cleanups in fs/cifs/file.c::cifs_user_read()
> > I hope bundling two different things together in one patch is OK when the
> > change is as small as this, but if you want it spplit in two patches, then
> > just say so.
>
> Corrupts the stats
> Fails to free smb_read_data where in some cases it was freed before
>
Whoops, I'll take care of that - thanks for pointing that out.
> I'm not sure the stats matter but I think you need something more like
>
>
> residue = copy_to_user(....)
> if(smb_read_data) {
> cifs_buf_release(...)
> ...
> }
>
> Then
>
> if(residue) {
> total_read += bytes_read - residue;
> FreeXid(xid);
> return total_read ? total_read: -EFAULT;
> }
>
>
I take that to mean that if we do manage to read something before we run
into the fault it's better to return what we have read than the fact that
we ran into a fault... that makes sense. Sure, I'll cook up a patch to do
that instead (tomorrow - I need some sleep).
--
Jesper Juhl
More information about the samba-technical
mailing list