Hi all,
After merging the i2c tree, today's linux-next build (x86_64 allmodconfig) failed like this:
In file included from drivers/gpu/drm/i915/i915_gem.c:1250: drivers/gpu/drm/i915/selftests/i915_gem.c:97:13: error: conflicting types for 'pm_suspend' 97 | static void pm_suspend(struct drm_i915_private *i915) | ^~~~~~~~~~ In file included from include/linux/regulator/consumer.h:35, from include/linux/i2c.h:18, from drivers/gpu/drm/i915/i915_drv.h:39, from drivers/gpu/drm/i915/gt/intel_context.h:14, from drivers/gpu/drm/i915/gem/i915_gem_context.h:12, from drivers/gpu/drm/i915/i915_gem.c:44: include/linux/suspend.h:331:12: note: previous declaration of 'pm_suspend' was here 331 | extern int pm_suspend(suspend_state_t state); | ^~~~~~~~~~
Caused by commit
5a7b95fb993e ("i2c: core: support bus regulator controlling in adapter")
interacting with commit
3f51b7e1f36a ("drm/i915/selftests: Add a simple exerciser for suspend/hibernate")
from Linus' tree (v4.20-rc1)
I have added the following merge fix patch:
From: Stephen Rothwell sfr@canb.auug.org.au Date: Tue, 1 Jun 2021 10:25:49 +1000 Subject: [PATCH] drm/i915/selftests: Avoid name clash with pm_ global functions
Signed-off-by: Stephen Rothwell sfr@canb.auug.org.au --- drivers/gpu/drm/i915/selftests/i915_gem.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/i915/selftests/i915_gem.c b/drivers/gpu/drm/i915/selftests/i915_gem.c index dc394fb7ccfa..5d674708b047 100644 --- a/drivers/gpu/drm/i915/selftests/i915_gem.c +++ b/drivers/gpu/drm/i915/selftests/i915_gem.c @@ -87,14 +87,14 @@ static void simulate_hibernate(struct drm_i915_private *i915) intel_runtime_pm_put(&i915->runtime_pm, wakeref); }
-static int pm_prepare(struct drm_i915_private *i915) +static int test_pm_prepare(struct drm_i915_private *i915) { i915_gem_suspend(i915);
return 0; }
-static void pm_suspend(struct drm_i915_private *i915) +static void test_pm_suspend(struct drm_i915_private *i915) { intel_wakeref_t wakeref;
@@ -104,7 +104,7 @@ static void pm_suspend(struct drm_i915_private *i915) } }
-static void pm_hibernate(struct drm_i915_private *i915) +static void test_pm_hibernate(struct drm_i915_private *i915) { intel_wakeref_t wakeref;
@@ -116,7 +116,7 @@ static void pm_hibernate(struct drm_i915_private *i915) } }
-static void pm_resume(struct drm_i915_private *i915) +static void test_pm_resume(struct drm_i915_private *i915) { intel_wakeref_t wakeref;
@@ -148,16 +148,16 @@ static int igt_gem_suspend(void *arg) if (err) goto out;
- err = pm_prepare(i915); + err = test_pm_prepare(i915); if (err) goto out;
- pm_suspend(i915); + test_pm_suspend(i915);
/* Here be dragons! Note that with S3RST any S3 may become S4! */ simulate_hibernate(i915);
- pm_resume(i915); + test_pm_resume(i915);
err = switch_to_context(ctx); out: @@ -183,16 +183,16 @@ static int igt_gem_hibernate(void *arg) if (err) goto out;
- err = pm_prepare(i915); + err = test_pm_prepare(i915); if (err) goto out;
- pm_hibernate(i915); + test_pm_hibernate(i915);
/* Here be dragons! */ simulate_hibernate(i915);
- pm_resume(i915); + test_pm_resume(i915);
err = switch_to_context(ctx); out: