--- a/sys/bus/isa/vga_isa.c +++ b/sys/bus/isa/vga_isa.c @@ -108,6 +108,9 @@ video_adapter_t adp; int error; + /* Never trust vga_probe_unit() to fill adp on success (see vga.c). */ + bzero(&adp, sizeof(adp)); + /* No pnp support */ if (isa_get_vendorid(dev)) return (ENXIO); --- a/sys/dev/video/fb/vga.c +++ b/sys/dev/video/fb/vga.c @@ -75,7 +75,7 @@ sw = vid_get_switch(VGA_DRIVER_NAME); if (sw == NULL) - return 0; + return ENXIO; error = (*sw->probe)(unit, &adp, NULL, flags); if (error) return error;