CIFS: Always reset read error to -EIO if no response
authorPavel Shilovsky <pshilov@microsoft.com>
Fri, 18 Jan 2019 23:46:14 +0000 (15:46 -0800)
committerSteve French <stfrench@microsoft.com>
Tue, 5 Mar 2019 02:06:39 +0000 (20:06 -0600)
Currently we skip setting a read error to -EIO if a stored
result is -ENODATA and a response hasn't been received. With
the recent changes in read error processing there shouldn't be
cases when -ENODATA is set without a response from the server,
so reset the error to -EIO unconditionally.

Signed-off-by: Pavel Shilovsky <pshilov@microsoft.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/cifs/smb2pdu.c

index f2980f7..77f2c72 100644 (file)
@@ -3236,8 +3236,7 @@ smb2_readv_callback(struct mid_q_entry *mid)
                credits_received = le16_to_cpu(shdr->CreditRequest);
                /* fall through */
        default:
-               if (rdata->result != -ENODATA)
-                       rdata->result = -EIO;
+               rdata->result = -EIO;
        }
 #ifdef CONFIG_CIFS_SMB_DIRECT
        /*