Well, there's only one place I can find where that "bootinfo too big"
message gets generated, src/sys/arch/i386/stand/lib/bootinfo.c:46
...
if (bootinfo->nentries >= BTINFO_MAX) {
panic("bootinfo too big");
}
bootinfo->entry[bootinfo->nentries++] = vtophys(what);
...
Perhaps you could increase the limit in bootinfo.h (it's currently set
to 32, which should be enough).
You might also add something at the beginning of bi_add (in bootinfo.c)
to print the arguments.
printf("%s: what %p, type %d, size %d\n", __func__, what, type, size);
(Yes, here 'size' is an int, and not a size_t, so use %d vs %z!)
As far as the "scsiverbose should fail", yeah, you haven't gotten that
far yet. At this point we're just creating the list of stuff that the
bootloader needs to do, we haven't actually loaded anything yet.
I might also suggest filing a PR so the data in this thread doesn't get
lost!
Thanks!
On Fri, 26 Jan 2018, John D. Baker wrote:
On Thu, 25 Jan 2018, John D. Baker wrote:
On Fri, 26 Jan 2018, Paul Goyette wrote:
Hmmm. Can you provide the [module load messages] segment?
I'm not too familiar with the boot mechanism, but it is possible that
changes in modules' "require" lists could be resulting in more info
being stuffed into the bootinfo structure. Did it generate messages
for _all_ modules specified in boot.cfg ?
For reference, from the "/boot.cfg" file:
load=acpiverbose
load=pciverbose
load=scsiverbose
load=usbverbose
load=miiverbose
On serial console after issusing 'consdev com0':
NetBSD/x86 PXE boot, Revision 5.1 (Sat Nov 18 23:07:27 UTC 2017) (from NetBSD
8.99.7)
Memory: 547/3659136 k
boot /netbsd -s
7853808+134256+1962896 [408314+519024+348660]=0xb38058
Loading /stand/amd64/8.0/modules/acpiverbose/acpiverbose.kmod
Loading /stand/amd64/8.0/modules/pciverbose/pciverbose.kmod
Loading /stand/amd64/8.0/modules/scsiverbose/scsiverbose.kmod
Loading /stand/amd64/8.0/modules/usbverbose/usbverbose.kmod
Loading /stand/amd64/8.0/modules/miiverbose/miiverbose.kmod
Loading /stand/amd64/8.0/modules/nfs/nfs.kmod
bootinfo too big
On video:
Boot fail
Likewise, with an alternate netbsd-8 kernel:
boot /netbsd-GENERIC_R5RS -s
18176760+813164+1283988 [1087755+1137336+790749]=0x16e0e00
Loading /stand/amd64/8.0/modules/acpiverbose/acpiverbose.kmod
Loading /stand/amd64/8.0/modules/pciverbose/pciverbose.kmod
Loading /stand/amd64/8.0/modules/scsiverbose/scsiverbose.kmod
Loading /stand/amd64/8.0/modules/usbverbose/usbverbose.kmod
Loading /stand/amd64/8.0/modules/miiverbose/miiverbose.kmod
Loading /stand/amd64/8.0/modules/nfs/nfs.kmod
bootinfo too big
Also, have you tried -current to see if the same problem exists?
Not on this machine, yet. I can arrange to test -current when I
capture the module-loading messages for 8.0_BETA.
Attempt booting a -current (8.99.12) kernel:
NetBSD/x86 PXE boot, Revision 5.1 (Sat Nov 18 23:07:27 UTC 2017) (from NetBSD
8.99.7)
Memory: 547/3659136 k
boot /netbsd-current -s
7895672+138688+1958464 [454095+537144+361780]=0xb4ad80
Loading /stand/amd64/8.99.12/modules/acpiverbose/acpiverbose.kmod
Loading /stand/amd64/8.99.12/modules/pciverbose/pciverbose.kmod
Loading /stand/amd64/8.99.12/modules/scsiverbose/scsiverbose.kmod
Loading /stand/amd64/8.99.12/modules/usbverbose/usbverbose.kmod
Loading /stand/amd64/8.99.12/modules/miiverbose/miiverbose.kmod
Loading /stand/amd64/8.99.12/modules/nfs/nfs.kmod
bootinfo too big
An alternate -current kernel:
boot /netbsd-GENERIC_R5RS-current -s
18210152+817388+1279764 [1102810+1151232+801597]=0x16ea9c8
Loading /stand/amd64/8.99.12/modules/acpiverbose/acpiverbose.kmod
Loading /stand/amd64/8.99.12/modules/pciverbose/pciverbose.kmod
Loading /stand/amd64/8.99.12/modules/scsiverbose/scsiverbose.kmod
Loading /stand/amd64/8.99.12/modules/usbverbose/usbverbose.kmod
Loading /stand/amd64/8.99.12/modules/miiverbose/miiverbose.kmod
Loading /stand/amd64/8.99.12/modules/nfs/nfs.kmod
bootinfo too big
The "scsiverbose" module should actually fail as it's built into
the kernels I'm booting (custom config includes "GENERIC" and elides
superfluous options/devices). Perhaps that occurs later and wasn't
reached when bootinfo was declared too big.
Again, so far, this one machine is the only one having this trouble.
It used to work. It appears that I last booted the machine this way
as recently as 13 August 2017 (based on file dates in the machine's
NFS file system).
Other machines netboot -current (amd64 and i386 alike) with no problem.
Said other machines have no more than 3 hard disks.
--
|/"\ John D. Baker, KN5UKS NetBSD Darwin/MacOS X
|\ / jdbaker[snail]mylinuxisp[flyspeck]com OpenBSD FreeBSD
| X No HTML/proprietary data in email. BSD just sits there and works!
|/ \ GPGkeyID: D703 4A7E 479F 63F8 D3F4 BD99 9572 8F23 E4AD 1645
!DSPAM:5a6bbf9a59608338164531!
+------------------+--------------------------+----------------------------+
| Paul Goyette | PGP Key fingerprint: | E-mail addresses: |
| (Retired) | FA29 0E3B 35AF E8AE 6651 | paul at whooppee dot com |
| Kernel Developer | 0786 F758 55DE 53BA 7731 | pgoyette at netbsd dot org |
+------------------+--------------------------+----------------------------+