diff options
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/kernel/filesystems/ext2/filesystem.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/kernel/filesystems/ext2/filesystem.cpp b/kernel/kernel/filesystems/ext2/filesystem.cpp index 384dfc77..7eaeeba2 100644 --- a/kernel/kernel/filesystems/ext2/filesystem.cpp +++ b/kernel/kernel/filesystems/ext2/filesystem.cpp @@ -568,7 +568,7 @@ namespace kernel::filesystems::ext2 //! @return The filesystem offset of the block group descriptor table. [[nodiscard]] auto block_group_descriptor_table_offset(driver_state const & state) -> kstd::bytes { - return block_size(state) == 1024_B ? 2 * block_size(state) : block_size(state); + return (state.superblock.first_data_block + 1) * block_size(state); } //! The set of "incompatible" Extended Filesystem features supported by this driver. @@ -894,7 +894,7 @@ namespace kernel::filesystems::ext2 { bitmap_set(block_bitmap, i); ++claimed; - allocated_blocks.push_back(i + group_index * superblock.blocks_per_group); + allocated_blocks.push_back(i + group_index * superblock.blocks_per_group + superblock.first_data_block); } } |
