[CIFS] clean up page array when uncached write send fails
authorSteve French <smfrench@gmail.com>
Sat, 8 Feb 2014 02:45:12 +0000 (20:45 -0600)
committerSteve French <smfrench@gmail.com>
Sat, 8 Feb 2014 02:47:00 +0000 (20:47 -0600)
commit4a5c80d7b5615be8098f9d5da97d166afc318abc
treeff3e40a816442722056805cc0cc1844051a30988
parent26c8f0d601f5d4c0d9f4bc8c5151539aae5dc26a
[CIFS] clean up page array when uncached write send fails

In the event that a send fails in an uncached write, or we end up
needing to reissue it (-EAGAIN case), we'll kfree the wdata but
the pages currently leak.

Fix this by adding a new kref release routine for uncached writedata
that releases the pages, and have the uncached codepaths use that.

[original patch by Jeff modified to fix minor formatting problems]

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Pavel Shilovsky <piastry@etersoft.ru>
Signed-off-by: Steve French <smfrench@gmail.com>
fs/cifs/cifsglob.h
fs/cifs/cifsproto.h
fs/cifs/cifssmb.c
fs/cifs/file.c
fs/cifs/smb2pdu.c
fs/cifs/smb2proto.h