mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Maxime Ripard <maxime@cerno.tech>
To: "Noralf Trønnes" <noralf@tronnes.org>
Cc: Karol Herbst <kherbst@redhat.com>,
	Jani Nikula <jani.nikula@linux.intel.com>,
	Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>,
	Daniel Vetter <daniel@ffwll.ch>,
	Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
	David Airlie <airlied@linux.ie>,
	Joonas Lahtinen <joonas.lahtinen@linux.intel.com>,
	Lyude Paul <lyude@redhat.com>, Emma Anholt <emma@anholt.net>,
	Chen-Yu Tsai <wens@csie.org>,
	Samuel Holland <samuel@sholland.org>,
	Ben Skeggs <bskeggs@redhat.com>,
	Thomas Zimmermann <tzimmermann@suse.de>,
	Rodrigo Vivi <rodrigo.vivi@intel.com>,
	Jernej Skrabec <jernej.skrabec@gmail.com>,
	Dom Cobley <dom@raspberrypi.com>,
	linux-sunxi@lists.linux.dev,
	Dave Stevenson <dave.stevenson@raspberrypi.com>,
	intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org,
	nouveau@lists.freedesktop.org,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	linux-arm-kernel@lists.infradead.org,
	Mateusz Kwiatkowski <kfyatek+publicgit@gmail.com>,
	dri-devel@lists.freedesktop.org,
	Hans de Goede <hdegoede@redhat.com>,
	Phil Elwell <phil@raspberrypi.com>
Subject: Re: [PATCH v5 08/22] drm/modes: Move named modes parsing to a separate function
Date: Tue, 18 Oct 2022 09:57:42 +0200	[thread overview]
Message-ID: <20221018075742.7g3sfay3o7wk54kv@houat> (raw)
In-Reply-To: <729f849a-0287-a2fb-125f-892b4dd6053f@tronnes.org>

