diff options
| author | Felix Morgner <felix.morgner@ost.ch> | 2026-08-17 18:13:22 +0200 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@ost.ch> | 2026-08-17 18:13:22 +0200 |
| commit | ca0c35ad7bb6e178af18f1600a7bc0da944fafb0 (patch) | |
| tree | d5a0d312f8bc24b10fd6860a2c416a49b04d48d4 | |
| parent | 853eb183d46c1410507c53d19b00c52162592cfc (diff) | |
| download | kernel-ca0c35ad7bb6e178af18f1600a7bc0da944fafb0.tar.xz kernel-ca0c35ad7bb6e178af18f1600a7bc0da944fafb0.zip | |
kapi: de-const read on block and char devices
| -rw-r--r-- | kapi/kapi/filesystem/block_special_file.hpp | 2 | ||||
| -rw-r--r-- | kapi/kapi/filesystem/character_special_file.hpp | 2 | ||||
| -rw-r--r-- | kernel/kernel/drivers/pseudo/null.cpp | 2 | ||||
| -rw-r--r-- | kernel/kernel/drivers/pseudo/zero.cpp | 2 | ||||
| -rw-r--r-- | kernel/kernel/drivers/storage/ram_disk.cpp | 2 | ||||
| -rw-r--r-- | kernel/kernel/test_support/devices/block_device.cpp | 3 | ||||
| -rw-r--r-- | kernel/kernel/test_support/devices/block_device.hpp | 2 |
7 files changed, 7 insertions, 8 deletions
diff --git a/kapi/kapi/filesystem/block_special_file.hpp b/kapi/kapi/filesystem/block_special_file.hpp index ada1edf2..7b06f058 100644 --- a/kapi/kapi/filesystem/block_special_file.hpp +++ b/kapi/kapi/filesystem/block_special_file.hpp @@ -30,7 +30,7 @@ namespace kapi::filesystem //! @param block_index The number of the block to read from. //! @param buffer The buffer to read into. //! @return The number of bytes read on success, an error otherwise. - [[nodiscard]] auto virtual read_block(size_t block_index, std::span<std::byte> buffer) const + [[nodiscard]] auto virtual read_block(size_t block_index, std::span<std::byte> buffer) -> kstd::result<kstd::units::bytes> = 0; //! Write data from a buffer into a block. diff --git a/kapi/kapi/filesystem/character_special_file.hpp b/kapi/kapi/filesystem/character_special_file.hpp index 28bba0b9..a2608489 100644 --- a/kapi/kapi/filesystem/character_special_file.hpp +++ b/kapi/kapi/filesystem/character_special_file.hpp @@ -25,7 +25,7 @@ namespace kapi::filesystem //! //! @param buffer The buffer to read into. //! @return The number of bytes read on success, an error otherwise. - [[nodiscard]] auto virtual read(std::span<std::byte> buffer) const -> kstd::result<kstd::units::bytes> = 0; + [[nodiscard]] auto virtual read(std::span<std::byte> buffer) -> kstd::result<kstd::units::bytes> = 0; //! Write data from a buffer into the stream. //! diff --git a/kernel/kernel/drivers/pseudo/null.cpp b/kernel/kernel/drivers/pseudo/null.cpp index 4995cc25..f6ecf5cc 100644 --- a/kernel/kernel/drivers/pseudo/null.cpp +++ b/kernel/kernel/drivers/pseudo/null.cpp @@ -47,7 +47,7 @@ namespace kernel::drivers::pseudo struct null_node final : kapi::filesystem::character_special_file { public: - [[nodiscard]] auto read(std::span<std::byte>) const -> kstd::result<kstd::units::bytes> override + [[nodiscard]] auto read(std::span<std::byte>) -> kstd::result<kstd::units::bytes> override { return 0_B; } diff --git a/kernel/kernel/drivers/pseudo/zero.cpp b/kernel/kernel/drivers/pseudo/zero.cpp index 724ff25c..e486a985 100644 --- a/kernel/kernel/drivers/pseudo/zero.cpp +++ b/kernel/kernel/drivers/pseudo/zero.cpp @@ -47,7 +47,7 @@ namespace kernel::drivers::pseudo struct zero_node final : kapi::filesystem::character_special_file { public: - [[nodiscard]] auto read(std::span<std::byte> buffer) const -> kstd::result<kstd::units::bytes> override + [[nodiscard]] auto read(std::span<std::byte> buffer) -> kstd::result<kstd::units::bytes> override { std::ranges::fill(buffer, std::byte{0}); return kstd::units::bytes{buffer.size()}; diff --git a/kernel/kernel/drivers/storage/ram_disk.cpp b/kernel/kernel/drivers/storage/ram_disk.cpp index d96e60c0..b1b0d2b3 100644 --- a/kernel/kernel/drivers/storage/ram_disk.cpp +++ b/kernel/kernel/drivers/storage/ram_disk.cpp @@ -54,7 +54,7 @@ namespace kernel::drivers::storage : m_module(module) {} - [[nodiscard]] auto read_block(std::size_t block_index, std::span<std::byte> buffer) const + [[nodiscard]] auto read_block(std::size_t block_index, std::span<std::byte> buffer) -> kstd::result<kstd::units::bytes> override { auto info = devices::block_device_utils::calculate_transfer(*this, block_index); diff --git a/kernel/kernel/test_support/devices/block_device.cpp b/kernel/kernel/test_support/devices/block_device.cpp index b0db0762..8ac1e23c 100644 --- a/kernel/kernel/test_support/devices/block_device.cpp +++ b/kernel/kernel/test_support/devices/block_device.cpp @@ -25,8 +25,7 @@ namespace kernel::tests::devices data.resize(initial_size.value, 0); } - auto block_device::read_block(size_t block_index, std::span<std::byte> buffer) const - -> kstd::result<kstd::units::bytes> + auto block_device::read_block(size_t block_index, std::span<std::byte> buffer) -> kstd::result<kstd::units::bytes> { auto const offset = block_index * block_size(); if (offset.value >= data.size()) diff --git a/kernel/kernel/test_support/devices/block_device.hpp b/kernel/kernel/test_support/devices/block_device.hpp index 9f7f698c..11065109 100644 --- a/kernel/kernel/test_support/devices/block_device.hpp +++ b/kernel/kernel/test_support/devices/block_device.hpp @@ -20,7 +20,7 @@ namespace kernel::tests::devices { block_device(kstd::string const & name, kstd::units::bytes block_size, kstd::units::bytes initial_size = {}); - auto read_block(size_t block_index, std::span<std::byte> buffer) const -> kstd::result<kstd::units::bytes> override; + auto read_block(size_t block_index, std::span<std::byte> buffer) -> kstd::result<kstd::units::bytes> override; auto write_block(size_t block_index, std::span<std::byte const> buffer) -> kstd::result<kstd::units::bytes> override; |
