svn commit: r351630 - head/stand/efi/libefi
Toomas Soome
tsoome at FreeBSD.org
Fri Aug 30 20:54:31 UTC 2019
Author: tsoome
Date: Fri Aug 30 20:54:30 2019
New Revision: 351630
URL: https://svnweb.freebsd.org/changeset/base/351630
Log:
qemu-system-aarch64 does list block device with very large block size
Also insert Vendor device as "parent" disk (found in
qemu-system-aarch64 -cpu cortex-a57).
This does fix lsdev in loader.efi on this platform.
Modified:
head/stand/efi/libefi/efipart.c
Modified: head/stand/efi/libefi/efipart.c
==============================================================================
--- head/stand/efi/libefi/efipart.c Fri Aug 30 20:19:43 2019 (r351629)
+++ head/stand/efi/libefi/efipart.c Fri Aug 30 20:54:30 2019 (r351630)
@@ -255,10 +255,12 @@ efipart_inithandles(void)
/*
* We assume the block size 512 or greater power of 2.
+ * Also skip devices with block size > 32k.
* iPXE is known to insert stub BLOCK IO device with
* BlockSize 1.
*/
if (blkio->Media->BlockSize < 512 ||
+ blkio->Media->BlockSize > (1 << 15) ||
!powerof2(blkio->Media->BlockSize)) {
continue;
}
@@ -603,7 +605,8 @@ restart:
continue;
if (DevicePathType(node) == HARDWARE_DEVICE_PATH &&
- DevicePathSubType(node) == HW_PCI_DP) {
+ (DevicePathSubType(node) == HW_PCI_DP ||
+ DevicePathSubType(node) == HW_VENDOR_DP)) {
STAILQ_REMOVE(&pdinfo, hd, pdinfo, pd_link);
efipart_hdinfo_add(hd, NULL);
goto restart;
More information about the svn-src-all
mailing list