boot/functions: add more checks
Signed-off-by: AuxXxilium <info@auxxxilium.tech>
This commit is contained in:
@@ -94,7 +94,12 @@ if ! readConfigMap "addons" "${USER_CONFIG_FILE}" | grep -q nvmesystem; then
|
||||
break
|
||||
fi
|
||||
done
|
||||
[ ${HASATA} -eq 0 ] && echo -e "\033[1;31m*** Please insert at least one Sata/SAS/SCSI Disk for System installation, except for the Bootloader Disk. ***\033[0m"
|
||||
[ ${HASATA} -eq 0 ] && echo -e "\033[1;31m*** Note: Please insert at least one Sata/SAS/SCSI Disk for System installation, except the Bootloader Disk. ***\033[0m"
|
||||
fi
|
||||
|
||||
if checkBIOS_VT_d && [ $(echo "${KVER:-4}" | cut -d'.' -f1) -lt 5 ]; then
|
||||
echo -e "\033[1;31m*** Notice: Disable Intel(VT-d)/AMD(AMD-V) in BIOS/UEFI settings if you encounter a boot failure. ***\033[0m"
|
||||
echo
|
||||
fi
|
||||
|
||||
# Read necessary variables
|
||||
|
||||
@@ -381,6 +381,33 @@ function delCmdline() {
|
||||
setCmdline "${1}" "${CMDLINE}"
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# check CPU Intel(VT-d)/AMD(AMD-Vi)
|
||||
function checkCPU_VT_d() {
|
||||
lsmod | grep -q msr || modprobe msr 2>/dev/null
|
||||
if grep -q "GenuineIntel" /proc/cpuinfo 2>/dev/null; then
|
||||
local VT_D_ENABLED=$(rdmsr 0x3a 2>/dev/null)
|
||||
[ "$((${VT_D_ENABLED:-0x0} & 0x5))" -eq $((0x5)) ] && return 0
|
||||
elif grep -q "AuthenticAMD" /proc/cpuinfo 2>/dev/null; then
|
||||
local IOMMU_ENABLED=$(rdmsr 0xC0010114 2>/dev/null)
|
||||
[ "$((${IOMMU_ENABLED:-0x0} & 0x1))" -eq $((0x1)) ] && return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# check BIOS Intel(VT-d)/AMD(AMD-Vi)
|
||||
function checkBIOS_VT_d() {
|
||||
if grep -q "GenuineIntel" /proc/cpuinfo 2>/dev/null; then
|
||||
dmesg 2>/dev/null | grep -iq "DMAR-IR.*DRHD base" && return 0
|
||||
elif grep -q "AuthenticAMD" /proc/cpuinfo 2>/dev/null; then
|
||||
dmesg 2>/dev/null | grep -iq "AMD-Vi.*enabled" && return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# Rebooting
|
||||
function rebootTo() {
|
||||
|
||||
Reference in New Issue
Block a user