From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 80DE3C67871 for ; Thu, 27 Oct 2022 08:12:40 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id B099585077; Thu, 27 Oct 2022 10:12:37 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=weidmueller.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=weidmueller.onmicrosoft.com header.i=@weidmueller.onmicrosoft.com header.b="XjCJcafV"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 6B9D485083; Thu, 27 Oct 2022 10:12:36 +0200 (CEST) Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2048.outbound.protection.outlook.com [40.107.22.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id CA29B85077 for ; Thu, 27 Oct 2022 10:12:28 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=weidmueller.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=stefan.herbrechtsmeier-oss@weidmueller.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Iyzeagv+mpF+eiTaHntDDSTVbHW32nT+7yBObTi2Sp9G9q3CXlGo00EBfwA62IbHbOfGeqt+q68cCjnqgt9ioDFqOtZd6Q6nXyQmna0sU/gALSlkvgzUCZ7A1Vq8A60n25ZPCajHcYPo6ZiIJk072vIhs5Zbr6wlGNhIjHZP+X9aQMWh3QXkTEuczqEJpj7TFJaPICkXNZ7BHQ13rd5pZfSXnnYyf6bsbBj57Dwf5Wqlu8/MF1ij7nzdPn+GAxNLETe5NR3af3OsTB3JYi6dncwaM2wdZjxJdn4UGmPgWHHKo1FkT4JgqdhT/jojNux+KSN9U6UnCb5+WvFijjC+2g== 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=UhBUOlsLn7YfwK59sulKU7jTKbXOsIacTxlD5EAjnsk=; b=UnJy6ozx2frc5vjSa+4X1sWO2V7usfb7TkoUH11ppNLcz6bSyaskiOBlv4asBDGeoFH83jf1w5JvHm8sqHLiPLi27417OBzgSi0YnyCTSq6WnwdEU9Arm5FBKk61cDXA+yC4SH3oiWTDNrk826iL81zTM23ufQTmx6HeDmJqTmOOoMUcFUSsp3XbOYt6FT7XAtkYbH96ZvRCK8UlTzf8NSDlXJAEEPQoj4X06H08/Py1lEly5EsUbEdPtbSjyJGcp5+ogZGYbgnXXU+zFdf7G3vsZYoHEGMkeHyTrfuDJeCIqyy+wMfJDjRS3Tka1oOooxqt9RjBIqozrdggHyE1lw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=weidmueller.com; dmarc=pass action=none header.from=weidmueller.com; dkim=pass header.d=weidmueller.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=weidmueller.onmicrosoft.com; s=selector1-weidmueller-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UhBUOlsLn7YfwK59sulKU7jTKbXOsIacTxlD5EAjnsk=; b=XjCJcafVbKZAqsX0ttO8V5jOKZcFVzMyxcH3++4Wg/DvSzLQTKmfiTuqdow2GtnCsPLbK/Iz/8TYnsrkBTkk8GeRzegrXrn4EIB2FL9X/u9Oi6P5jc8sjNB8HKbtgC8wUy8i7H5x1OfoWpfmTKVtnbc5tAgK07fn9GoUzgxUzZw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=weidmueller.com; Received: from PAXPR08MB6969.eurprd08.prod.outlook.com (2603:10a6:102:1d8::23) by DB9PR08MB7535.eurprd08.prod.outlook.com (2603:10a6:10:303::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5746.28; Thu, 27 Oct 2022 08:12:26 +0000 Received: from PAXPR08MB6969.eurprd08.prod.outlook.com ([fe80::b936:3de8:a817:4560]) by PAXPR08MB6969.eurprd08.prod.outlook.com ([fe80::b936:3de8:a817:4560%5]) with mapi id 15.20.5746.028; Thu, 27 Oct 2022 08:12:26 +0000 Message-ID: <13650240-e754-a597-b551-752ce779ebaa@weidmueller.com> Date: Thu, 27 Oct 2022 09:49:05 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.4.0 Subject: Re: [PATCH V2 01/13] env: Complete generic support for writable list To: Jan Kiszka , U-Boot Mailing List , trini@konsulko.com Cc: Joe Hershberger , Marek Vasut References: <941b4847617426ff7e8cc4ce7ed6d5c5012c2440.1664958832.git.jan.kiszka@siemens.com> From: Stefan Herbrechtsmeier In-Reply-To: <941b4847617426ff7e8cc4ce7ed6d5c5012c2440.1664958832.git.jan.kiszka@siemens.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: AS8PR04CA0108.eurprd04.prod.outlook.com (2603:10a6:20b:31e::23) To PAXPR08MB6969.eurprd08.prod.outlook.com (2603:10a6:102:1d8::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR08MB6969:EE_|DB9PR08MB7535:EE_ X-MS-Office365-Filtering-Correlation-Id: 6465cdd4-055d-4b4c-0a46-08dab7f2fc09 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: tEGI7sahRarXic8lI2xRIZ+nlxlHFnckvI5BjSI3h4KyfK9lkvigNddsEcfSXAb/KdmZdbWflZiFWvBxEqnEE3dhWQxOK+Qtllicdz1lGfonDKZtIEx+gBhVOwsHDobHT7kO1YruNGW1NNkpMuajEqbgl9E99c08+HtImLMX3s3Xp1aekTG6pMOYmnIWJTxEAknm0fZqJAIOAA/cgI84S89mFeq4Wz/zl3WKzH7DqI2C9iQv9i+55bGYml/xY4/FwpUBbTzAAaUw0H21OjwN1RHpM6EWHY67pCmgwOdZAGdxtHrHvkMo9TmrHS+NVYKp4Ec8POj9CfDUHt2EpO097s9/x5of9Z2HhZXH7EciBCXJ506GkiQdfjy8u2zxGmiP62TzBmPNrF3hloduZJhd+8HDJ1ALU4D8VubbmKRDLrgw8MFS+C8ldsvNNyfcIvuwWUs0262jl2k75qdr1YIyUhSVbsWSoI7pQBSy2p723Qju3hTdOMflHkdoQc074lflh93vmU9v4FLclzacydsSwU+J29F6SwLSWt0/E2z38noDClZJaV43YV8lzI4pxyqDiGcc5n78v1Hw23m6cwdTAMtz9PoJonyfBOCwALnZCEH2txgqtgQXwXZUuaMfI0Rpr2y977TVJtaP+5bq1W609QGcOOjtfSL1IXhrM01aIhHvGv2GRJM6QIGvSnciQbmQAIYxUMcIz4YVfVGzcA7W5zjE8C1G1SaheExe3sgV1+GvjDZ8fQGe8imFlI9V69+wKASBR32rQZETvRNHT9irSWzM1jKFuv7/tB/9txZZkkI7UiKyowQtJCVMx6yFN2Oz/VvtlgZ3nOcUPm54dmt/7TPJz0FuppZu+5NiKNVCwWc= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PAXPR08MB6969.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(39860400002)(346002)(396003)(366004)(376002)(136003)(451199015)(31686004)(36756003)(2906002)(6506007)(66476007)(316002)(86362001)(66946007)(4326008)(8676002)(6512007)(26005)(6486002)(52116002)(54906003)(110136005)(38350700002)(5660300002)(38100700002)(66556008)(2616005)(8936002)(186003)(41300700001)(83380400001)(6666004)(478600001)(31696002)(41533002)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SWNnWHlwdm8wV1JVU2xSb0Q1cHlqVG1xeExSd081Zm05M1BXMDJGWmQ4cERK?= =?utf-8?B?ditjb0dyd25HUGp6b2U5ckNHVjRNOXVtZnhoM2JWOG1mdEpYS1QvM2M2TTN2?= =?utf-8?B?aWN3MkhpWHdabmNLQms2ZmJ4ZURMMGZkbFBZOG5FMTJ2TWc4Tk5GRjR0Tkdy?= =?utf-8?B?TE5mY1M3N2JCZENMYllYNDdveUt6WWFnS1k4cER4TEFlNFNvcG5tSmtRVkFt?= =?utf-8?B?Z0hiYjdsOWFQMTVQa2NZL2tNSWJZOHI1M0pqTk9sYmMvcktkSkc4ZUZTY0Ry?= =?utf-8?B?dlRNK0FMVjFlNzZNYkR2aitvOXlQdityTk1MNC9LUmhWRUh2aWV2OW1YYkJa?= =?utf-8?B?MTJOcUx5QzV1dHNiZmRMdEtaSlZvQkRlWFFEQ0twV2dZRWZ0L2I5QWhLdG5E?= =?utf-8?B?RmpsbEpaK1ZNUE5Eamo2aDFvcFFtMmNReUxrZTcrVkRsSVArUGxVamppVFh6?= =?utf-8?B?b1d4WUg4VWZuYmhCSE90NG0zaUg1Sk82YUVUQjYvNUVLUUR4UmtpSzljcnhB?= =?utf-8?B?VDRKV1VyVE9ROUZKQnczNHpkbXEwWS80MHpLZnF1SjJ4Rmk4M0FnMCtJeWdT?= =?utf-8?B?N2hZZ0Vpb25IYnZLVVUzYi9uRWwrQmpwbk1ybmdXUW41V0szeDJGRDVLeTdR?= =?utf-8?B?ejcxVndqNk44R3ZyT0c5WVN2Rk5yVTNLWjF6M2EzTm44Q0FDa1B6TzVGVVdZ?= =?utf-8?B?bytWNlRMUTRSQmx2SnRsOUxjZTRta2VJbGFzSFlWN0pmanE2WHZRUGRZZ0k1?= =?utf-8?B?Qnh2MzNIL0IvS2J5YzNJR0QxK2V1ZUFzN0J4bUU4ZlYvbzBVUTVhaCtsbWhw?= =?utf-8?B?MmdEVmdobmVhZk13a0dnT3lhZm9ma2JpVEI3Z1o2U0hVSlFENkVETFgxa3hx?= =?utf-8?B?YTVXMXZRMWt0Q3o2TWN1dEk5MXBOalNMMTk2SC9PVndxdWJsMTlkR1g1SWVD?= =?utf-8?B?UUdkMWxVUThwOWJ0Qm9XblBtY1NySStqbWY4L3JvRVJ3RnN2VkhHSEwzbFVh?= =?utf-8?B?QXhPMzZuL3RncVh2L3NFUmtDVmxhdkFmakU0VXVuVGR3L3RCV1kyYStxVWpi?= =?utf-8?B?YmhIREtMNXBpQ2pkckJGVVRUOVZWb2QrUGRhL3JRM0hFd0JYZVYrYmRsVWNk?= =?utf-8?B?cFFBOUVEMnNIMXYzWlJXRlRGTXBXM0lWL1FGZmpIOSt1QWhkWXJCbnNGdkxY?= =?utf-8?B?Y251R2VpY2d1bHphM0hNbEFyVDRNTkdpM3JPcm9RYzA1WlhhaGt2dnVGMXZE?= =?utf-8?B?SldkNnZnT3laZy9JdG5SemRQSjh2WFBNRUNJTFhBbGIwR3FqNlJMaE4xaUs3?= =?utf-8?B?alVFTHdnYWk4NWZoYUxtaUU3Y0g5ODA1bFRlNGxmODVNMmxkQ3M3bFBaQWxy?= =?utf-8?B?ZTRNVC9mQi8rS3hUTG5HempMdW9VMjF6WE0vUzFpRXFBMEs5RHJVRnJ3YjR1?= =?utf-8?B?MFZBSFdPVnBlUVFVeEdxME5tK2p5ejJHUkVEdGpPRGNySTdxeStVblluNHpV?= =?utf-8?B?cUx6Z1VTZ2xydEFZaEdnaHFsaVBlNzlpWE9xRm9IbHJ0aFUycEZZNTllNkM1?= =?utf-8?B?U3BDL0dyMTVxRWJWeXZlYXBGcXBIR2s1bTZmbjhGM0Q4Qml0SWNLU2t0WmZJ?= =?utf-8?B?Sk9zdVRBbG1lblJrL1RzdVZidStUM055aGZZeld3QVR2Rm0rbndqaW9yN2kr?= =?utf-8?B?Qm5jNExXc1hHTGhzVWJab1NaaXJ1NkZGbEErV0pZdTMzdUJCaGl1Zi9mM09a?= =?utf-8?B?bGR6SklveDJYY3Z2ZUN6ZDVUZk1iM1VIbFRZL0NtVndiNXZkWEFBcmR1UHdQ?= =?utf-8?B?M0RVNVhmUTczQmpQemZNcEFkN0FESEN0K1hMTzZ4TXc0K3dSdWlISkFlYjVt?= =?utf-8?B?SXBQOXVnSEZZUTRMWWNJV3pOWkxnb2ZIdGFLTHBhOEdNMUh2VEVBbEs2akFN?= =?utf-8?B?N2xTWHZ5T2gweEo4YldjekhuNExOL1JHTFZSRFpUMURjemJkdjZGMWFHM283?= =?utf-8?B?cXlMZ0pEYmRnbnFDSksvU0N2RENSTjNIRWZTaE1jTThBdUhvSlZuT2ZKQktK?= =?utf-8?B?S2htbEJ6NElnZVM5NVZ6RExZcW1aYXdabDVsOGxaZDM0SmUwcTlJcVNUblRp?= =?utf-8?B?NllCcnBQQnNKTGkzOER5MW4wVnRvKzlGcFdVcTFvZFN1WlJVdGUyellJb1Y3?= =?utf-8?B?TWc9PQ==?= X-OriginatorOrg: weidmueller.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6465cdd4-055d-4b4c-0a46-08dab7f2fc09 X-MS-Exchange-CrossTenant-AuthSource: PAXPR08MB6969.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2022 08:12:26.6015 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e4289438-1c5f-4c95-a51a-ee553b8b18ec X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Z7xtaFVXt4UB++k9ZiRtvyq/SrH1OkfQzRx1R6KSwPhVNImwIPjULtnIkZxtcvWCi/6rycTTho290MjHUrNw1Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7535 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.6 at phobos.denx.de X-Virus-Status: Clean Hi, Am 05.10.2022 um 10:33 schrieb Jan Kiszka: > From: Jan Kiszka > > This completes what 890feecaab72 started by selecting ENV_APPEND and > ENV_IS_NOWHERE and by moving this driver to top if the list. This > ensures that load operations pick up both the default env and the > permitted parts of the next-prio location. When writing though, we must > use the regular ordering. > > With this change, boards only need to define the list of writable > variables but no longer have to provide a custom env_get_location > implementation. > > CC: Joe Hershberger > CC: Marek Vasut > Signed-off-by: Jan Kiszka > --- > env/Kconfig | 2 ++ > env/env.c | 22 ++++++++++++++++++++++ > 2 files changed, 24 insertions(+) > > diff --git a/env/Kconfig b/env/Kconfig > index 24111dfaf47..05b5fbf17d1 100644 > --- a/env/Kconfig > +++ b/env/Kconfig > @@ -715,6 +715,8 @@ config ENV_APPEND > > config ENV_WRITEABLE_LIST > bool "Permit write access only to listed variables" > + select ENV_IS_NOWHERE > + select ENV_APPEND > help > If defined, only environment variables which explicitly set the 'w' > writeable flag can be written and modified at runtime. No variables > diff --git a/env/env.c b/env/env.c > index 69848fb0608..d0649f9540d 100644 > --- a/env/env.c > +++ b/env/env.c > @@ -133,6 +133,28 @@ __weak enum env_location arch_env_get_location(enum env_operation op, int prio) > if (prio >= ARRAY_SIZE(env_locations)) > return ENVL_UNKNOWN; > > + if (IS_ENABLED(CONFIG_ENV_WRITEABLE_LIST)) { > + /* > + * In writeable-list mode, ENVL_NOWHERE gains highest prio by > + * virtually injecting it at prio 0. > + */ > + if (prio == 0) { > + /* > + * Avoid the injection for write operations as that > + * would block it. > + */ > + if (op != ENVOP_SAVE && op != ENVOP_ERASE) > + return ENVL_NOWHERE; Is it consensus now to use ENVL_NOWHERE as synonym for default environment? If I remember correct this was rejected in the past and ENVL_NOWHERE  should only be used if no enviroment is available. Why don't you call env_set_default(NULL, 0) in env_load() before env_driver_lookup()? > + } else { > + /* > + * always subtract 1, also for writing because > + * env_load_prio, which is used for writing, was > + * initialized with that offset. > + */ > + prio--; > + } > + } > + > return env_locations[prio]; > } > Regards   Stefan