mrc0mmand / rpms / libguestfs

Forked from rpms/libguestfs 3 years ago
Clone
Blob Blame History Raw
From 0e7af58f29e49aba87f3c0d968b084c124fe5dbe Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Sun, 18 Dec 2016 19:27:20 +0000
Subject: [PATCH] appliance: Disable EDD (edd=off) (RHBZ#1404287).

EDD (https://en.wikipedia.org/wiki/Enhanced_Disk_Drive) is a BIOS INT 13h
subcall for communicating the extended size of the boot disk over 8GB
to the OS.  Since libguestfs doesn't use a boot disk, and the
appliance disk is limited to 4GB, and we use virtio-scsi, this is all
useless.

EDD is also broken currently on RHEL 7.3, see:
https://bugzilla.redhat.com/show_bug.cgi?id=1404287

Also the EDD probing takes significant extra time (about 80ms on my
laptop), and using edd=off reduces this time although doesn't entirely
eliminate it.

(cherry picked from commit 764fd3fcc629ff91582ec8549ff80c240ba8393b)
---
 src/launch.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/launch.c b/src/launch.c
index 269eeca..0075ea7 100644
--- a/src/launch.c
+++ b/src/launch.c
@@ -332,6 +332,7 @@ guestfs_int_appliance_command_line (guestfs_h *g, const char *appliance_dev,
       */
      " efi-rtc=noprobe"
 #endif
+     " edd=off"                 /* RHBZ#1404287 */
      " udevtimeout=6000"/* for slow systems (RHBZ#480319, RHBZ#1096579) */
      " udev.event-timeout=6000" /* for newer udevd */
      " no_timer_check"  /* fix for RHBZ#502058 */
-- 
1.8.3.1