From owner-freebsd-current@freebsd.org Tue Dec 19 21:42:46 2017 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 74581EA25C2 for ; Tue, 19 Dec 2017 21:42:46 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-it0-x230.google.com (mail-it0-x230.google.com [IPv6:2607:f8b0:4001:c0b::230]) (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)) by mx1.freebsd.org (Postfix) with ESMTPS id 35E7F6CD21 for ; Tue, 19 Dec 2017 21:42:46 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-it0-x230.google.com with SMTP id o130so9559337itg.0 for ; Tue, 19 Dec 2017 13:42:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=e8j/Elf3y0IuVfmESy4rE9O1NYngbCMS2J/ocW5xRoM=; b=Y4RzcCfOn+PfSHIJbeT9KLLimwPslyS3f5mAKNKSL54A846x4l4aVSZVNFO515/Okm HgeI3RxI/M+OHCeTmdhknc7oi2ZnaMc43h2fkyn/5o0FS/aPUjpr0S5BFou2ZJvGZTyG VAv6qmH31b2m4ABFpEzrTJTEydxrM8YqxG8Yj06c7NqUvtSFBJRgeLrnwteq3gyeym+C ZhnHV+CN5PIRPY0I4Rz+//ZT4pEMIilCo+G66uvr5XPWIjGEi70jhM6HD0DYaOr52WRn /aXccKlA8oapQIix5Y0YOg62x9Lkq59KTBodiVVGwn94gZT8qwAbQND+yltKOV7IUKJO wJQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=e8j/Elf3y0IuVfmESy4rE9O1NYngbCMS2J/ocW5xRoM=; b=ITGuN8tliyIFxUuQF0xdwQt02ZLM70YJRSuQhkBVQlK8KCF+hRkwXCdy+D++l7Jq1C bd0xiuFKoEOnenSYxN4UnL9SvOVcns/a34dLqlLNoZW+n7aRfktAn8Gttl4PlPUOxF24 NXT8A/9lmbn23e3JK9fYxFwbIW05jxGAiIG0cy1S0Y8YJnP5lDRmbwzJx1rc5KqFJGXU AT18iUCbKojdexOhD4pG17TwKM2UGdZ74ozw+tf22aIy6jc/Ui6thUV1GtJJfzF94CGR 7sx+ck8myY2Y1K+Enxgai7VCGt5IRSzcQy4/b2RZtZL9ojIRWMdDKQSdcrFob5m5tuKR 7FKQ== X-Gm-Message-State: AKGB3mLI5kR/vJM2qVi70EUu2+YDESlje78qbSHeBiBnUzAYIjB7nq9u X2AiAh1X2vqw0kLWFeK8Z9A6JH243JC/brGV0UppIA== X-Google-Smtp-Source: ACJfBotzIq7s0IEV4RrwGKVmatSyVj8MUE1qnSs2IqMmqM0zRTWpAWgzXXm16D4acxcWVNWqk9pVuGYbXOsInJcYY6w= X-Received: by 10.36.77.143 with SMTP id l137mr5138703itb.50.1513719765089; Tue, 19 Dec 2017 13:42:45 -0800 (PST) MIME-Version: 1.0 Sender: wlosh@bsdimp.com Received: by 10.79.108.204 with HTTP; Tue, 19 Dec 2017 13:42:44 -0800 (PST) X-Originating-IP: [2607:fb90:6f6a:13fc:4073:f971:9d8e:a305] Received: by 10.79.108.204 with HTTP; Tue, 19 Dec 2017 13:42:44 -0800 (PST) In-Reply-To: <201712190106.vBJ16LpE018835@pdx.rh.CN85.dnsmgr.net> References: <201712190106.vBJ16LpE018835@pdx.rh.CN85.dnsmgr.net> From: Warner Losh Date: Tue, 19 Dec 2017 14:42:44 -0700 X-Google-Sender-Auth: HJUHgxLs_2dT8h4GeHRilRe_-xg Message-ID: Subject: Re: UEFI booting survey To: "Rodney W. Grimes" Cc: Mark Millard , FreeBSD Current Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.25 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 Dec 2017 21:42:46 -0000 On Dec 18, 2017 6:06 PM, "Rodney W. Grimes" < freebsd-rwg@pdx.rh.cn85.dnsmgr.net> wrote: > On Mon, Dec 18, 2017 at 3:12 PM, Mark Millard wrote: > > > Warner Losh imp at bsdimp.com wrote on > > Mon Dec 18 20:29:45 UTC 2017 : > > > > > The specific thing we will stop doing is that in the absence of > > > instructions to the contrary, we will no longer search for root on a > > device > > > other than the one the loader.efi came from. > > > > Warner Losh imp at bsdimp.com wrote on > > Sun Dec 17 19:52:07 UTC 2017 : > > > > > In the coming months, we're looking at dropping boot1.efi and instead > > > installing /boot/loader.efi onto the ESP (most likely as > > > \efi\freebsd\loader.efi). > > > > > > Combining the two statements would appear to have consequences > > not obvious from the separate statements in isolation. Rewording > > the first to substitute where loader.efi comes from based on > > the second (if I interpret right): > > > > MISQUOTE > > The specific thing we will stop doing is that in the absence of > > instructions to the contrary, we will no longer search for root > > on other than the device for the ESP used (which will hold > > loader.efi). > > END MISQUOTE > > > > The specific thing we will stop doing is that in the absence of > instructions to the contrary, we will no longer search for root on other > than the device for the ESP used (which will hold now loader.efi as > boot1.efi will shortly be eliminated). Yes please, that is the correct behavior, our searching can lead to problems, and as you have pointed out, often more problems than it ever really fixed. > > Or the following pseudo-code with all the weird special cases removed for > clarity > > load loader.efi from ESP > if BootXXXX uefi variable holds a second path, use that for root/kernel > otherwise if an override variable holds a kernel/root path, use that > otherwise scan for a usable ZFS pool, use that if it exists > otherwise use the same partition loader.efi was booted from for root/kernel > if it's usable > otherwise use the first UFS partition on the ESP that's usable. use the ACTIVE ufs partition, not the first, I can have more than 1 slice, only 1 of them can be set active. Do not use any ufs partitions if they are not in active slices, it is possible to have 0 partitions set active. Active is not a GPT concept. UEFI makes it hard to implement since there is no good API to get and set the flags FreeBSD's gptboot uses to hack this concept in. Active is done via BootOrder UEFI variable. Loader.efi and boot.efi completely ignore this today. I have no plans on changing that. > > A partition is usable if /boot/loader.rc exists on that path. A partition is usable if it is in an active slice, and ^above Active isn't a got thong. So no. Is there any fallback to skip loader and go direct to /boot/kernel/kernel, back to /kernel any more? You are thinking about this wrong. We are loader.efi, not boot2. This is one of the big advantages of loading directly. We don't have the space limitations that forced that design, so we should simplify. Warner > What is being deleted is one final step: "otherwise use the first UFS > partition on any drive in a random order that's usable." which used to be > at the end of the boot1.efi psuedo code. It's my belief that no such > installations actually use this due to the random factor today (plug in a > new USB drive and it might take over). If my belief is wrong, it's my > belief that efibootmgr will solve it, and failing that, the fallback > mechanism (for platforms that use u-boot + EFI where UEFI variables don't > work) will allow the two or three people that are doing this today. > > Warner > _______________________________________________ > freebsd-current@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org" -- Rod Grimes rgrimes@freebsd.org