Date: Mon, 24 Nov 2014 08:01:08 -0700 From: Ian Lepore <ian@FreeBSD.org> To: Mark R V Murray <mark@grondar.org> Cc: Dag-Erling =?ISO-8859-1?Q?Sm=F8rgrav?= <des@des.no>, arch@freebsd.org Subject: Re: svn commit: r274739 - head/sys/mips/conf Message-ID: <1416841268.1147.386.camel@revolution.hippie.lan> In-Reply-To: <18B8A926-59C0-49B4-ADA3-A11688609852@grondar.org> References: <201411200552.sAK5qnXP063073@svn.freebsd.org> <20141120084832.GE24601@funkthat.com> <AE8F2D30-7F91-4C90-B79A-D99857D8AED8@grondar.org> <20141121092245.GI99957@funkthat.com> <1416582989.1147.250.camel@revolution.hippie.lan> <026FEB8A-CA8C-472F-A8E4-DA3D0AC44B34@grondar.org> <1416596266.1147.290.camel@revolution.hippie.lan> <F017033A-B761-4435-A7F8-264D2F4662A0@grondar.org> <1416598889.1147.297.camel@revolution.hippie.lan> <86egsvueqk.fsf@nine.des.no> <1416691274.1147.339.camel@revolution.hippie.lan> <398A380D-49AF-480C-8842-8835F81EF641@grondar.org> <1416806894.1147.362.camel@revolution.hippie.lan> <18B8A926-59C0-49B4-ADA3-A11688609852@grondar.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 2014-11-24 at 07:53 +0000, Mark R V Murray wrote: > > On 24 Nov 2014, at 05:28, Ian Lepore <ian@FreeBSD.org> wrote: > >=20 > > But I got some logging that maybe will be useful to you, attached. T= his > > is the boot logging from hitting the reset button 4 times in a row. = I > > had RANDOM_DEBUG and FORTUNA options on. >=20 > Thanks. >=20 > > In the random debugging printf for device attach I added a display of > > the actual bits being fed in as well as the count. That data in tabu= lar > > form (from 3 of the 4 runs so it fits email width) is interesting: > >=20 > > nexus0: 0x00000010c6f7a0b6 0x00000010c6f7a0b6 0x00000010c6f7a0b6 > > at91_aic0: 0x00000010c6f7a0b6 0x00000010c6f7a0b6 0x00000010c6f7a0b6 > > at91_pmc0: 0x00000010c6f7a0b6 0x00000010c6f7a0b6 0x00000010c6f7a0b6 > > at91_st0: 0x0000003254e6e222 0x0000003254e6e222 0x0000003254e6e222 > > mmc0: 0x0000000000000000 0x0000000000000000 0x0000020000000000 > > at91_mci0: 0x0004480000000000 0x0004480000000000 0x00044e0000000000 > > ukphy0: 0x0001980000000000 0x00019a0000000000 0x0001960000000000 > > miibus0: 0x00060a0000000000 0x00060c0000000000 0x00060a0000000000 > > ate0: 0x000d260000000000 0x000d280000000000 0x000d2a0000000000 > > uart0: 0x0001400000000000 0x0001400000000000 0x0001400000000000 > > atmelarm0: 0x00231cc9539b8887 0x00231ec9539b8887 0x002328c9539b8887 > > mmcsd0: 0x0002620000000000 0x0002620000000000 0x0002620000000000 >=20 > Those numbers look weird; please send a diff of your change. >=20 > The number of devices probed is also low. When you get the booting > problem sorted, there are some constants that we could change that > may help. >=20 > > This nicely illustrates one of the main points I've been trying to ma= ke > > for a long time: This kind of system boots nearly identically every > > time you power on or reset. On every boot, all that "entropy" that's > > getting fed in is about the same as last time it booted. In addition= to > > the low quantity of data available, when you consider its similarity > > from one reboot to the next it's hard to even grace it with the name > > "entropy.=A1 >=20 > I=FFm well aware of that; I=FFve been saying something similar since at > least 2000. >=20 > M The logging change was pretty simple: Index: kern/subr_bus.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- kern/subr_bus.c (revision 274946) +++ kern/subr_bus.c (working copy) @@ -2851,8 +2851,8 @@ device_attach(device_t dev) * need to be adjusted on other platforms. */ #ifdef RANDOM_DEBUG - printf("random: %s(): feeding %d bit(s) of entropy from %s%d\n", - __func__, 4, dev->driver->name, dev->unit); + printf("random: %s(): feeding %d bit(s) of entropy from %s%d: 0x%016llx= \n", + __func__, 4, dev->driver->name, dev->unit, attachtime); #endif random_harvest(&attachtime, sizeof(attachtime), 4, RANDOM_ATTACH); device_sysctl_update(dev); The low number of devices is pretty typical. Sometimes there'll be another uart. Sometimes an i2c eeprom. =20 I have no idea what's up with the first 3 unchanging numbers, but I suspect a big part of the explanation for the other numbers is the 32KHz clock it's getting the numbers from. There used to be a clock running at about 2.8MHz, but the source code for that driver seems to have disappeared from FreeBSD at some point between 8.x and -current. -- Ian
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1416841268.1147.386.camel>