From fdaba7aaa588f2808e66c439db0bb4ea8bebbf5e Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Mon, 28 Oct 2013 01:17:42 +0100 Subject: [PATCH] Skip boot device check sum test on CD boot Whatever we read from the drive in the boot loader isn't what we can read from the device later, so rather skip the check sum test for identifying the boot device in the kernel when booting off CD. Fixes #10147. --- src/system/kernel/fs/vfs_boot.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/system/kernel/fs/vfs_boot.cpp b/src/system/kernel/fs/vfs_boot.cpp index 5af49a6683..ac0f89971c 100644 --- a/src/system/kernel/fs/vfs_boot.cpp +++ b/src/system/kernel/fs/vfs_boot.cpp @@ -222,6 +222,11 @@ DiskBootMethod::IsBootDevice(KDiskDevice* device, bool strict) if (strict && device->Size() != disk->device.unknown.size) return false; + // Skip the check sum test for CDs, since we didn't read anything + // useful from the disk in the boot loader. + if (fMethod == BOOT_METHOD_CD) + break; + // check if the check sums match, too for (int32 i = 0; i < NUM_DISK_CHECK_SUMS; i++) { if (disk->device.unknown.check_sums[i].offset == -1)