From cf44d71edfec9a8533c2e224d6ec56fbeb48cc7d Mon Sep 17 00:00:00 2001 From: Pankaj Raghav Date: Sat, 29 Jan 2022 11:29:09 +0530 Subject: [PATCH] Kernel: Remove the assumption of 512 block size in read/write_block Devices such as NVMe can have blocks bigger that 512. Use the m_block_size variable in read/write_block function instead of the hardcoded 512 block size. --- Kernel/Devices/BlockDevice.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Kernel/Devices/BlockDevice.cpp b/Kernel/Devices/BlockDevice.cpp index 524b7ee951..2cf7a1ccd6 100644 --- a/Kernel/Devices/BlockDevice.cpp +++ b/Kernel/Devices/BlockDevice.cpp @@ -30,7 +30,7 @@ BlockDevice::~BlockDevice() bool BlockDevice::read_block(u64 index, UserOrKernelBuffer& buffer) { - auto read_request_or_error = try_make_request(AsyncBlockDeviceRequest::Read, index, 1, buffer, 512); + auto read_request_or_error = try_make_request(AsyncBlockDeviceRequest::Read, index, 1, buffer, m_block_size); if (read_request_or_error.is_error()) { dbgln("BlockDevice::read_block({}): try_make_request failed", index); return false; @@ -56,7 +56,7 @@ bool BlockDevice::read_block(u64 index, UserOrKernelBuffer& buffer) bool BlockDevice::write_block(u64 index, const UserOrKernelBuffer& buffer) { - auto write_request_or_error = try_make_request(AsyncBlockDeviceRequest::Write, index, 1, buffer, 512); + auto write_request_or_error = try_make_request(AsyncBlockDeviceRequest::Write, index, 1, buffer, m_block_size); if (write_request_or_error.is_error()) { dbgln("BlockDevice::write_block({}): try_make_request failed", index); return false;