From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.90_1) id 1oR4Ur-0002gB-Py for mharc-grub-devel@gnu.org; Thu, 25 Aug 2022 00:29:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:45364) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oR4Uq-0002fz-3U for grub-devel@gnu.org; Thu, 25 Aug 2022 00:29:36 -0400 Received: from mail-ve1eur01on061b.outbound.protection.outlook.com ([2a01:111:f400:fe1f::61b]:21476 helo=EUR01-VE1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oR4Un-0007NF-Pp for grub-devel@gnu.org; Thu, 25 Aug 2022 00:29:35 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=P09jd6v8hbJNDV5kRQoGxcAI7STpn89v125wCBExlXngyXYx9+fQpKUH6NXlgrwiCISP/AL4gcMITw7Z4YqLHOrt0Xhd/l7z1zyXlZvE3+36qf/6CCYdpLErG0BQrvaH0i8cGe2OvGBviJ9+FHhSG2JAqgjfMYun9+AvbRG9fqf6RWtQbSINIGzP3bJSqr7qkvqhdqY7PTo7jLPGF66KPr1PoawvBrIOQpuieF3XH7JyYJ6ScI2HsPUzrKAG74NfrXOX0M9pCjQ+m6lrnW4KU3uBWyIYPrwtxsAGY/tHHfm/Uu/4F4vYE5GoZtUsv+vvXnPeLHiskllmcDHxZmpz9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ZyWeZiDY1SilqwL4htEo8qscAthWzrWjlddQyZqs8uI=; b=dW72/PIIVppAleOtxYvXIF4iHB6UTr6ckjmWlQ/BvKF8JfAVx3DydtSz+Nu3KfV0ATAG4iayVABfjI2UxJzfCDAdm4knO5Wa5HEJlBNo99Bq3tuxNNEmVbjC4FKqt5bXAy6A7JzMIIE8zDYrPiAE4OWKHD7GmowEuUSMD45IkUwG00BE18PRft7tp9bHykpJ5bJwhKbMUdngO9iJG+AnNSvINV/lepu6xTp6iBJTDStZJJxjCd8QA6vznZg+pkbww1FyqU5yG03W6GH0RQtM/LInhITFJu3CNFWNyTUYH7yUbnaIRlx53b7Nx96l7JD1Qi/pg3QVmxz2+u9twHn3Fg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZyWeZiDY1SilqwL4htEo8qscAthWzrWjlddQyZqs8uI=; b=Rzp/acPM1+eDST8V3hZy95AmdL6pEVlSL2IxKfJ6gU3F4e15ZVkbtKiRFmcAo9HNuD9QpCYovD2U+NhJcOtsPwQiFT13e1z8csTU3wEBpAKn2qjJdxtT71v2WlNK0ue1jsX6VGlF3gHff0xMMlt9wcezDuh2Za+6+5UPy929NOvpZSb/FMUaLqy2pOQs36K4z/PZErw3fNFai/So+5zoPnF0YoCRmKHsQjOdLqiKYrjWuHZ5qbFO6g6mViw5K7IfOVfuJua4sm+Y+0onA8reu6fMdlu1b8x0OJG1IIduYhwDfHY28CvdNGsZ+12opqAV5+24Fe2YlPd1B/J4ScslSg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from DU2PR04MB9081.eurprd04.prod.outlook.com (2603:10a6:10:2f0::13) by AS8PR04MB8434.eurprd04.prod.outlook.com (2603:10a6:20b:406::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5566.15; Thu, 25 Aug 2022 04:24:25 +0000 Received: from DU2PR04MB9081.eurprd04.prod.outlook.com ([fe80::b589:af91:d7ea:3f48]) by DU2PR04MB9081.eurprd04.prod.outlook.com ([fe80::b589:af91:d7ea:3f48%9]) with mapi id 15.20.5546.022; Thu, 25 Aug 2022 04:24:25 +0000 Date: Thu, 25 Aug 2022 12:24:17 +0800 From: Michael Chang To: The development of GNU GRUB Cc: Ismael Luceno Subject: Re: [PATCH 2/2] Ensure nvram is available and functional on IEEE1275 Message-ID: <20220825042416.GA14934@mazu> References: <20220824160311.21160-1-iluceno@suse.de> <20220824160311.21160-3-iluceno@suse.de> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220824160311.21160-3-iluceno@suse.de> User-Agent: Mutt/1.10.1 (2018-07-13) X-ClientProxiedBy: TYCP286CA0085.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:2b3::8) To DU2PR04MB9081.eurprd04.prod.outlook.com (2603:10a6:10:2f0::13) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: fd8c4526-5dbb-4df0-5e44-08da8651b19d X-MS-TrafficTypeDiagnostic: AS8PR04MB8434:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Yw+9l5UF0q9pRX2A9fEDXJoy9DUPf2b9yMOrAjQ+KpI6IyZ5KOitgLfimjCRylN/e6OGI3Id5BGd6m9PbZy84dWboqoTZw3WIUu+gJkGJA7ItrCltx8lhYJKnUz+tG6bAO/nh3Pccjh1skRYYKloSxoAW0/pkAZVT9gOdlMqlaFvEyzdUGu03wfqd6vg/mp+mKotErgKQEe+iD36Dm2TyhB7qbcc8kLNkDnyfyQLvzqG2R30wT7fdAWtCHyoqm7PF/fU9xC4DHatUugff9IutnZP2lkU1rlMHN9oWKYqtwXP2mRgPSmwbGUMwQLH2jmM9O3u1+BTtW6P/bqAq+qMP0C8JF4VHgfNhOivOMOTACNrFsfNvJu/lVSSun8tPe67K0pzSK6eidO0vACk9O+qLaetvrfpscJ7D0gQAw+UvV0qx/cy6rFSSPVOi4nFMKo2MoBCMMhrPTp4XUToCCDp3QpAGfaKQo/wLkUdqs9NNXE2OvU4Fgu9UJwWuIEwmtNlPfAAiLd5XwLLVYBVpzcoUGAvHzPpHceFh04M34Zws/6Mixzpn4I1lnnrxLNVl/4fqdxICqjfs/JNudYpNbfFHva7Jmvm4FboMLvmfEbogR8oCmYNUDh4tUWMgRtMbSG7P9qY81EtnpzLBRCpI5WJNBUpEGOg0YHgh2FGhAw9lk6/yufbD953p603M3p+wGleV8N5RVTi4jjYZ3LQ6dUQalUCECc4EFGY0qiC97ZfAJdFXGyzUpoMeH6Y+CQF9fVo2hg3MQrt455edtuKo09+sPXZNDegqwKtB2FlKJ/+3eE= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB9081.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(7916004)(366004)(346002)(376002)(39860400002)(396003)(136003)(6506007)(6486002)(966005)(41300700001)(478600001)(186003)(6512007)(83380400001)(9686003)(1076003)(2906002)(8936002)(5660300002)(316002)(33716001)(6916009)(6666004)(4326008)(8676002)(66476007)(66556008)(38100700002)(66946007)(86362001)(33656002)(131093003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?cze1nfABb2uLAS7m3U0+bEo2O5JR+l1yf/G1ubvTTZSmhOtx3aTaxIaa17eK?= =?us-ascii?Q?0ThHU0i3Gh94RnnChpljSUR823tCWxADyUaKalAXYbQl521Yp/uu0r5sUsxK?= =?us-ascii?Q?gQvO07TgOl2yAn9k/pX20xKqdJ+gKEt7zP7lO6iDLcEZ26dBw4BnBIxg/Lih?= =?us-ascii?Q?fLFtvmzCwtppMtwv7AtZ5SQgzR5uSnuv9dwDUJLqvpZGb7rySLGwr+852U8o?= =?us-ascii?Q?z020E9vdisFrqr2LGLQCSWJpsQbVLX7stwbOUvm+pXGK0M+YjxLHbC9Nmj8i?= =?us-ascii?Q?yokWaeGojRkDkLu4QS1CjI5pJuhKf/Z0ZTP84SnIKME4WEpgmMq+r9R6wNRZ?= =?us-ascii?Q?djh6qzBy14VipOHIQaaaZiP0kv4DclG1CB4jXOqc+so5tAi0eAVlpJfVPyTH?= =?us-ascii?Q?XVhZp350QqXM8dKCNiz/SLEB8gcwavN5+LKiRL5/dP+IMgJxoL7wMmBJ+lS3?= =?us-ascii?Q?DliV+RF1/cNmM4/GitirVPl8f/Sd43S325KpPCZFZbI9+69MlaNw/wEDLpZa?= =?us-ascii?Q?dTOxU+UzSzXCwjP+EhznmfI3evDIMTVdHGD09FA7kiUddvVqUCk2L/JM5W/8?= =?us-ascii?Q?cVlu8EUitEc2n9uiJUHbM8ZyI+Hn3Pr0PCugpKofonq7w+aBwSNOZJ0FTO/l?= =?us-ascii?Q?lyeTYDEatx0YMFHi1L/fqRfWBm9OA7+l3tJ8a0GQPyK3M8rWehcXzPk8kton?= =?us-ascii?Q?+8kRQvdns/7z8Z49RmXRFlXtwjjxG7HcP6OGj2LmQ9l00zfkmkxOp7JJLPMM?= =?us-ascii?Q?XmSodw+K6EhZIedkOPpHlRe1OYPidXy9CPl0R4UnKdfG9liX5AFf6kOmBFyI?= =?us-ascii?Q?2LM6ztXLUe8VCLpcUD4KsDY60RzI6ZSScVkid4uQD9QX9H6/k4vLrHOY1FDA?= =?us-ascii?Q?cyQBkT7iL+9RIYJZgLMGBUK1oByobAg1swfCwkmNob5deHQyXYTrHnVTHkYU?= =?us-ascii?Q?TRz6FpBhzM6wDyX2j7zAoxqos34R6miZWoLJPEqsVKz89z3nlb+1gfy7gEgm?= =?us-ascii?Q?HT2iONZWVg0h3/7sCkVtCD1vCPsWX7HgJx6xLUsK1v5FbWsKpp1aoREjxWAL?= =?us-ascii?Q?3RaDv+Yo2JWmBz2EJW33/AwSAFKKaBGMskT7XJuFHEOmGTjh4WaUmMspF1tF?= =?us-ascii?Q?QALWXj7hPh5J1j/xViIFoEHGrcwGBPJHuNyYCjiMPZNgRpbpkgF/QnXROKof?= =?us-ascii?Q?BwbDkRd+DrvXk1YDiGOdcK1ZrX2W7NBknJYncOZ93EKF5lusQQRbVXLQDBV6?= =?us-ascii?Q?pC/uUbs6FSS1JMd3ayVWnflrnvzE6eP/xbpWxhh8nx/qkdb3HgJ/WjslDqe7?= =?us-ascii?Q?wPIHS/ksgN9wDzU2XeLx2nYEeDYG+J0L5Ja4/sDXeD8OzcQmh9GEMZoWxBNj?= =?us-ascii?Q?Dr5BTKus/CuYIb5bydb6/C8cFmoPqYYII750zVx8i3QRffkuDADijUpCOfap?= =?us-ascii?Q?T+DV3VRzJCBY+sWkhozjW5Ie/IGU1JJhNQW8BNfxdhlCORnbQLnPKqV/c639?= =?us-ascii?Q?Wtoa8qjvIe/PVCu3a0tUJwq1tYoIwhd1Jiz+3SumaAChaGz/pykyMvCFCP4W?= =?us-ascii?Q?CAWMNhZxj7Tf6T43y8ZF6lD6qAIW6QkHiX1nv8orardKpQGw+OFijySXiXZS?= =?us-ascii?Q?bwiRX8Vkujx6BHlYfXpuJ5K0bLnogFnNb+Hgck5rhfjm?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: fd8c4526-5dbb-4df0-5e44-08da8651b19d X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB9081.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Aug 2022 04:24:25.8105 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: owLuXMA4a06i1prqfjhc9wYnBGxHxlneR7J2v/Q7kUy0QbAXXNHRGQ66r+Adk/tS X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8434 Received-SPF: pass client-ip=2a01:111:f400:fe1f::61b; envelope-from=MChang@suse.com; helo=EUR01-VE1-obe.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Aug 2022 04:29:36 -0000 On Wed, Aug 24, 2022 at 06:03:11PM +0200, Ismael Luceno wrote: > Otherwise the installation will fail, and the system will be left in an > unbootable state. > > On ppc64le, the boot process shows: > > Welcome to GRUB! > > error: ../../grub-core/kern/dl.c:380:symbol `grub_disk_get_size' not found. > Entering rescue mode... > grub rescue> The symbol looking up failure due to failed grub-install attempt should not happen in the first place given this commit should bail it out. 8ddbdc3bc2 grub-install: Add backup and restore Apparently there's missing grub_set_install_backup_ponr between successful image embedding and grub_install_register_ieee1275 and we should fix that as well. > > Signed-off-by: Ismael Luceno > --- > grub-core/osdep/unix/platform.c | 18 ++++++++++++++++++ > 1 file changed, 18 insertions(+) > > diff --git a/grub-core/osdep/unix/platform.c b/grub-core/osdep/unix/platform.c > index a5bf064b7cf5..fd23176e58a0 100644 > --- a/grub-core/osdep/unix/platform.c > +++ b/grub-core/osdep/unix/platform.c > @@ -192,12 +192,30 @@ grub_install_register_efi (grub_device_t efidir_grub_dev, > return ret; > } > > +static void > +linux_ensure_nvram (void) > +{ > + int fd; > +#ifndef __linux__ > + return 0; > +#endif > + if (linux_kmod_load("nvram")) > + grub_util_error (_("%s: kernel module not found"), "nvram"); > + fd = open ("/dev/nvram", O_RDWR); > + if (fd == -1) > + grub_util_error ("/dev/nvram: %s", strerror(errno)); > + close (fd); > +} > + I'm wondering why it is needed. The nvram module should be loaded on-demand via linux kernel's request_module() and modalias trick whever /dev/nvram is accessed. Thanks, Michael > void > grub_install_register_ieee1275 (int is_prep, const char *install_device, > int partno, const char *relpath) > { > char *boot_device; > > + /* On Linux, ensure nvram is available and functional. */ > + linux_ensure_nvram (); > + > if (grub_util_exec_redirect_null ((const char * []){ "ofpathname", "--version", NULL })) > { > /* TRANSLATORS: This message is shown when required executable `%s' > -- > 2.37.1 > > > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > https://lists.gnu.org/mailman/listinfo/grub-devel