Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Nov 2014 22:28:14 -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:  <1416806894.1147.362.camel@revolution.hippie.lan>
In-Reply-To: <398A380D-49AF-480C-8842-8835F81EF641@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>

next in thread | previous in thread | raw e-mail | index | archive | help

--=-NTbRHXDDO6bb9n80THD/
Content-Type: text/plain; charset="iso-8859-7"
Content-Transfer-Encoding: quoted-printable
X-MIME-Autoconverted: from 8bit to quoted-printable by ilsoft.org id sAO5SGHf009664

On Sat, 2014-11-22 at 22:55 +0000, Mark R V Murray wrote:
> > On 22 Nov 2014, at 21:21, Ian Lepore <ian@FreeBSD.org> wrote:
> >> We now have automatic unblocking back (which is *precisely* what you
> >=20
> > I noted that in one of my replies, and also said that it appeared fro=
m
> > this thread that that was considered a temporary action which would b=
e
> > undone.  Nobody contradicted that until now.
>=20
> This is Yarrow-specific. As Yarrow is no longer recommended by its
> designers, it should be considered deprecated.
>=20
> Fortuna gets going much quicker than Yarrow; have you tried this like
> I asked?
>=20
> >> wanted), and I am willing to allow a tunable to turn it off, but I w=
ill
> >> not allow disabling it by default, because I believe it is better th=
an
> >=20
> > That's all I ever asked for, from day one, and this is the first
> > non-negative response to it I can remember.  I never asked for it to =
be
> > disabled by default.  I asked for a knob.  I asked for it to possibil=
y
> > take multiple knobs, or anything else reasonable to make it difficult=
 to
> > do the wrong thing by accident.
>=20
> See above and my other mail (the one you didn=A2t answer).
>=20
> M

I've been unable to boot -current on one of these low-end arm boards for
quite a while.  Today I finally found a few hours to debug that and get
it at least to the point of trying to mount root, where it hangs
apparently forever.  I don't think that has anything to do with random
stuff, it's probably just more buggage in the atmel arm stuff that I
need to dig into.

But I got some logging that maybe will be useful to you, attached.  This
is the boot logging from hitting the reset button 4 times in a row.  I
had RANDOM_DEBUG and FORTUNA options on.

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 tabular
form (from 3 of the 4 runs so it fits email width) is interesting:

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

This nicely illustrates one of the main points I've been trying to make
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."

-- Ian


--=-NTbRHXDDO6bb9n80THD/
Content-Disposition: attachment; filename="boot_random_debug.txt"
Content-Type: text/plain; name="boot_random_debug.txt"; charset="us-ascii"
Content-Transfer-Encoding: 7bit

TSC board boot

Default: /boot/kernel/kernel.gz.tramp
boot:
GDB: debug ports: uart
GDB: current port: uart
KDB: debugger backends: ddb gdb
KDB: current backend: ddb
Copyright (c) 1992-2014 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 11.0-CURRENT #8 r274946M: Sun Nov 23 21:36:52 MST 2014
    ilepore@revolution.hippie.lan:/local/build/staging/freebsd/rm92/obj/arm.arm/local/build/staging/freebsd/rm92/src/sys/TFLEX arm
FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
CPU: ARM920T rev 0 (ARM9TDMI core)
  Little-endian DC enabled IC enabled WB enabled LABT branch prediction disabled
  16KB/32B 64-way instruction cache
  16KB/32B 64-way write-back-locking-A data cache
