lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20201207212033.2736-1-info@metux.net>
Date:   Mon,  7 Dec 2020 22:20:33 +0100
From:   "Enrico Weigelt, metux IT consult" <info@...ux.net>
To:     linux-kernel@...r.kernel.org
Cc:     tglx@...utronix.de, mingo@...hat.com, bp@...en8.de, x86@...nel.org,
        hpa@...or.com
Subject: [PATCH] arch: x86: make video init optional (expert)

As x86 is becoming more widespread in embedded devices, that don't have
any video adapter at all, make it possible to opt out from video init on
bootup (expert option). Also useful for minimized paravirtualized kernels.

Most users wanna leave this enabled and shouldn't touch it, thus defaulting
to y and hiding behind CONFIG_EXPERT.

Signed-off-by: Enrico Weigelt <info@...ux.net>
---
 arch/x86/Kconfig       |  7 +++++++
 arch/x86/boot/Makefile | 10 +++++-----
 arch/x86/boot/main.c   |  2 ++
 3 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index fbf26e0f7a6a..43b4b2cca2b0 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -913,6 +913,13 @@ config DMI
 	  affected by entries in the DMI blacklist. Required by PNP
 	  BIOS code.
 
+config X86_BOOT_VIDEO
+	default y
+	bool "Setup video on boot" if EXPERT
+	help
+	  Enable setting video mode on boot. Say Y here unless your machine
+	  doesn't have any video adapter. (eg. embedded systems or VMs)
+
 config GART_IOMMU
 	bool "Old AMD GART IOMMU support"
 	select DMA_OPS
diff --git a/arch/x86/boot/Makefile b/arch/x86/boot/Makefile
index fe605205b4ce..7f67e1118a99 100644
--- a/arch/x86/boot/Makefile
+++ b/arch/x86/boot/Makefile
@@ -34,17 +34,17 @@ subdir-		:= compressed
 
 setup-y		+= a20.o bioscall.o cmdline.o copy.o cpu.o cpuflags.o cpucheck.o
 setup-y		+= early_serial_console.o edd.o header.o main.o memory.o
-setup-y		+= pm.o pmjump.o printf.o regs.o string.o tty.o video.o
-setup-y		+= video-mode.o version.o
+setup-y		+= pm.o pmjump.o printf.o regs.o string.o tty.o version.o
 setup-$(CONFIG_X86_APM_BOOT) += apm.o
+setup-$(CONFIG_X86_BOOT_VIDEO) += video.o video-mode.o
 
 # The link order of the video-*.o modules can matter.  In particular,
 # video-vga.o *must* be listed first, followed by video-vesa.o.
 # Hardware-specific drivers should follow in the order they should be
 # probed, and video-bios.o should typically be last.
-setup-y		+= video-vga.o
-setup-y		+= video-vesa.o
-setup-y		+= video-bios.o
+setup-$(CONFIG_X86_BOOT_VIDEO)	+= video-vga.o
+setup-$(CONFIG_X86_BOOT_VIDEO)	+= video-vesa.o
+setup-$(CONFIG_X86_BOOT_VIDEO)	+= video-bios.o
 
 targets		+= $(setup-y)
 hostprogs	:= tools/build
diff --git a/arch/x86/boot/main.c b/arch/x86/boot/main.c
index e3add857c2c9..61cab92f9a8e 100644
--- a/arch/x86/boot/main.c
+++ b/arch/x86/boot/main.c
@@ -174,7 +174,9 @@ void main(void)
 #endif
 
 	/* Set the video mode */
+#if defined(CONFIG_X86_BOOT_VIDEO)
 	set_video();
+#endif
 
 	/* Do the last things and invoke protected mode */
 	go_to_protected_mode();
-- 
2.11.0

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