All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Dixit, Ashutosh" <ashutosh.dixit@intel.com>
To: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH v2 5/9] drm/i915/perf: Fail modprobe if i915_perf_init fails on OOM
Date: Thu, 16 Feb 2023 18:04:45 -0800	[thread overview]
Message-ID: <87fsb5f3nm.wl-ashutosh.dixit@intel.com> (raw)
In-Reply-To: <20230217005850.2511422-6-umesh.nerlige.ramappa@intel.com>

On Thu, 16 Feb 2023 16:58:46 -0800, Umesh Nerlige Ramappa wrote:
>
> i915_perf_init can fail due to OOM. Fail driver init if i915_perf_init
> fails.
>
> v2: (Jani)
> - Reorder patch in the series

Jani seemed ok with this: that a drm_err will get lost in the dmesg deluge
on OOM so it's better to fail the probe as long as it's only due to OOM.

> Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
> ---
>  drivers/gpu/drm/i915/i915_driver.c | 4 +++-
>  drivers/gpu/drm/i915/i915_perf.c   | 8 ++++++--
>  drivers/gpu/drm/i915/i915_perf.h   | 2 +-
>  3 files changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_driver.c b/drivers/gpu/drm/i915/i915_driver.c
> index 0c0ae3eabb4b..998ca41c9713 100644
> --- a/drivers/gpu/drm/i915/i915_driver.c
> +++ b/drivers/gpu/drm/i915/i915_driver.c
> @@ -477,7 +477,9 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv)
>	if (ret)
>		return ret;
>
> -	i915_perf_init(dev_priv);
> +	ret = i915_perf_init(dev_priv);

Maybe add a comment here like this to allay people's concerns?

	/* The only non-zero ret here is -ENOMEM */

or even:

	drm_WARN_ON(&dev_priv->drm, ret && ret != -ENOMEM);

Otherwise this is:

Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>

> +	if (ret)
> +		return ret;
>
>	ret = i915_ggtt_probe_hw(dev_priv);
>	if (ret)
> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
> index 37c4cc44d68c..3306653c0b85 100644
> --- a/drivers/gpu/drm/i915/i915_perf.c
> +++ b/drivers/gpu/drm/i915/i915_perf.c
> @@ -4941,7 +4941,7 @@ static void i915_perf_init_info(struct drm_i915_private *i915)
>   * Note: i915-perf initialization is split into an 'init' and 'register'
>   * phase with the i915_perf_register() exposing state to userspace.
>   */
> -void i915_perf_init(struct drm_i915_private *i915)
> +int i915_perf_init(struct drm_i915_private *i915)
>  {
>	struct i915_perf *perf = &i915->perf;
>
> @@ -5057,12 +5057,16 @@ void i915_perf_init(struct drm_i915_private *i915)
>		perf->i915 = i915;
>
>		ret = oa_init_engine_groups(perf);
> -		if (ret)
> +		if (ret) {
>			drm_err(&i915->drm,
>				"OA initialization failed %d\n", ret);
> +			return ret;
> +		}
>
>		oa_init_supported_formats(perf);
>	}
> +
> +	return 0;
>  }
>
>  static int destroy_config(int id, void *p, void *data)
> diff --git a/drivers/gpu/drm/i915/i915_perf.h b/drivers/gpu/drm/i915/i915_perf.h
> index f96e09a4af04..253637651d5e 100644
> --- a/drivers/gpu/drm/i915/i915_perf.h
> +++ b/drivers/gpu/drm/i915/i915_perf.h
> @@ -18,7 +18,7 @@ struct i915_oa_config;
>  struct intel_context;
>  struct intel_engine_cs;
>
> -void i915_perf_init(struct drm_i915_private *i915);
> +int i915_perf_init(struct drm_i915_private *i915);
>  void i915_perf_fini(struct drm_i915_private *i915);
>  void i915_perf_register(struct drm_i915_private *i915);
>  void i915_perf_unregister(struct drm_i915_private *i915);
> --
> 2.36.1
>

  reply	other threads:[~2023-02-17  2:05 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-17  0:58 [Intel-gfx] [PATCH v2 0/9] Add OAM support for MTL Umesh Nerlige Ramappa
2023-02-17  0:58 ` [Intel-gfx] [PATCH v2 1/9] drm/i915/perf: Drop wakeref on GuC RC error Umesh Nerlige Ramappa
2023-02-17  0:58 ` [Intel-gfx] [PATCH v2 2/9] drm/i915/perf: Add helper to check supported OA engines Umesh Nerlige Ramappa
2023-02-17  0:58 ` [Intel-gfx] [PATCH v2 3/9] drm/i915/perf: Validate OA sseu config outside switch Umesh Nerlige Ramappa
2023-02-17  1:10   ` Dixit, Ashutosh
2023-02-17  0:58 ` [Intel-gfx] [PATCH v2 4/9] drm/i915/perf: Group engines into respective OA groups Umesh Nerlige Ramappa
2023-02-22 21:52   ` Dixit, Ashutosh
2023-02-24 17:30     ` Umesh Nerlige Ramappa
2023-02-17  0:58 ` [Intel-gfx] [PATCH v2 5/9] drm/i915/perf: Fail modprobe if i915_perf_init fails on OOM Umesh Nerlige Ramappa
2023-02-17  2:04   ` Dixit, Ashutosh [this message]
2023-02-17  9:55     ` Jani Nikula
2023-02-17  0:58 ` [Intel-gfx] [PATCH v2 6/9] drm/i915/perf: Parse 64bit report header formats correctly Umesh Nerlige Ramappa
2023-02-21 22:14   ` Dixit, Ashutosh
2023-02-17  0:58 ` [Intel-gfx] [PATCH v2 7/9] drm/i915/perf: Handle non-power-of-2 reports Umesh Nerlige Ramappa
2023-02-17 20:58   ` Dixit, Ashutosh
2023-02-18  0:05     ` Umesh Nerlige Ramappa
2023-02-18  1:57       ` Dixit, Ashutosh
2023-02-21 18:51         ` Dixit, Ashutosh
2023-02-24 19:12           ` Umesh Nerlige Ramappa
2023-02-17  0:58 ` [Intel-gfx] [PATCH v2 8/9] drm/i915/perf: Add engine class instance parameters to perf Umesh Nerlige Ramappa
2023-02-17 23:37   ` Umesh Nerlige Ramappa
2023-02-21 23:53   ` Dixit, Ashutosh
2023-02-22  0:10     ` Dixit, Ashutosh
2023-02-24 19:37     ` Umesh Nerlige Ramappa
2023-02-24 20:48       ` Dixit, Ashutosh
2023-02-17  0:58 ` [Intel-gfx] [PATCH v2 9/9] drm/i915/perf: Add support for OA media units Umesh Nerlige Ramappa
2023-02-17 23:37   ` Umesh Nerlige Ramappa
2023-02-23 20:05   ` Dixit, Ashutosh
2023-02-25  0:58     ` Umesh Nerlige Ramappa
2023-02-25  3:58       ` Dixit, Ashutosh
2023-02-17  1:35 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for Add OAM support for MTL (rev2) Patchwork
2023-02-17  1:55 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2023-02-17 16:09 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork

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=87fsb5f3nm.wl-ashutosh.dixit@intel.com \
    --to=ashutosh.dixit@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=umesh.nerlige.ramappa@intel.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.