real memory  = 67108864 (64 MB)
avail memory = 59838464 (57 MB)
random device not loaded/active; using insecure pseudo-random number generator
random: entropy device infrastructure driver
random: random_adaptors_init
random: selecting highest priority adaptor <Dummy>
random: random_adaptor_choose - changing from NULL to Dummy
random: dummy_random_init
random: SOFT: fortuna init()
random: selecting highest priority adaptor <Fortuna>
random: random_adaptor_choose - changing from Dummy to Fortuna
random: random_harvestq_init
random: device_attach(): feeding 4 bit(s) of entropy from nexus0: 0x00000010c6f7a0b6
atmelarm0: <at91rm9200>
at91_aic0: <AIC> mem 0xfffff000-0xfffff1ff on atmelarm0
at91_aic0: Attach 2147483647
random: device_attach(): feeding 4 bit(s) of entropy from at91_aic0: 0x00000010c6f7a0b6
at91_pmc0: <PMC> mem 0xfffffc00-0xfffffcff irq 1 on atmelarm0
at91_pmc0: Primary: 16000000 Hz PLLA: 180 MHz CPU: 180 MHz MCK: 90 MHz
random: device_attach(): feeding 4 bit(s) of entropy from at91_pmc0: 0x00000010c6f7a0b6
at91_st0: <ST> mem 0xfffffd00-0xfffffdff irq 1 on atmelarm0
at91_st0: watchdog registered, timeout intervall max. 64 sec
at91_st0: Cannot get 100 Hz clock; using 100Hz
Timecounter "AT91RM9200 timer" frequency 32768 Hz quality 1000
random: device_attach(): feeding 4 bit(s) of entropy from at91_st0: 0x0000003254e6e222
at91_mci0: <MCI mmc/sd host bridge> mem 0xfffb4000-0xfffb7fff irq 10 on atmelarm0
mmc0: <MMC/SD bus> on at91_mci0
random: device_attach(): feeding 4 bit(s) of entropy from mmc0: 0x0000000000000000
random: device_attach(): feeding 4 bit(s) of entropy from at91_mci0: 0x0004480000000000
ate0: <EMAC> mem 0xfffbc000-0xfffbffff irq 24 on atmelarm0
miibus0: <MII bus> on ate0
ukphy0: <Generic IEEE 802.3u media interface> PHY 0 on miibus0
ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
random: device_attach(): feeding 4 bit(s) of entropy from ukphy0: 0x0001980000000000
random: device_attach(): feeding 4 bit(s) of entropy from miibus0: 0x00060a0000000000
ate0: Ethernet address: 42:53:44:00:00:01
random: device_attach(): feeding 4 bit(s) of entropy from ate0: 0x000d260000000000
uart0: <DBGU> mem 0xfffff200-0xfffff3ff irq 1 on atmelarm0
uart0: console (115200,n,8,1)
random: device_attach(): feeding 4 bit(s) of entropy from uart0: 0x0001400000000000
random: device_attach(): feeding 4 bit(s) of entropy from atmelarm0: 0x00231cc9539b8887
Timecounters tick every 10.000 msec
mmcsd0: 8GB <SDHC 00000 1.0 SN 91E014AD MFG 04/2014 by 27 SM> at mmc0 22.5MHz/1bit/64-block
random: device_attach(): feeding 4 bit(s) of entropy from mmcsd0: 0x0002620000000000
Trying to mount root from ufs:/dev/mmcsd0s1a []...
warning: no time-of-day clock registered, system time will not be set accurately

TSC board boot

Default: /boot/kernel/kernel.gz.tramp
boot:
GDB: debug ports: uart
GDB: current port: uart
KDB: debugger backends: ddb gdb
KDB: current backend: ddb
Copyright (c) 1992-2014 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 11.0-CURRENT #8 r274946M: Sun Nov 23 21:36:52 MST 2014
    ilepore@revolution.hippie.lan:/local/build/staging/freebsd/rm92/obj/arm.arm/local/build/staging/freebsd/rm92/src/sys/TFLEX arm
FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
CPU: ARM920T rev 0 (ARM9TDMI core)
  Little-endian DC enabled IC enabled WB enabled LABT branch prediction disabled
  16KB/32B 64-way instruction cache
  16KB/32B 64-way write-back-locking-A data cache
