fix prod build

This commit is contained in:
2025-12-10 21:37:14 +01:00
parent b953394c0d
commit cbf781f0e5
2 changed files with 12 additions and 9 deletions

View File

@ -31,7 +31,7 @@
#endif #endif
// Logic // Logic
#define DRYRUN // don't touch the drives // #define DRYRUN // don't touch the drives
#define FROZEN_ALERT // show alert if drive is frozen #define FROZEN_ALERT // show alert if drive is frozen
#define ZERO_CHECK // check drive after shred if all bytes are zero, show alert if this fails #define ZERO_CHECK // check drive after shred if all bytes are zero, show alert if this fails

View File

@ -93,8 +93,10 @@ int Shred::shredDrive(Drive *drive, int *ipSignalFd)
tfng_prng_seedkey(ucKey); tfng_prng_seedkey(ucKey);
this->ulDriveByteSize = getDriveSizeInBytes(driveFileDiscr); this->ulDriveByteSize = getDriveSizeInBytes(driveFileDiscr);
drive->sShredSpeed.chronoShredTimestamp = std::chrono::system_clock::now(); // set inital timestamp for speed metric Drive::ShredSpeed shredSpeed = drive->sShredSpeed.load();
drive->sShredSpeed.ulSpeedMetricBytesWritten = 0U; // uses to calculate speed metric shredSpeed.chronoShredTimestamp = std::chrono::system_clock::now(); // set inital timestamp for speed metric
shredSpeed.ulSpeedMetricBytesWritten = 0U; // uses to calculate speed metric
drive->sShredSpeed.store(shredSpeed);
#ifdef LOG_LEVEL_HIGH #ifdef LOG_LEVEL_HIGH
Logger::logThis()->info("Shred-Task: Bytes-Size of Drive: " + to_string(this->ulDriveByteSize) + " - Drive: " + drive->getSerial()); Logger::logThis()->info("Shred-Task: Bytes-Size of Drive: " + to_string(this->ulDriveByteSize) + " - Drive: " + drive->getSerial());
@ -140,14 +142,15 @@ int Shred::shredDrive(Drive *drive, int *ipSignalFd)
return -1; return -1;
} }
ulDriveByteCounter += iByteShredded; auto shredSpeed = drive->sShredSpeed.load();
ulDriveByteOverallCount += iByteShredded; shredSpeed.ulSpeedMetricBytesWritten += iByteShredded;
d32Percent = this->calcProgress(); drive->sShredSpeed.store(shredSpeed);
drive->sShredSpeed.ulSpeedMetricBytesWritten += iByteShredded;
d32Percent = this->calcProgress();
#ifdef LOG_LEVEL_HIGH #ifdef LOG_LEVEL_HIGH
Logger::logThis()->info("Shred-Task: ByteCount: " + to_string(ulDriveByteCounter) + " - iteration: " + to_string((uiShredIterationCounter + 1)) + " - progress: " + to_string(d32Percent) + " - Drive: " + drive->getSerial()); Logger::logThis()->info("Shred-Task: ByteCount: " + to_string(ulDriveByteCounter) + " - iteration: " + to_string((uiShredIterationCounter + 1)) + " - progress: " + to_string(d32Percent) + " - Drive: " + drive->getSerial());
#endif #endif
if ((d32Percent - d32TmpPercent) >= 0.01) if ((d32Percent - d32TmpPercent) >= 0.01)
{ {
// set shred percantage // set shred percantage
@ -157,7 +160,7 @@ int Shred::shredDrive(Drive *drive, int *ipSignalFd)
write(*ipSignalFd, "A", 1); write(*ipSignalFd, "A", 1);
} }
if (drive->state != Drive::SHRED_ACTIVE) if (drive->state != Drive::TaskState::SHRED_ACTIVE)
{ {
drive->setTaskPercentage(0); drive->setTaskPercentage(0);
d32Percent = 0.00; d32Percent = 0.00;
@ -184,7 +187,7 @@ int Shred::shredDrive(Drive *drive, int *ipSignalFd)
drive->bWasShredded = true; drive->bWasShredded = true;
Logger::logThis()->info("Shred-Task finished - Drive: " + drive->getModelName() + "-" + drive->getSerial() + " @" + address.str()); Logger::logThis()->info("Shred-Task finished - Drive: " + drive->getModelName() + "-" + drive->getSerial() + " @" + address.str());
#ifdef ZERO_CHECK #ifdef ZERO_CHECK
drive->state = Drive::CHECK_ACTIVE; drive->state = Drive::TaskState::CHECK_ACTIVE;
Logger::logThis()->info("Check-Task started - Drive: " + drive->getModelName() + "-" + drive->getSerial() + " @" + address.str()); Logger::logThis()->info("Check-Task started - Drive: " + drive->getModelName() + "-" + drive->getSerial() + " @" + address.str());
drive->u32DriveChecksumAfterShredding = uiCalcChecksum(driveFileDiscr, drive, ipSignalFd); drive->u32DriveChecksumAfterShredding = uiCalcChecksum(driveFileDiscr, drive, ipSignalFd);
#ifdef LOG_LEVEL_HIGH #ifdef LOG_LEVEL_HIGH