Received: by 2002:a05:6358:45e:b0:b5:b6eb:e1f9 with SMTP id 30csp4138938rwe; Tue, 30 Aug 2022 05:25:27 -0700 (PDT) X-Google-Smtp-Source: AA6agR723MyDePtraY9u6ecjMstn5ER7zzKh0JWfiuS850rTCviBq9TR3qWTTCIeRmXOdFSVg8OS X-Received: by 2002:a65:6a83:0:b0:42b:344a:3546 with SMTP id q3-20020a656a83000000b0042b344a3546mr18121736pgu.612.1661862327436; Tue, 30 Aug 2022 05:25:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1661862327; cv=none; d=google.com; s=arc-20160816; b=cOARtnEX7viFd2wnxfnlcqvMK4bROlCC0XyqAHijCPL5Z5CKdxqgEnkWY+VKAzRbis OqKbNBWVyuwI7Ys9avr1hKhmQdk5/v6anpZNB4KM/xQJWmoMZCbNaPxg9zK0N0eemRSV Qwy19siEa8zCsN8ZSBmOcccEpDfoWGlEefhBLhiDGKlOJO1b1Q1qFKwkXSCS6M5vpXUC Q9lKiXeUmKEorU3tD/DmX9cRnFavQH87eLIScBILgSfa8VxJkQcQQKRS/VCXfmzKC4YE 5FOo5wWakCPqhQhXfu+ReIaJqM1iUg+2OzLOFDWQvJ000PFGA3U28549KiFpHa2AcSKr +l2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:feedback-id:dkim-signature:dkim-signature; bh=Un4EFnpmCrjF0op+CQJbf6xj3KV7/HPMuOuXK7AEo2I=; b=mu+XcBW3qHb6hBkpClLEMjpXiKXOPMywVCXzT+vhFvyk+c55tyy8Hgvp28n5tcaiwT 6aIL6JoKPs8OyikGALaJA4OOW72GxoXlXAaEVEGfxxuEbfkozOukNXOjyla99iBQUwyd wDrop13TRKn87e2NBfGpeG7x/s5ZEvVFi2QfRFXlgRQr+JU2HmAjGoBU8O7YY3GeCas3 +Yijmf6W557v326TXdgRemnsoF+aPOEE7dic9N7HGGgChje0S/7qQIaECf3eQVt2kypo OKnYkfoTnHm4qQ2csasX00ghqaY+g4HMqVhYz75MDhKbEZjv5zPFe//syEHgHOZIDEkn veVA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@cerno.tech header.s=fm3 header.b=DtvEwgKs; dkim=pass header.i=@messagingengine.com header.s=fm1 header.b=36dbXYWy; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=cerno.tech Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id y12-20020a170902700c00b00174ae7f75cbsi5588214plk.560.2022.08.30.05.25.13; Tue, 30 Aug 2022 05:25:27 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@cerno.tech header.s=fm3 header.b=DtvEwgKs; dkim=pass header.i=@messagingengine.com header.s=fm1 header.b=36dbXYWy; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=cerno.tech Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229595AbiH3MLE (ORCPT + 99 others); Tue, 30 Aug 2022 08:11:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60298 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229608AbiH3MLC (ORCPT ); Tue, 30 Aug 2022 08:11:02 -0400 Received: from new1-smtp.messagingengine.com (new1-smtp.messagingengine.com [66.111.4.221]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5E495A6AE5 for ; Tue, 30 Aug 2022 05:10:57 -0700 (PDT) Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailnew.nyi.internal (Postfix) with ESMTP id 7213D5802D9; Tue, 30 Aug 2022 08:03:36 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Tue, 30 Aug 2022 08:03:36 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cerno.tech; h=cc :cc:content-transfer-encoding:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm3; t=1661861016; x= 1661868216; bh=Un4EFnpmCrjF0op+CQJbf6xj3KV7/HPMuOuXK7AEo2I=; b=D tvEwgKsQqnUenjfacp4PZwK0ZhaN/HT87mq75are5HFk0XfZglYSMRXUP2aNVpdO tabv3AyDoz4CT5k++l9c3y9JHGnsYqDVm7cgR/iWQye24reLcluU/RRGezMHMa3o 26lJD1g9RgnfgW/OANYyo9K4c6vWlN71CduB2tRPAJqZq16cgjpZieIr87H4Jlg7 CMhS9/azps7Am17rwoqUK1Uzi2DSu+b8JpaWS9CO4G+HZmfnAPs/5HNsjBkwTnzN ipQSgsrTKotKvLM9y8XxkH7d+I9Z2kpDV/7B7h5Pj3SpiRe4LvYuUnsxAp9CyoMZ AwL0Hm7CQETZv9e626ipQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1661861016; x= 1661868216; bh=Un4EFnpmCrjF0op+CQJbf6xj3KV7/HPMuOuXK7AEo2I=; b=3 6dbXYWyKPwm/+6hbuyU/giI2uQ63drNFQSePRhBlilQ67WGUWjcWLI1p+LqEK73g fs0NRJU95nYgN8bDHN8FFYkRwp8xIREz5mPdBI26UdsvXS/065X+RwB5GxhnS7De rKK6aH8bgofjNfDGB4pg6ieTA8OIAtlPiMqiN5aA38ZA7g7KDM7sUn9DyxZVOCOe vrAeQ7vrwxvCPu8swnYxmAZY1Ax1Ud1UUMQ8fqiDPb28jmFFKhi09+a0LWmcu3Xn 7E4+8+7+U/xAMvq+LZ7fMjdTdaqwxfwhcecTw/1UJu+ZPvkslXODYswUAoZdUdOo vaJgClnI41QuGh/kzRTgA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrvdekfedggeelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggugfgjsehtqhertddttddvnecuhfhrohhmpeforgig ihhmvgcutfhiphgrrhguuceomhgrgihimhgvsegtvghrnhhordhtvggthheqnecuggftrf grthhtvghrnheptefgleeggfegkeekgffgleduieduffejffegveevkeejudektdduueet feetfefgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomh epmhgrgihimhgvsegtvghrnhhordhtvggthh X-ME-Proxy: Feedback-ID: i8771445c:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 30 Aug 2022 08:03:34 -0400 (EDT) Date: Tue, 30 Aug 2022 14:03:30 +0200 From: Maxime Ripard To: Jani Nikula Cc: Geert Uytterhoeven , Ben Skeggs , David Airlie , Chen-Yu Tsai , Thomas Zimmermann , Lyude Paul , Philipp Zabel , Maarten Lankhorst , Rodrigo Vivi , Tvrtko Ursulin , Jernej Skrabec , Samuel Holland , Karol Herbst , Noralf =?utf-8?Q?Tr=C3=B8nnes?= , Emma Anholt , Daniel Vetter , Joonas Lahtinen , Hans de Goede , Linux ARM , Phil Elwell , Intel Graphics Development , Dave Stevenson , DRI Development , Dom Cobley , Linux Kernel Mailing List , Nouveau Dev , linux-sunxi@lists.linux.dev, Mateusz Kwiatkowski Subject: Re: [PATCH v2 14/41] drm/modes: Move named modes parsing to a separate function Message-ID: <20220830120330.6f5f22d35gu7cbr3@houat> References: <20220728-rpi-analog-tv-properties-v2-0-459522d653a7@cerno.tech> <20220728-rpi-analog-tv-properties-v2-14-459522d653a7@cerno.tech> <87czcidnb8.fsf@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable In-Reply-To: <87czcidnb8.fsf@intel.com> X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, On Tue, Aug 30, 2022 at 01:43:07PM +0300, Jani Nikula wrote: > On Tue, 30 Aug 2022, Geert Uytterhoeven wrote: > > On Mon, Aug 29, 2022 at 3:13 PM Maxime Ripard wrote: > >> +#define STR_STRICT_EQ(str, len, cmp) \ > >> + ((strlen(cmp) =3D=3D len) && !strncmp(str, cmp, len)) > > > > This is not part of the move, but newly added. >=20 > The same construct is also duplicated elsewhere in the series, and I > kept being confused by it. I'm not sure what is confusing, but I can add a comment if needed. > The above is precisely the same as: >=20 > str_has_prefix(str, cmp) =3D=3D len Here, it's used to make sure we don't have a named mode starting with either e, d, or D. If I understood str_has_prefix() right, str_has_prefix("DUMB-MODE", "D") =3D=3D strlen("DUMB-MODE") would return true, while it's actually what we want to avoid. It's also used indeed in drm_get_tv_mode_from_name(), where we try to match a list of names with one passed as argument. With drm_get_tv_mode_from_name("NSTC", strlen("NTSC")), we would end up calling str_has_prefix("NTSC-J", "NTSC") =3D=3D strlen("NTSC-J") which would work. However, we end up calling prefix not a prefix, but an entire string we want to match against, which is very confusing to me too. Maxime