real memory  = 67108864 (64 MB)
avail memory = 59838464 (57 MB)
random device not loaded/active; using insecure pseudo-random number generator
random: entropy device infrastructure driver
random: random_adaptors_init
random: selecting highest priority adaptor <Dummy>
random: random_adaptor_choose - changing from NULL to Dummy
random: dummy_random_init
random: SOFT: fortuna init()
random: selecting highest priority adaptor <Fortuna>
random: random_adaptor_choose - changing from Dummy to Fortuna
random: random_harvestq_init
random: device_attach(): feeding 4 bit(s) of entropy from nexus0: 0x00000010c6f7a0b6
atmelarm0: <at91rm9200>
at91_aic0: <AIC> mem 0xfffff000-0xfffff1ff on atmelarm0
at91_aic0: Attach 2147483647
random: device_attach(): feeding 4 bit(s) of entropy from at91_aic0: 0x00000010c6f7a0b6
at91_pmc0: <PMC> mem 0xfffffc00-0xfffffcff irq 1 on atmelarm0
at91_pmc0: Primary: 16000000 Hz PLLA: 180 MHz CPU: 180 MHz MCK: 90 MHz
random: device_attach(): feeding 4 bit(s) of entropy from at91_pmc0: 0x00000010c6f7a0b6
at91_st0: <ST> mem 0xfffffd00-0xfffffdff irq 1 on atmelarm0
at91_st0: watchdog registered, timeout intervall max. 64 sec
at91_st0: Cannot get 100 Hz clock; using 100Hz
Timecounter "AT91RM9200 timer" frequency 32768 Hz quality 1000
random: device_attach(): feeding 4 bit(s) of entropy from at91_st0: 0x0000003254e6e222
at91_mci0: <MCI mmc/sd host bridge> mem 0xfffb4000-0xfffb7fff irq 10 on atmelarm0
mmc0: <MMC/SD bus> on at91_mci0
random: device_attach(): feeding 4 bit(s) of entropy from mmc0: 0x0000000000000000
random: device_attach(): feeding 4 bit(s) of entropy from at91_mci0: 0x0004480000000000
ate0: <EMAC> mem 0xfffbc000-0xfffbffff irq 24 on atmelarm0
miibus0: <MII bus> on ate0
ukphy0: <Generic IEEE 802.3u media interface> PHY 0 on miibus0
ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
random: device_attach(): feeding 4 bit(s) of entropy from ukphy0: 0x00019a0000000000
random: device_attach(): feeding 4 bit(s) of entropy from miibus0: 0x00060c0000000000
ate0: Ethernet address: 42:53:44:00:00:01
random: device_attach(): feeding 4 bit(s) of entropy from ate0: 0x000d280000000000
uart0: <DBGU> mem 0xfffff200-0xfffff3ff irq 1 on atmelarm0
uart0: console (115200,n,8,1)
random: device_attach(): feeding 4 bit(s) of entropy from uart0: 0x0001400000000000
random: device_attach(): feeding 4 bit(s) of entropy from atmelarm0: 0x00231ec9539b8887
Timecounters tick every 10.000 msec
mmcsd0: 8GB <SDHC 00000 1.0 SN 91E014AD MFG 04/2014 by 27 SM> at mmc0 22.5MHz/1bit/64-block
random: device_attach(): feeding 4 bit(s) of entropy from mmcsd0: 0x0002620000000000
Trying to mount root from ufs:/dev/mmcsd0s1a []...
warning: no time-of-day clock registered, system time will not be set accurately

TSC board boot

Default: /boot/kernel/kernel.gz.tramp
boot:
GDB: debug ports: uart
GDB: current port: uart
KDB: debugger backends: ddb gdb
KDB: current backend: ddb
Copyright (c) 1992-2014 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 11.0-CURRENT #8 r274946M: Sun Nov 23 21:36:52 MST 2014
    ilepore@revolution.hippie.lan:/local/build/staging/freebsd/rm92/obj/arm.arm/local/build/staging/freebsd/rm92/src/sys/TFLEX arm
FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
CPU: ARM920T rev 0 (ARM9TDMI core)
  Little-endian DC enabled IC enabled WB enabled LABT branch prediction disabled
  16KB/32B 64-way instruction cache
  16KB/32B 64-way write-back-locking-A data cache
