From owner-freebsd-arch@FreeBSD.ORG Wed Aug 7 20:20:31 2013 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 4D9D3DB4 for ; Wed, 7 Aug 2013 20:20:31 +0000 (UTC) (envelope-from peter@wemm.org) Received: from mail-ve0-x232.google.com (mail-ve0-x232.google.com [IPv6:2607:f8b0:400c:c01::232]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E3A6626C3 for ; Wed, 7 Aug 2013 20:20:30 +0000 (UTC) Received: by mail-ve0-f178.google.com with SMTP id ox1so2367958veb.9 for ; Wed, 07 Aug 2013 13:20:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wemm.org; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=f5LvDSXfLs/1J8/ErS5aF3rylxhEoKl03gcM6RHc24Q=; b=RcH38WnhjtKJ1GEdxvIjqr4dmS5rIIXdNq1hog0EIRzzC/QQf2b0x24cnK8NmTSvNW w0u62Ec/Iy60a+JXGIaCzvhFUVeOmwPnhlPeWpUy+XJxs3m1Ihhwu+b/cWJsl3z8A8Wx vBM5GnAl3wUwh0FsPWSarC8BamBlcbCRe2xQ0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=f5LvDSXfLs/1J8/ErS5aF3rylxhEoKl03gcM6RHc24Q=; b=o2olnoeZoJUYjJUVx33qr6EQOlJATHBDjs4QkvhdF21DSc6J3ujLtPqDW1/ZOa7q0O o6JNnsIyl2UkVMUljPuGrXXMY0Rp0YHeeQ/btja0YL5rDFDn8wql9dpI6pGS1a+Uslcs dbKkAqJ+n+OyQPNlAYiiflW3RzEclPHTimrPalVeBr4H3DmS9KHLYRdbJQfzIZPpV6BS 2IfQIU1cNyoYW6m9ajrFT6NMBFa2704Ao+hf6Z+ookvwSy65HU7f5QbmgyrEyHmY+nS4 vjieHetTRb4uFQX2ENPnn2SRpovIn1M3HFlXt3pJTzKuBJFmjy7ubM/8dDNA1kb0aP69 c08g== X-Gm-Message-State: ALoCoQmrRQ3yauKJfJp0BgGra6//TdZOZfYVw4FapDerqJqteLf70uoOEQPbA4j449NzvjJWMtAf MIME-Version: 1.0 X-Received: by 10.52.191.72 with SMTP id gw8mr1139293vdc.114.1375906830055; Wed, 07 Aug 2013 13:20:30 -0700 (PDT) Received: by 10.220.167.74 with HTTP; Wed, 7 Aug 2013 13:20:29 -0700 (PDT) In-Reply-To: <20130807192736.GA7099@troutmask.apl.washington.edu> References: <20130807182858.GA79286@dragon.NUXI.org> <20130807192736.GA7099@troutmask.apl.washington.edu> Date: Wed, 7 Aug 2013 13:20:29 -0700 Message-ID: Subject: Re: random(4) plugin infrastructure for mulitple RNG in a modular fashion From: Peter Wemm To: Steve Kargl Content-Type: text/plain; charset=ISO-8859-1 Cc: Arthur Mesh , secteam@freebsd.org, freebsd-arch@freebsd.org X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Aug 2013 20:20:31 -0000 On Wed, Aug 7, 2013 at 12:27 PM, Steve Kargl wrote: > On Wed, Aug 07, 2013 at 11:28:58AM -0700, David O'Brien wrote: >> >> * Make Yarrow an optional kernel component -- enabled by "YARROW_RNG" >> option. The files sha2.c, hash.c, randomdev_soft.c and yarrow.c >> comprise yarrow. random(4) device doesn't really depend on >> rijndael-*. Yarrow, however, does. >> >> * If the kernel doesn't have any random_adaptor adapters present then >> the creation of /dev/random is postponed until next random_adaptor >> is kldload'ed. > > My kernel config files have included the following 2 lines for > ages: > > makeoptions NO_MODULES > device random > > If I try to build a new kernel under your scheme, will the > build die with an error about a missing option? If the answer > is 'no', then the yarrow adaptor should be opt-out. That's the main point here. If I'm running on a working system, I have a reasonable expectation that the kernel config I was using yesterday will work sufficiently tomorrow that I won't get hosed by doing a 'svn update && make buildkernel && make installkernel'. If that's not the case and there is a required change in order to not hose your system then POLA dictates that not making the required changes causes a build failure. There's more leeway on head than a stable branch, but remember that when people upgrade from 9.x to 10.x they tend to take their 9.x kernel configs and make whatever changes are needed to get it to build. The 9-stable -> 10-release config path needs to catch fatal errors like this at build time. Patching GENERIC isn't a complete solution. It doesn't solve the 'yesterday it worked, today it's a brick' problem. -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV UTF-8: for when a ' just won\342\200\231t do. ZFS must be the bacon of file systems. "everything's better with ZFS"