diff options
Diffstat (limited to 'dev/Kernel')
| -rw-r--r-- | dev/Kernel/HALKit/AMD64/PCI/DMA.cc | 3 | ||||
| -rw-r--r-- | dev/Kernel/HALKit/AMD64/Storage/SATA.cc | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/dev/Kernel/HALKit/AMD64/PCI/DMA.cc b/dev/Kernel/HALKit/AMD64/PCI/DMA.cc index 1b54ad30..541e9533 100644 --- a/dev/Kernel/HALKit/AMD64/PCI/DMA.cc +++ b/dev/Kernel/HALKit/AMD64/PCI/DMA.cc @@ -22,8 +22,9 @@ namespace Kernel { if (!fAddress) return false; + if (offset == 0) - return true; + return false; kout << "[DMAWrapper::IsIn] Checking offset..\n"; return reinterpret_cast<UIntPtr>(fAddress) >= offset; diff --git a/dev/Kernel/HALKit/AMD64/Storage/SATA.cc b/dev/Kernel/HALKit/AMD64/Storage/SATA.cc index dc60a723..1ecdb0c3 100644 --- a/dev/Kernel/HALKit/AMD64/Storage/SATA.cc +++ b/dev/Kernel/HALKit/AMD64/Storage/SATA.cc @@ -152,7 +152,7 @@ Kernel::Boolean drv_std_init(Kernel::UInt16& PortsImplemented) Kernel::Boolean drv_std_detected(Kernel::Void) { - return kPCIDevice.DeviceId() != 0xFFFF; + return kPCIDevice.DeviceId() != 0xFFFF && kCurrentDiskSectorCount > 0; } Kernel::Void drv_std_write(Kernel::UInt64 lba, Kernel::Char* buffer, Kernel::SizeT sector_sz, Kernel::SizeT size_buffer) |
