Disk: ExtExtractorDiskReadDriver: Increase timeout for individual read attempts

add-device-sharing
Jonathan Schwartz 2022-04-15 15:17:31 -04:00 committed by Paul Hollinsky
parent a2cfc50b7c
commit c2de1dfdf1
1 changed files with 3 additions and 1 deletions

View File

@ -25,9 +25,11 @@ optional<uint64_t> ExtExtractorDiskReadDriver::readLogicalDiskAligned(Communicat
return nullopt;
optional<uint64_t> ret;
// timeout loop assuming
const auto perAttemptTimeout = std::chrono::milliseconds(500);
while(timeout > std::chrono::milliseconds(0) && !ret.has_value()) {
auto start = std::chrono::steady_clock::now();
ret = attemptReadLogicalDiskAligned(com, report, pos, into, amount, std::chrono::milliseconds(100));
ret = attemptReadLogicalDiskAligned(com, report, pos, into, amount, perAttemptTimeout);
timeout -= std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::steady_clock::now() - start);
}
return ret;