From owner-freebsd-arch@FreeBSD.ORG Mon Nov 24 05:28:22 2014 Return-Path: Delivered-To: arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 08E3E397 for ; Mon, 24 Nov 2014 05:28:22 +0000 (UTC) Received: from mho-02-ewr.mailhop.org (mho-02-ewr.mailhop.org [204.13.248.72]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9FE13AC5 for ; Mon, 24 Nov 2014 05:28:20 +0000 (UTC) Received: from [73.34.117.227] (helo=ilsoft.org) by mho-02-ewr.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1XsmCB-00044r-5t; Mon, 24 Nov 2014 05:28:19 +0000 Received: from [172.22.42.240] (revolution.hippie.lan [172.22.42.240]) by ilsoft.org (8.14.9/8.14.9) with ESMTP id sAO5SGHf009664; Sun, 23 Nov 2014 22:28:17 -0700 (MST) (envelope-from ian@FreeBSD.org) X-Mail-Handler: Dyn Standard SMTP by Dyn X-Originating-IP: 73.34.117.227 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX1+/3X4ykeYBUI+C1pMiuLG8 X-Authentication-Warning: paranoia.hippie.lan: Host revolution.hippie.lan [172.22.42.240] claimed to be [172.22.42.240] Subject: Re: svn commit: r274739 - head/sys/mips/conf From: Ian Lepore To: Mark R V Murray In-Reply-To: <398A380D-49AF-480C-8842-8835F81EF641@grondar.org> References: <201411200552.sAK5qnXP063073@svn.freebsd.org> <20141120084832.GE24601@funkthat.com> <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> <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> Content-Type: multipart/mixed; boundary="=-NTbRHXDDO6bb9n80THD/" Date: Sun, 23 Nov 2014 22:28:14 -0700 Message-ID: <1416806894.1147.362.camel@revolution.hippie.lan> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 FreeBSD GNOME Team Port Cc: Dag-Erling =?ISO-8859-1?Q?Sm=F8rgrav?= , arch@freebsd.org X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Nov 2014 05:28:22 -0000 --=-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 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 random: random_adaptor_choose - changing from NULL to Dummy random: dummy_random_init random: SOFT: fortuna init() random: selecting highest priority adaptor 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: at91_aic0: mem 0xfffff000-0xfffff1ff on atmelarm0 at91_aic0: Attach 2147483647 random: device_attach(): feeding 4 bit(s) of entropy from at91_aic0: 0x00000010c6f7a0b6 at91_pmc0: 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: 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: mem 0xfffb4000-0xfffb7fff irq 10 on atmelarm0 mmc0: 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: mem 0xfffbc000-0xfffbffff irq 24 on atmelarm0 miibus0: on ate0 ukphy0: 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: 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 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 random: random_adaptor_choose - changing from NULL to Dummy random: dummy_random_init random: SOFT: fortuna init() random: selecting highest priority adaptor 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: at91_aic0: mem 0xfffff000-0xfffff1ff on atmelarm0 at91_aic0: Attach 2147483647 random: device_attach(): feeding 4 bit(s) of entropy from at91_aic0: 0x00000010c6f7a0b6 at91_pmc0: 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: 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: mem 0xfffb4000-0xfffb7fff irq 10 on atmelarm0 mmc0: 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: mem 0xfffbc000-0xfffbffff irq 24 on atmelarm0 miibus0: on ate0 ukphy0: 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: 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 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 random: random_adaptor_choose - changing from NULL to Dummy random: dummy_random_init random: SOFT: fortuna init() random: selecting highest priority adaptor 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: at91_aic0: mem 0xfffff000-0xfffff1ff on atmelarm0 at91_aic0: Attach 2147483647 random: device_attach(): feeding 4 bit(s) of entropy from at91_aic0: 0x00000010c6f7a0b6 at91_pmc0: 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: 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: mem 0xfffb4000-0xfffb7fff irq 10 on atmelarm0 mmc0: 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: mem 0xfffbc000-0xfffbffff irq 24 on atmelarm0 miibus0: on ate0 ukphy0: 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: 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 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 random: random_adaptor_choose - changing from NULL to Dummy random: dummy_random_init random: SOFT: fortuna init() random: selecting highest priority adaptor 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: at91_aic0: mem 0xfffff000-0xfffff1ff on atmelarm0 at91_aic0: Attach 2147483647 random: device_attach(): feeding 4 bit(s) of entropy from at91_aic0: 0x00000010c6f7a0b6 at91_pmc0: 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: 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: mem 0xfffb4000-0xfffb7fff irq 10 on atmelarm0 mmc0: 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: mem 0xfffbc000-0xfffbffff irq 24 on atmelarm0 miibus0: on ate0 ukphy0: 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: 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 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/--