Hi All, With the "esize" mount option, I observed data corruption and cifs reconnects during performance tests. TCP server info field server->total_read is modified parallely by demultiplex thread and decrypt offload worker thread. server->total_read is used in calculation to discard the remaining data of PDU which is not read into memory. Because of parallel modification, “server->total_read” value got corrupted and instead of discarding the remaining data, it discarded some valid data from the next PDU. server->total_read field is already updated properly during read from socket. So, no need to update the same field again after decryption. Regards, Rohith
Attachment:
0001-Resolve-data-corruption-of-TCP-server-info-fields.patch
Description: Binary data