From owner-svn-src-all@freebsd.org Fri Jul 6 01:53:24 2018 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 920E51028540; Fri, 6 Jul 2018 01:53:24 +0000 (UTC) (envelope-from kevans@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 43C598267D; Fri, 6 Jul 2018 01:53:24 +0000 (UTC) (envelope-from kevans@freebsd.org) Received: from mail-lj1-f176.google.com (mail-lj1-f176.google.com [209.85.208.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) (Authenticated sender: kevans) by smtp.freebsd.org (Postfix) with ESMTPSA id D726FB43F; Fri, 6 Jul 2018 01:53:23 +0000 (UTC) (envelope-from kevans@freebsd.org) Received: by mail-lj1-f176.google.com with SMTP id a6-v6so8007430ljj.7; Thu, 05 Jul 2018 18:53:23 -0700 (PDT) X-Gm-Message-State: APt69E1Tc3oQ5Dje8QzjZH68987Kv/crz1jIZbr9gh9/FXewxOI6XZc6 rAm0fZgFQwkrxDU4uCxTI5Cle12NTYCsyjUzEKA= X-Google-Smtp-Source: AAOMgpf1YSUG5C1pCfxoDNPBpaCb3KFgUZBQXIahwYo0t9ctFiDG7hVCpRgWNqR8KM//PUQoE6tAujlJ/weR7FrCHmM= X-Received: by 2002:a2e:87da:: with SMTP id v26-v6mr4999100ljj.69.1530842002516; Thu, 05 Jul 2018 18:53:22 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:5742:0:0:0:0:0 with HTTP; Thu, 5 Jul 2018 18:53:01 -0700 (PDT) In-Reply-To: <201807060111.w661B76W005640@repo.freebsd.org> References: <201807060111.w661B76W005640@repo.freebsd.org> From: Kyle Evans Date: Thu, 5 Jul 2018 20:53:01 -0500 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r336019 - in head: . usr.sbin/config To: Kyle Evans Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset="UTF-8" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Jul 2018 01:53:24 -0000 On Thu, Jul 5, 2018 at 8:11 PM, Kyle Evans wrote: > Author: kevans > Date: Fri Jul 6 01:11:06 2018 > New Revision: 336019 > URL: https://svnweb.freebsd.org/changeset/base/336019 > > Log: > config(8): De-dupe hint/env vars within a single file > > r335653 flipped the order in which hints/env files are concatenated to match > the order in which vars are processed by the kernel. This is the other > hammer to drop. > > Use nv(9) to de-dupe entries within a single `hint` or `env` file, using the > latest value specified for a key. This leaves some duplicates if a variable > is specified in multiple hint/env files or via `envvar` in a kernel config, > but the reversed order of concatenation (from r335653) makes this a > non-issue as the latest-specified version will be seen first. > > This change also silently rewrote hint bits to use the same sanitization > process that ian@ wrote for r335642. To the kernel, hints and env vars are > basically the same thing through early boot, then get merged into the > dynamic environment once kmem becomes available and the dynamic environment > is created. They should be subjected to the same restrictions. > > libnv has been added to -legacy for the time being to support the build of > config(8) with the new cnvlist API. > > Tested with: universe (11 host & 12 host) > MFC after: 1 month > This seems to be causing pretty consistent config(8) failures on CI, kernels with neither hints nor environment variables, that neither of my universe builds nor any of my post-commit builds can reproduce. Can anyone else reproduce these failures that might be willing to give me a hint as to what kind of setup causes this? 01:47:58 cd /usr/src/sys/arm/conf; PATH=/usr/obj/usr/src/arm.armv7/tmp/legacy/usr/sbin:/usr/obj/usr/src/arm.armv7/tmp/legacy/usr/bin:/usr/obj/usr/src/arm.armv7/tmp/legacy/bin:/usr/obj/usr/src/arm.armv7/tmp/usr/sbin:/usr/obj/usr/src/arm.armv7/tmp/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin config -d /usr/obj/usr/src/arm.armv7/sys/GENERIC -I '/usr/src/sys/arm/conf' '/usr/src/sys/arm/conf/GENERIC' 01:47:58 config: /usr/src/sys/arm/conf/GENERIC: No error: 0 Thanks, Kyle Evans