Use qCeil to set used sectors for luks file systems.
When using LUKS encrypted LVM logical volumes sector size is large and we cannot assume that result of division is integer. Without this, number of used extents can be underestimated by one.
This commit is contained in:
parent
901d01185f
commit
b5b3af4b22
|
@ -32,6 +32,7 @@
|
||||||
#include <QPointer>
|
#include <QPointer>
|
||||||
#include <QRegularExpression>
|
#include <QRegularExpression>
|
||||||
#include <QString>
|
#include <QString>
|
||||||
|
#include <QtMath>
|
||||||
#include <QUuid>
|
#include <QUuid>
|
||||||
|
|
||||||
#include <KDiskFreeSpaceInfo>
|
#include <KDiskFreeSpaceInfo>
|
||||||
|
@ -333,7 +334,7 @@ void luks::loadInnerFileSystem(const QString& mapperNode)
|
||||||
setLabel(m_innerFs->readLabel(mapperNode));
|
setLabel(m_innerFs->readLabel(mapperNode));
|
||||||
setUUID(m_innerFs->readUUID(mapperNode));
|
setUUID(m_innerFs->readUUID(mapperNode));
|
||||||
if (m_innerFs->supportGetUsed() == FileSystem::cmdSupportFileSystem)
|
if (m_innerFs->supportGetUsed() == FileSystem::cmdSupportFileSystem)
|
||||||
setSectorsUsed((m_innerFs->readUsedCapacity(mapperNode) + payloadOffset()) / m_logicalSectorSize );
|
setSectorsUsed(qCeil((m_innerFs->readUsedCapacity(mapperNode) + payloadOffset()) / static_cast<float>(m_logicalSectorSize) ));
|
||||||
m_innerFs->scan(mapperNode);
|
m_innerFs->scan(mapperNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue