diff options
author | Steve French <sfrench@us.ibm.com> | 2008-11-03 15:46:21 -0500 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2008-11-03 15:46:21 -0500 |
commit | c527c8a7ffa18400c2c1488f7ab5aff5e83f3c8e (patch) | |
tree | 4f051c90690aa89099d169baa7fdbce2a01cdea1 /lib | |
parent | a75952b72a0fff3031124003e62118111aed42c1 (diff) |
[CIFS] Can't rely on iov length and base when kernel_recvmsg returns error
When retrying kernel_recvmsg, reset iov_base and iov_len.
Note comment from Sridhar: "In the normal path, iov.iov_len is clearly set to 4. But i think you are
running into a case where kernel_recvmsg() is called via 'goto incomplete_rcv'
It happens if the previous call fails with EAGAIN.
If you want to call recvmsg() after EAGAIN failure, you need to reset iov."
Signed-off-by: Shirish Pargaonkar <shirishp@us.ibm.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'lib')
0 files changed, 0 insertions, 0 deletions