[-- Attachment #1: Type: text/plain, Size: 1995 bytes --]

On Sun, Oct 16, 2022 at 06:11:21PM +0200, Noralf Trønnes wrote:
> Den 13.10.2022 15.18, skrev Maxime Ripard:
> > The current construction of the named mode parsing doesn't allow to extend
> > it easily. Let's move it to a separate function so we can add more
> > parameters and modes.
> > 
> > In order for the tests to still pass, some extra checks are needed, so
> > it's not a 1:1 move.
> > 
> > Signed-off-by: Maxime Ripard <maxime@cerno.tech>
> > 
> 
> I was hoping that someone else would step up and review these parser
> patches since the parser code is rather difficult to read, for me at
> least. I have studied it now, so I'll give it a try.
> 
> > ---
> > Changes in v4:
> > - Fold down all the named mode patches that were split into a single
> >   patch again to maintain bisectability
> > ---
> >  drivers/gpu/drm/drm_modes.c | 73 ++++++++++++++++++++++++++++++++++++++-------
> >  1 file changed, 62 insertions(+), 11 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c
> > index c0dceff51cac..2f020ef2ddf2 100644
> > --- a/drivers/gpu/drm/drm_modes.c
> > +++ b/drivers/gpu/drm/drm_modes.c
> > @@ -2229,6 +2229,55 @@ static const char * const drm_named_modes_whitelist[] = {
> >  	"PAL",
> >  };
> >  
> > +static int drm_mode_parse_cmdline_named_mode(const char *name,
> > +					     unsigned int name_end,
> > +					     struct drm_cmdline_mode *cmdline_mode)
> > +{
> > +	unsigned int i;
> > +
> > +	if (!name_end)
> > +		return 0;
> 
> name_end can't be zero since the argument is checked before calling this
> function.

I'd really like to keep it in though. At least, we know by looking at
this small function that we're going to be safe all the time, no matter
what the caller does.

And if the caller wants to check it as well, fine, it's only a simple
comparison ran once or twice at boot, it's not like it's in a hot-path.

I've addressed your other comments, thanks!
Maxime

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

  reply	other threads:[~2022-10-18  7:57 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20220728-rpi-analog-tv-properties-v5-0-d841cc64fe4b@cerno.tech>
     [not found] ` <20220728-rpi-analog-tv-properties-v5-22-d841cc64fe4b@cerno.tech>
2022-10-13 18:23   ` [PATCH v5 22/22] drm/sun4i: tv: Convert to the new TV mode property Jernej Škrabec
2022-10-14  7:38     ` Maxime Ripard
2022-10-15  8:59       ` Jernej Škrabec
     [not found] ` <20220728-rpi-analog-tv-properties-v5-1-d841cc64fe4b@cerno.tech>
2022-10-15 15:06   ` [PATCH v5 01/22] drm/tests: Add Kunit Helpers Noralf Trønnes
     [not found] ` <20220728-rpi-analog-tv-properties-v5-7-d841cc64fe4b@cerno.tech>
2022-10-15 16:58   ` [PATCH v5 07/22] drm/client: Add some tests for drm_connector_pick_cmdline_mode() Noralf Trønnes
2022-10-20  7:55   ` Michał Winiarski
     [not found] ` <20220728-rpi-analog-tv-properties-v5-8-d841cc64fe4b@cerno.tech>
2022-10-16 16:11   ` [PATCH v5 08/22] drm/modes: Move named modes parsing to a separate function Noralf Trønnes
2022-10-18  7:57     ` Maxime Ripard [this message]
     [not found] ` <20220728-rpi-analog-tv-properties-v5-6-d841cc64fe4b@cerno.tech>
2022-10-16 17:34   ` [PATCH v5 06/22] drm/modes: Add a function to generate analog display modes Mateusz Kwiatkowski
2022-10-18  8:08     ` Maxime Ripard
     [not found] ` <20220728-rpi-analog-tv-properties-v5-13-d841cc64fe4b@cerno.tech>
2022-10-16 17:51   ` [PATCH v5 13/22] drm/modes: Introduce the tv_mode property as a command-line option Mateusz Kwiatkowski
2022-10-17 10:21     ` Noralf Trønnes
     [not found] ` <20220728-rpi-analog-tv-properties-v5-19-d841cc64fe4b@cerno.tech>
2022-10-16 18:12   ` [PATCH v5 19/22] drm/vc4: vec: Check for VEC output constraints Mateusz Kwiatkowski
2022-10-16 18:16     ` Mateusz Kwiatkowski
2022-10-18  8:27       ` Maxime Ripard
     [not found] ` <20220728-rpi-analog-tv-properties-v5-21-d841cc64fe4b@cerno.tech>
2022-10-16 19:02   ` [PATCH v5 21/22] drm/vc4: vec: Add support for more analog TV standards Mateusz Kwiatkowski
2022-10-16 19:46   ` [PATCH] drm/vc4: vec: Add support for PAL-60 Mateusz Kwiatkowski
2022-10-18  8:31     ` Maxime Ripard
2022-10-18 20:57       ` Mateusz Kwiatkowski
2022-10-20 15:34         ` maxime
     [not found] ` <20220728-rpi-analog-tv-properties-v5-16-d841cc64fe4b@cerno.tech>
2022-10-17 10:36   ` [PATCH v5 16/22] drm/atomic-helper: Add a TV properties reset helper Noralf Trønnes
     [not found] ` <20220728-rpi-analog-tv-properties-v5-12-d841cc64fe4b@cerno.tech>
2022-10-17 10:44   ` [PATCH v5 12/22] drm/connector: Add a function to lookup a TV mode by its name Noralf Trønnes
2022-10-18  9:33     ` Maxime Ripard
2022-10-18 12:29       ` Noralf Trønnes
2022-10-19  8:48         ` Maxime Ripard
2022-10-19 10:43           ` Noralf Trønnes
2022-10-20 11:29             ` maxime
     [not found] ` <20220728-rpi-analog-tv-properties-v5-20-d841cc64fe4b@cerno.tech>
2022-10-16 18:52   ` [PATCH v5 20/22] drm/vc4: vec: Convert to the new TV mode property Mateusz Kwiatkowski
2022-10-16 18:56     ` Mateusz Kwiatkowski
2022-10-17 10:31     ` Noralf Trønnes
2022-10-18 10:00       ` Maxime Ripard
     [not found]         ` <da2b4cb4-5d12-3161-64e3-e87a8cc63e81@gmail.com>
2022-10-20 11:58           ` maxime
2022-10-17 11:39   ` Noralf Trønnes

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20221018075742.7g3sfay3o7wk54kv@houat \
    --to=maxime@cerno.tech \
    --cc=airlied@linux.ie \
    --cc=bskeggs@redhat.com \
    --cc=daniel@ffwll.ch \
    --cc=dave.stevenson@raspberrypi.com \
    --cc=dom@raspberrypi.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=emma@anholt.net \
    --cc=geert@linux-m68k.org \
    --cc=hdegoede@redhat.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jani.nikula@linux.intel.com \
    --cc=jernej.skrabec@gmail.com \
    --cc=joonas.lahtinen@linux.intel.com \
    --cc=kfyatek+publicgit@gmail.com \
    --cc=kherbst@redhat.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sunxi@lists.linux.dev \
    --cc=lyude@redhat.com \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=noralf@tronnes.org \
    --cc=nouveau@lists.freedesktop.org \
    --cc=phil@raspberrypi.com \
    --cc=rodrigo.vivi@intel.com \
    --cc=samuel@sholland.org \
    --cc=tvrtko.ursulin@linux.intel.com \
    --cc=tzimmermann@suse.de \
    --cc=wens@csie.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®