real memory  = 67108864 (64 MB)
avail memory = 59838464 (57 MB)
random device not loaded/active; using insecure pseudo-random number generator
random: entropy device infrastructure driver
random: random_adaptors_init
random: selecting highest priority adaptor <Dummy>
random: random_adaptor_choose - changing from NULL to Dummy
random: dummy_random_init
random: SOFT: fortuna init()
random: selecting highest priority adaptor <Fortuna>
random: random_adaptor_choose - changing from Dummy to Fortuna
random: random_harvestq_init
random: device_attach(): feeding 4 bit(s) of entropy from nexus0: 0x00000010c6f7a0b6
atmelarm0: <at91rm9200>
at91_aic0: <AIC> mem 0xfffff000-0xfffff1ff on atmelarm0
at91_aic0: Attach 2147483647
random: device_attach(): feeding 4 bit(s) of entropy from at91_aic0: 0x00000010c6f7a0b6
at91_pmc0: <PMC> mem 0xfffffc00-0xfffffcff irq 1 on atmelarm0
at91_pmc0: Primary: 16000000 Hz PLLA: 180 MHz CPU: 180 MHz MCK: 90 MHz
random: device_attach(): feeding 4 bit(s) of entropy from at91_pmc0: 0x00000010c6f7a0b6
at91_st0: <ST> mem 0xfffffd00-0xfffffdff irq 1 on atmelarm0
at91_st0: watchdog registered, timeout intervall max. 64 sec
at91_st0: Cannot get 100 Hz clock; using 100Hz
Timecounter "AT91RM9200 timer" frequency 32768 Hz quality 1000
random: device_attach(): feeding 4 bit(s) of entropy from at91_st0: 0x0000003254e6e222
at91_mci0: <MCI mmc/sd host bridge> mem 0xfffb4000-0xfffb7fff irq 10 on atmelarm0
mmc0: <MMC/SD bus> on at91_mci0
random: device_attach(): feeding 4 bit(s) of entropy from mmc0: 0x0000020000000000
random: device_attach(): feeding 4 bit(s) of entropy from at91_mci0: 0x00044e0000000000
ate0: <EMAC> mem 0xfffbc000-0xfffbffff irq 24 on atmelarm0
miibus0: <MII bus> on ate0
ukphy0: <Generic IEEE 802.3u media interface> PHY 0 on miibus0
ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
random: device_attach(): feeding 4 bit(s) of entropy from ukphy0: 0x0001980000000000
random: device_attach(): feeding 4 bit(s) of entropy from miibus0: 0x00060c0000000000
ate0: Ethernet address: 42:53:44:00:00:01
random: device_attach(): feeding 4 bit(s) of entropy from ate0: 0x000d2e0000000000
uart0: <DBGU> mem 0xfffff200-0xfffff3ff irq 1 on atmelarm0
uart0: console (115200,n,8,1)
random: device_attach(): feeding 4 bit(s) of entropy from uart0: 0x0001400000000000
random: device_attach(): feeding 4 bit(s) of entropy from atmelarm0: 0x00232ac9539b8887
Timecounters tick every 10.000 msec
mmcsd0: 8GB <SDHC 00000 1.0 SN 91E014AD MFG 04/2014 by 27 SM> at mmc0 22.5MHz/1bit/64-block
random: device_attach(): feeding 4 bit(s) of entropy from mmcsd0: 0x0002640000000000
Trying to mount root from ufs:/dev/mmcsd0s1a []...
warning: no time-of-day clock registered, system time will not be set accurately

TSC board boot

Default: /boot/kernel/kernel.gz.tramp
boot:
GDB: debug ports: uart
GDB: current port: uart
KDB: debugger backends: ddb gdb
KDB: current backend: ddb
Copyright (c) 1992-2014 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 11.0-CURRENT #8 r274946M: Sun Nov 23 21:36:52 MST 2014
    ilepore@revolution.hippie.lan:/local/build/staging/freebsd/rm92/obj/arm.arm/local/build/staging/freebsd/rm92/src/sys/TFLEX arm
FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
CPU: ARM920T rev 0 (ARM9TDMI core)
  Little-endian DC enabled IC enabled WB enabled LABT branch prediction disabled
  16KB/32B 64-way instruction cache
  16KB/32B 64-way write-back-locking-A data cache
real memory  = 67108864 (64 MB)
avail memory = 59838464 (57 MB)
random device not loaded/active; using insecure pseudo-random number generator
random: entropy device infrastructure driver
random: random_adaptors_init
random: selecting highest priority adaptor <Dummy>
random: random_adaptor_choose - changing from NULL to Dummy
random: dummy_random_init
random: SOFT: fortuna init()
random: selecting highest priority adaptor <Fortuna>
random: random_adaptor_choose - changing from Dummy to Fortuna
random: random_harvestq_init
random: device_attach(): feeding 4 bit(s) of entropy from nexus0: 0x00000010c6f7a0b6
atmelarm0: <at91rm9200>
at91_aic0: <AIC> mem 0xfffff000-0xfffff1ff on atmelarm0
at91_aic0: Attach 2147483647
random: device_attach(): feeding 4 bit(s) of entropy from at91_aic0: 0x00000010c6f7a0b6
at91_pmc0: <PMC> mem 0xfffffc00-0xfffffcff irq 1 on atmelarm0
at91_pmc0: Primary: 16000000 Hz PLLA: 180 MHz CPU: 180 MHz MCK: 90 MHz
random: device_attach(): feeding 4 bit(s) of entropy from at91_pmc0: 0x00000010c6f7a0b6
at91_st0: <ST> mem 0xfffffd00-0xfffffdff irq 1 on atmelarm0
at91_st0: watchdog registered, timeout intervall max. 64 sec
at91_st0: Cannot get 100 Hz clock; using 100Hz
Timecounter "AT91RM9200 timer" frequency 32768 Hz quality 1000
random: device_attach(): feeding 4 bit(s) of entropy from at91_st0: 0x0000003254e6e222
at91_mci0: <MCI mmc/sd host bridge> mem 0xfffb4000-0xfffb7fff irq 10 on atmelarm0
mmc0: <MMC/SD bus> on at91_mci0
random: device_attach(): feeding 4 bit(s) of entropy from mmc0: 0x0000020000000000
random: device_attach(): feeding 4 bit(s) of entropy from at91_mci0: 0x00044e0000000000
ate0: <EMAC> mem 0xfffbc000-0xfffbffff irq 24 on atmelarm0
miibus0: <MII bus> on ate0
ukphy0: <Generic IEEE 802.3u media interface> PHY 0 on miibus0
ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
random: device_attach(): feeding 4 bit(s) of entropy from ukphy0: 0x0001960000000000
random: device_attach(): feeding 4 bit(s) of entropy from miibus0: 0x00060a0000000000
ate0: Ethernet address: 42:53:44:00:00:01
random: device_attach(): feeding 4 bit(s) of entropy from ate0: 0x000d2a0000000000
uart0: <DBGU> mem 0xfffff200-0xfffff3ff irq 1 on atmelarm0
uart0: console (115200,n,8,1)
random: device_attach(): feeding 4 bit(s) of entropy from uart0: 0x0001400000000000
random: device_attach(): feeding 4 bit(s) of entropy from atmelarm0: 0x002328c9539b8887
Timecounters tick every 10.000 msec
mmcsd0: 8GB <SDHC 00000 1.0 SN 91E014AD MFG 04/2014 by 27 SM> at mmc0 22.5MHz/1bit/64-block
random: device_attach(): feeding 4 bit(s) of entropy from mmcsd0: 0x0002620000000000
Trying to mount root from ufs:/dev/mmcsd0s1a []...
warning: no time-of-day clock registered, system time will not be set accurately



--=-NTbRHXDDO6bb9n80THD/--




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1416806894.1147.362.camel>