tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: 9.1: boot-time delay?



>> [     3.288539] uhub2: 4 ports with 4 removable, self powered
>> [     3.288539] uhub3: 6 ports with 6 removable, self powered
>> [    25.272567] wd0 at atabus0 drive 0
>> [    25.273568] wd0: <ST500DM002-1BD142>

> There are multiple things with long timeouts happening here, but it
> should be simple to find them.

> Most obvious ones are:

>  - all disk controllers probe their devices and
>    e.g. ATA disks have 30s timeouts for the identification.
>  - USB devices are enumerated

I doubt it's either of those, because the installer kernel and the
operational kernel have identical configurations in those respects, and
the issue manifests without any hardware changes at all between the two
boots.

However, as soon as I sent my mail and started looking at subsetting
diffs, I discovered the diffs between the installer kernel and the
operational kernel were far smaller than I remembered (and mostly
irrelevant):

--- kconf/INSTALLER	2020-11-24 13:27:50.336171910 -0500
+++ kconf/RUN	2021-05-18 15:28:52.898200745 -0400
@@ -1,9 +1,7 @@
 include 	"arch/amd64/conf/std.amd64"
 
 options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
-
-options 	HALTED_MESSAGE="\"\\n\\nInstaller done.\\nPlease remove flash drive and restart your system.\\n\""
-options 	SILENT_DETACH
+options 	HZ=8000
 
 #ident		"GENERIC-$Revision: 1.531.2.10 $"
 
@@ -243,13 +241,13 @@
 #options 	WSEMUL_SUN		# sun terminal emulation
 #options 	WSEMUL_DEFAULT="\"vt100\""  # NB: default is "sun" if enabled
 # different kernel output - see dev/wscons/wsdisplayvar.h
-options 	WS_KERNEL_FG=WSCOL_RED
+options 	WS_KERNEL_FG=WSCOL_BLACK
 options 	WS_KERNEL_BG=WSCOL_BLACK
 # compatibility to other console drivers
-#options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
-#options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
-#options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
-#options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
+options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
+options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
+options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
+options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
 # don't attach pckbd as the console if no PS/2 keyboard is found
 options 	PCKBD_CNATTACH_MAY_FAIL
 # see dev/pckbport/wskbdmap_mfii.c for implemented layouts
@@ -263,14 +261,14 @@
 # work around a hardware bug that loaded fonts don't work; found on ATI cards
 #options 	VGA_CONSOLE_ATI_BROKEN_FONTSEL
 # console scrolling support.
-options 	WSDISPLAY_SCROLLSUPPORT
+#options 	WSDISPLAY_SCROLLSUPPORT
 # enable VGA raster mode capable of displaying multilingual text on console
 #options 	VGA_RASTERCONSOLE
 # enable splash screen support; requires genfb or radeonfb
 #options 	SPLASHSCREEN
 
 # Kernel root file system and dump configuration.
-config		netbsd	root on ? type ?
+config		netbsd	root on wd0e type ?
 #config		netbsd	root on sd0a type ffs
 #config		netbsd	root on ? type nfs
 
@@ -405,7 +403,7 @@
 wsdisplay*	at wsemuldisplaydev?
 wskbd*		at pckbd? console ?
 wsmouse*	at pms? mux 2
-wsmouse*	at wsmousedev?
+wsmouse*	at wsmousedev? mux 2
 
 attimer0	at isa?
 pcppi0		at isa?
@@ -422,17 +420,17 @@
 #tdfxdrm*	at drm?		# 3dfx (voodoo) DRM driver
 
 # DRMKMS drivers
-#i915drmkms*	at pci? dev ? function ?
-#intelfb*	at intelfbbus?
+i915drmkms*	at pci? dev ? function ?
+intelfb*	at intelfbbus?
 
-#radeon* 	at pci? dev ? function ?
-#radeondrmkmsfb* at radeonfbbus?
+radeon* 	at pci? dev ? function ?
+radeondrmkmsfb* at radeonfbbus?
 
 #amdgpu*	at pci? dev ? function ?
 #amdgpufb*	at amdgpufbbus?
 
-#nouveau*	at pci? dev ? function ?
-#nouveaufb*	at nouveaufbbus?
+nouveau*	at pci? dev ? function ?
+nouveaufb*	at nouveaufbbus?
 
 # DRMUMS drivers
 #viadrmums*	at drm?
@@ -572,7 +570,7 @@
 
 # I2C Mice
 ims*	at ihidev? reportid ?
-wsmouse* at ims? mux 0
+wsmouse* at ims? mux 2
 
 # I2O devices
 iop*	at pci? dev ? function ?	# I/O processor

(HALTED_MESSAGE and SILENT_DETACH are options I added; HALTED_MESSAGE
just replaces the "halted, press any key to reboot" message on halt,
while SILENT_DETACH just does flags|=DETACH_QUIET on entry to
config_detach; the idea is to avoid spamming the console with detach
messages on halt).

This leads me to the depressing conclusion that it is probably one of
the video drivers, which are not optional for the operational kernel.

/~\ The ASCII				  Mouse
\ / Ribbon Campaign
 X  Against HTML		mouse%rodents-montreal.org@localhost
/ \ Email!	     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B


Home | Main Index | Thread Index | Old Index