* [Intel-gfx] [PATCH] drm/i915: Remove unused for_each_uabi_class_engine
@ 2023-11-01 10:01 ` Tvrtko Ursulin
0 siblings, 0 replies; 14+ messages in thread
From: Tvrtko Ursulin @ 2023-11-01 10:01 UTC (permalink / raw)
To: Intel-gfx, dri-devel; +Cc: Tvrtko Ursulin
From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code")
removed some code.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
---
drivers/gpu/drm/i915/i915_drv.h | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index bfcbe93bd9fe..744c8c4a50fa 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -418,11 +418,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915)
(engine__); \
(engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node)))
-#define for_each_uabi_class_engine(engine__, class__, i915__) \
- for ((engine__) = intel_engine_lookup_user((i915__), (class__), 0); \
- (engine__) && (engine__)->uabi_class == (class__); \
- (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node)))
-
#define INTEL_INFO(i915) ((i915)->__info)
#define RUNTIME_INFO(i915) (&(i915)->__runtime)
#define DRIVER_CAPS(i915) (&(i915)->caps)
--
2.39.2
^ permalink raw reply related [flat|nested] 14+ messages in thread* [PATCH] drm/i915: Remove unused for_each_uabi_class_engine @ 2023-11-01 10:01 ` Tvrtko Ursulin 0 siblings, 0 replies; 14+ messages in thread From: Tvrtko Ursulin @ 2023-11-01 10:01 UTC (permalink / raw) To: Intel-gfx, dri-devel; +Cc: Tvrtko Ursulin From: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code") removed some code. Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> --- drivers/gpu/drm/i915/i915_drv.h | 5 ----- 1 file changed, 5 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index bfcbe93bd9fe..744c8c4a50fa 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -418,11 +418,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) (engine__); \ (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) -#define for_each_uabi_class_engine(engine__, class__, i915__) \ - for ((engine__) = intel_engine_lookup_user((i915__), (class__), 0); \ - (engine__) && (engine__)->uabi_class == (class__); \ - (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) - #define INTEL_INFO(i915) ((i915)->__info) #define RUNTIME_INFO(i915) (&(i915)->__runtime) #define DRIVER_CAPS(i915) (&(i915)->caps) -- 2.39.2 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915: Remove unused for_each_uabi_class_engine 2023-11-01 10:01 ` Tvrtko Ursulin @ 2023-11-01 10:06 ` Jani Nikula -1 siblings, 0 replies; 14+ messages in thread From: Jani Nikula @ 2023-11-01 10:06 UTC (permalink / raw) To: Tvrtko Ursulin, Intel-gfx, dri-devel; +Cc: Tvrtko Ursulin On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: > From: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > > Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code") > removed some code. > > Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> \o/ Reviewed-by: Jani Nikula <jani.nikula@intel.com> Could I persuade you to move for_each_engine(), for_each_engine_masked(), rb_to_uabi_engine(), and for_each_uabi_engine() to a more suitable header? > --- > drivers/gpu/drm/i915/i915_drv.h | 5 ----- > 1 file changed, 5 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index bfcbe93bd9fe..744c8c4a50fa 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -418,11 +418,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) > (engine__); \ > (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) > > -#define for_each_uabi_class_engine(engine__, class__, i915__) \ > - for ((engine__) = intel_engine_lookup_user((i915__), (class__), 0); \ > - (engine__) && (engine__)->uabi_class == (class__); \ > - (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) > - > #define INTEL_INFO(i915) ((i915)->__info) > #define RUNTIME_INFO(i915) (&(i915)->__runtime) > #define DRIVER_CAPS(i915) (&(i915)->caps) -- Jani Nikula, Intel ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] drm/i915: Remove unused for_each_uabi_class_engine @ 2023-11-01 10:06 ` Jani Nikula 0 siblings, 0 replies; 14+ messages in thread From: Jani Nikula @ 2023-11-01 10:06 UTC (permalink / raw) To: Tvrtko Ursulin, Intel-gfx, dri-devel; +Cc: Tvrtko Ursulin On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: > From: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > > Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code") > removed some code. > > Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> \o/ Reviewed-by: Jani Nikula <jani.nikula@intel.com> Could I persuade you to move for_each_engine(), for_each_engine_masked(), rb_to_uabi_engine(), and for_each_uabi_engine() to a more suitable header? > --- > drivers/gpu/drm/i915/i915_drv.h | 5 ----- > 1 file changed, 5 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index bfcbe93bd9fe..744c8c4a50fa 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -418,11 +418,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) > (engine__); \ > (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) > > -#define for_each_uabi_class_engine(engine__, class__, i915__) \ > - for ((engine__) = intel_engine_lookup_user((i915__), (class__), 0); \ > - (engine__) && (engine__)->uabi_class == (class__); \ > - (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) > - > #define INTEL_INFO(i915) ((i915)->__info) > #define RUNTIME_INFO(i915) (&(i915)->__runtime) > #define DRIVER_CAPS(i915) (&(i915)->caps) -- Jani Nikula, Intel ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915: Remove unused for_each_uabi_class_engine 2023-11-01 10:06 ` Jani Nikula @ 2023-11-01 14:23 ` Tvrtko Ursulin -1 siblings, 0 replies; 14+ messages in thread From: Tvrtko Ursulin @ 2023-11-01 14:23 UTC (permalink / raw) To: Jani Nikula, Intel-gfx, dri-devel; +Cc: Tvrtko Ursulin On 01/11/2023 10:06, Jani Nikula wrote: > On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: >> From: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >> >> Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code") >> removed some code. >> >> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > > \o/ > > Reviewed-by: Jani Nikula <jani.nikula@intel.com> > > Could I persuade you to move for_each_engine(), > for_each_engine_masked(), rb_to_uabi_engine(), and > for_each_uabi_engine() to a more suitable header? Former to intel_gt.h, but latter a better place is not coming to me. Like: diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pm.h b/drivers/gpu/drm/i915/gt/intel_engine_pm.h index d68675925b79..1d97c435a015 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_pm.h +++ b/drivers/gpu/drm/i915/gt/intel_engine_pm.h @@ -10,6 +10,7 @@ #include "i915_request.h" #include "intel_engine_types.h" #include "intel_wakeref.h" +#include "intel_gt.h" #include "intel_gt_pm.h" static inline bool diff --git a/drivers/gpu/drm/i915/gt/intel_gt.h b/drivers/gpu/drm/i915/gt/intel_gt.h index 9ffdb05e231e..b0e453e27ea8 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt.h +++ b/drivers/gpu/drm/i915/gt/intel_gt.h @@ -171,6 +171,20 @@ void intel_gt_release_all(struct drm_i915_private *i915); (id__)++) \ for_each_if(((gt__) = (i915__)->gt[(id__)])) +/* Simple iterator over all initialised engines */ +#define for_each_engine(engine__, gt__, id__) \ + for ((id__) = 0; \ + (id__) < I915_NUM_ENGINES; \ + (id__)++) \ + for_each_if ((engine__) = (gt__)->engine[(id__)]) + +/* Iterator over subset of engines selected by mask */ +#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ + for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ + (tmp__) ? \ + ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ + 0;) + void intel_gt_info_print(const struct intel_gt_info *info, struct drm_printer *p); diff --git a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c index 8f9b874fdc9c..3aa1d014c14d 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c +++ b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c @@ -6,8 +6,8 @@ #include <drm/drm_print.h> -#include "i915_drv.h" /* for_each_engine! */ #include "intel_engine.h" +#include "intel_gt.h" #include "intel_gt_debugfs.h" #include "intel_gt_engines_debugfs.h" diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 744c8c4a50fa..3feec04a2b1c 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -396,20 +396,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) return i915->gt[0]; } -/* Simple iterator over all initialised engines */ -#define for_each_engine(engine__, gt__, id__) \ - for ((id__) = 0; \ - (id__) < I915_NUM_ENGINES; \ - (id__)++) \ - for_each_if ((engine__) = (gt__)->engine[(id__)]) - -/* Iterator over subset of engines selected by mask */ -#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ - for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ - (tmp__) ? \ - ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ - 0;) - #define rb_to_uabi_engine(rb) \ rb_entry_safe(rb, struct intel_engine_cs, uabi_node) diff --git a/drivers/gpu/drm/i915/selftests/intel_uncore.c b/drivers/gpu/drm/i915/selftests/intel_uncore.c index 7a5f4adc1b8b..c998f15d505c 100644 --- a/drivers/gpu/drm/i915/selftests/intel_uncore.c +++ b/drivers/gpu/drm/i915/selftests/intel_uncore.c @@ -24,6 +24,8 @@ #include "../i915_selftest.h" +#include "gt/intel_gt.h" + static int intel_fw_table_check(const struct intel_forcewake_range *ranges, unsigned int num_ranges, bool is_watertight) Beneficial? Regards, Tvrtko >> --- >> drivers/gpu/drm/i915/i915_drv.h | 5 ----- >> 1 file changed, 5 deletions(-) >> >> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h >> index bfcbe93bd9fe..744c8c4a50fa 100644 >> --- a/drivers/gpu/drm/i915/i915_drv.h >> +++ b/drivers/gpu/drm/i915/i915_drv.h >> @@ -418,11 +418,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) >> (engine__); \ >> (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) >> >> -#define for_each_uabi_class_engine(engine__, class__, i915__) \ >> - for ((engine__) = intel_engine_lookup_user((i915__), (class__), 0); \ >> - (engine__) && (engine__)->uabi_class == (class__); \ >> - (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) >> - >> #define INTEL_INFO(i915) ((i915)->__info) >> #define RUNTIME_INFO(i915) (&(i915)->__runtime) >> #define DRIVER_CAPS(i915) (&(i915)->caps) > ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH] drm/i915: Remove unused for_each_uabi_class_engine @ 2023-11-01 14:23 ` Tvrtko Ursulin 0 siblings, 0 replies; 14+ messages in thread From: Tvrtko Ursulin @ 2023-11-01 14:23 UTC (permalink / raw) To: Jani Nikula, Intel-gfx, dri-devel; +Cc: Tvrtko Ursulin On 01/11/2023 10:06, Jani Nikula wrote: > On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: >> From: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >> >> Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code") >> removed some code. >> >> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > > \o/ > > Reviewed-by: Jani Nikula <jani.nikula@intel.com> > > Could I persuade you to move for_each_engine(), > for_each_engine_masked(), rb_to_uabi_engine(), and > for_each_uabi_engine() to a more suitable header? Former to intel_gt.h, but latter a better place is not coming to me. Like: diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pm.h b/drivers/gpu/drm/i915/gt/intel_engine_pm.h index d68675925b79..1d97c435a015 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_pm.h +++ b/drivers/gpu/drm/i915/gt/intel_engine_pm.h @@ -10,6 +10,7 @@ #include "i915_request.h" #include "intel_engine_types.h" #include "intel_wakeref.h" +#include "intel_gt.h" #include "intel_gt_pm.h" static inline bool diff --git a/drivers/gpu/drm/i915/gt/intel_gt.h b/drivers/gpu/drm/i915/gt/intel_gt.h index 9ffdb05e231e..b0e453e27ea8 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt.h +++ b/drivers/gpu/drm/i915/gt/intel_gt.h @@ -171,6 +171,20 @@ void intel_gt_release_all(struct drm_i915_private *i915); (id__)++) \ for_each_if(((gt__) = (i915__)->gt[(id__)])) +/* Simple iterator over all initialised engines */ +#define for_each_engine(engine__, gt__, id__) \ + for ((id__) = 0; \ + (id__) < I915_NUM_ENGINES; \ + (id__)++) \ + for_each_if ((engine__) = (gt__)->engine[(id__)]) + +/* Iterator over subset of engines selected by mask */ +#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ + for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ + (tmp__) ? \ + ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ + 0;) + void intel_gt_info_print(const struct intel_gt_info *info, struct drm_printer *p); diff --git a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c index 8f9b874fdc9c..3aa1d014c14d 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c +++ b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c @@ -6,8 +6,8 @@ #include <drm/drm_print.h> -#include "i915_drv.h" /* for_each_engine! */ #include "intel_engine.h" +#include "intel_gt.h" #include "intel_gt_debugfs.h" #include "intel_gt_engines_debugfs.h" diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 744c8c4a50fa..3feec04a2b1c 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -396,20 +396,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) return i915->gt[0]; } -/* Simple iterator over all initialised engines */ -#define for_each_engine(engine__, gt__, id__) \ - for ((id__) = 0; \ - (id__) < I915_NUM_ENGINES; \ - (id__)++) \ - for_each_if ((engine__) = (gt__)->engine[(id__)]) - -/* Iterator over subset of engines selected by mask */ -#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ - for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ - (tmp__) ? \ - ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ - 0;) - #define rb_to_uabi_engine(rb) \ rb_entry_safe(rb, struct intel_engine_cs, uabi_node) diff --git a/drivers/gpu/drm/i915/selftests/intel_uncore.c b/drivers/gpu/drm/i915/selftests/intel_uncore.c index 7a5f4adc1b8b..c998f15d505c 100644 --- a/drivers/gpu/drm/i915/selftests/intel_uncore.c +++ b/drivers/gpu/drm/i915/selftests/intel_uncore.c @@ -24,6 +24,8 @@ #include "../i915_selftest.h" +#include "gt/intel_gt.h" + static int intel_fw_table_check(const struct intel_forcewake_range *ranges, unsigned int num_ranges, bool is_watertight) Beneficial? Regards, Tvrtko >> --- >> drivers/gpu/drm/i915/i915_drv.h | 5 ----- >> 1 file changed, 5 deletions(-) >> >> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h >> index bfcbe93bd9fe..744c8c4a50fa 100644 >> --- a/drivers/gpu/drm/i915/i915_drv.h >> +++ b/drivers/gpu/drm/i915/i915_drv.h >> @@ -418,11 +418,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) >> (engine__); \ >> (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) >> >> -#define for_each_uabi_class_engine(engine__, class__, i915__) \ >> - for ((engine__) = intel_engine_lookup_user((i915__), (class__), 0); \ >> - (engine__) && (engine__)->uabi_class == (class__); \ >> - (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) >> - >> #define INTEL_INFO(i915) ((i915)->__info) >> #define RUNTIME_INFO(i915) (&(i915)->__runtime) >> #define DRIVER_CAPS(i915) (&(i915)->caps) > ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915: Remove unused for_each_uabi_class_engine 2023-11-01 14:23 ` Tvrtko Ursulin @ 2023-11-02 9:24 ` Jani Nikula -1 siblings, 0 replies; 14+ messages in thread From: Jani Nikula @ 2023-11-02 9:24 UTC (permalink / raw) To: Tvrtko Ursulin, Intel-gfx, dri-devel; +Cc: Tvrtko Ursulin On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: > On 01/11/2023 10:06, Jani Nikula wrote: >> On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: >>> From: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >>> >>> Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code") >>> removed some code. >>> >>> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >> >> \o/ >> >> Reviewed-by: Jani Nikula <jani.nikula@intel.com> >> >> Could I persuade you to move for_each_engine(), >> for_each_engine_masked(), rb_to_uabi_engine(), and >> for_each_uabi_engine() to a more suitable header? > > Former to intel_gt.h, but latter a better place is not coming to me. Like: > > diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pm.h b/drivers/gpu/drm/i915/gt/intel_engine_pm.h > index d68675925b79..1d97c435a015 100644 > --- a/drivers/gpu/drm/i915/gt/intel_engine_pm.h > +++ b/drivers/gpu/drm/i915/gt/intel_engine_pm.h > @@ -10,6 +10,7 @@ > #include "i915_request.h" > #include "intel_engine_types.h" > #include "intel_wakeref.h" > +#include "intel_gt.h" > #include "intel_gt_pm.h" > > static inline bool > diff --git a/drivers/gpu/drm/i915/gt/intel_gt.h b/drivers/gpu/drm/i915/gt/intel_gt.h > index 9ffdb05e231e..b0e453e27ea8 100644 > --- a/drivers/gpu/drm/i915/gt/intel_gt.h > +++ b/drivers/gpu/drm/i915/gt/intel_gt.h > @@ -171,6 +171,20 @@ void intel_gt_release_all(struct drm_i915_private *i915); > (id__)++) \ > for_each_if(((gt__) = (i915__)->gt[(id__)])) > > +/* Simple iterator over all initialised engines */ > +#define for_each_engine(engine__, gt__, id__) \ > + for ((id__) = 0; \ > + (id__) < I915_NUM_ENGINES; \ > + (id__)++) \ > + for_each_if ((engine__) = (gt__)->engine[(id__)]) > + > +/* Iterator over subset of engines selected by mask */ > +#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ > + for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ > + (tmp__) ? \ > + ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ > + 0;) > + > void intel_gt_info_print(const struct intel_gt_info *info, > struct drm_printer *p); > > diff --git a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c > index 8f9b874fdc9c..3aa1d014c14d 100644 > --- a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c > +++ b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c > @@ -6,8 +6,8 @@ > > #include <drm/drm_print.h> > > -#include "i915_drv.h" /* for_each_engine! */ > #include "intel_engine.h" > +#include "intel_gt.h" > #include "intel_gt_debugfs.h" > #include "intel_gt_engines_debugfs.h" > > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index 744c8c4a50fa..3feec04a2b1c 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -396,20 +396,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) > return i915->gt[0]; > } > > -/* Simple iterator over all initialised engines */ > -#define for_each_engine(engine__, gt__, id__) \ > - for ((id__) = 0; \ > - (id__) < I915_NUM_ENGINES; \ > - (id__)++) \ > - for_each_if ((engine__) = (gt__)->engine[(id__)]) > - > -/* Iterator over subset of engines selected by mask */ > -#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ > - for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ > - (tmp__) ? \ > - ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ > - 0;) > - > #define rb_to_uabi_engine(rb) \ > rb_entry_safe(rb, struct intel_engine_cs, uabi_node) > > diff --git a/drivers/gpu/drm/i915/selftests/intel_uncore.c b/drivers/gpu/drm/i915/selftests/intel_uncore.c > index 7a5f4adc1b8b..c998f15d505c 100644 > --- a/drivers/gpu/drm/i915/selftests/intel_uncore.c > +++ b/drivers/gpu/drm/i915/selftests/intel_uncore.c > @@ -24,6 +24,8 @@ > > #include "../i915_selftest.h" > > +#include "gt/intel_gt.h" > + > static int intel_fw_table_check(const struct intel_forcewake_range *ranges, > unsigned int num_ranges, > bool is_watertight) > > Beneficial? Yeah, I'd like to have less gem/gt/display in i915_drv.h, and focus on the generic driver stuff. BR, Jani. > > Regards, > > Tvrtko > >>> --- >>> drivers/gpu/drm/i915/i915_drv.h | 5 ----- >>> 1 file changed, 5 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h >>> index bfcbe93bd9fe..744c8c4a50fa 100644 >>> --- a/drivers/gpu/drm/i915/i915_drv.h >>> +++ b/drivers/gpu/drm/i915/i915_drv.h >>> @@ -418,11 +418,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) >>> (engine__); \ >>> (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) >>> >>> -#define for_each_uabi_class_engine(engine__, class__, i915__) \ >>> - for ((engine__) = intel_engine_lookup_user((i915__), (class__), 0); \ >>> - (engine__) && (engine__)->uabi_class == (class__); \ >>> - (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) >>> - >>> #define INTEL_INFO(i915) ((i915)->__info) >>> #define RUNTIME_INFO(i915) (&(i915)->__runtime) >>> #define DRIVER_CAPS(i915) (&(i915)->caps) >> -- Jani Nikula, Intel ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] drm/i915: Remove unused for_each_uabi_class_engine @ 2023-11-02 9:24 ` Jani Nikula 0 siblings, 0 replies; 14+ messages in thread From: Jani Nikula @ 2023-11-02 9:24 UTC (permalink / raw) To: Tvrtko Ursulin, Intel-gfx, dri-devel; +Cc: Tvrtko Ursulin On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: > On 01/11/2023 10:06, Jani Nikula wrote: >> On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: >>> From: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >>> >>> Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code") >>> removed some code. >>> >>> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >> >> \o/ >> >> Reviewed-by: Jani Nikula <jani.nikula@intel.com> >> >> Could I persuade you to move for_each_engine(), >> for_each_engine_masked(), rb_to_uabi_engine(), and >> for_each_uabi_engine() to a more suitable header? > > Former to intel_gt.h, but latter a better place is not coming to me. Like: > > diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pm.h b/drivers/gpu/drm/i915/gt/intel_engine_pm.h > index d68675925b79..1d97c435a015 100644 > --- a/drivers/gpu/drm/i915/gt/intel_engine_pm.h > +++ b/drivers/gpu/drm/i915/gt/intel_engine_pm.h > @@ -10,6 +10,7 @@ > #include "i915_request.h" > #include "intel_engine_types.h" > #include "intel_wakeref.h" > +#include "intel_gt.h" > #include "intel_gt_pm.h" > > static inline bool > diff --git a/drivers/gpu/drm/i915/gt/intel_gt.h b/drivers/gpu/drm/i915/gt/intel_gt.h > index 9ffdb05e231e..b0e453e27ea8 100644 > --- a/drivers/gpu/drm/i915/gt/intel_gt.h > +++ b/drivers/gpu/drm/i915/gt/intel_gt.h > @@ -171,6 +171,20 @@ void intel_gt_release_all(struct drm_i915_private *i915); > (id__)++) \ > for_each_if(((gt__) = (i915__)->gt[(id__)])) > > +/* Simple iterator over all initialised engines */ > +#define for_each_engine(engine__, gt__, id__) \ > + for ((id__) = 0; \ > + (id__) < I915_NUM_ENGINES; \ > + (id__)++) \ > + for_each_if ((engine__) = (gt__)->engine[(id__)]) > + > +/* Iterator over subset of engines selected by mask */ > +#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ > + for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ > + (tmp__) ? \ > + ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ > + 0;) > + > void intel_gt_info_print(const struct intel_gt_info *info, > struct drm_printer *p); > > diff --git a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c > index 8f9b874fdc9c..3aa1d014c14d 100644 > --- a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c > +++ b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c > @@ -6,8 +6,8 @@ > > #include <drm/drm_print.h> > > -#include "i915_drv.h" /* for_each_engine! */ > #include "intel_engine.h" > +#include "intel_gt.h" > #include "intel_gt_debugfs.h" > #include "intel_gt_engines_debugfs.h" > > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index 744c8c4a50fa..3feec04a2b1c 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -396,20 +396,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) > return i915->gt[0]; > } > > -/* Simple iterator over all initialised engines */ > -#define for_each_engine(engine__, gt__, id__) \ > - for ((id__) = 0; \ > - (id__) < I915_NUM_ENGINES; \ > - (id__)++) \ > - for_each_if ((engine__) = (gt__)->engine[(id__)]) > - > -/* Iterator over subset of engines selected by mask */ > -#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ > - for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ > - (tmp__) ? \ > - ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ > - 0;) > - > #define rb_to_uabi_engine(rb) \ > rb_entry_safe(rb, struct intel_engine_cs, uabi_node) > > diff --git a/drivers/gpu/drm/i915/selftests/intel_uncore.c b/drivers/gpu/drm/i915/selftests/intel_uncore.c > index 7a5f4adc1b8b..c998f15d505c 100644 > --- a/drivers/gpu/drm/i915/selftests/intel_uncore.c > +++ b/drivers/gpu/drm/i915/selftests/intel_uncore.c > @@ -24,6 +24,8 @@ > > #include "../i915_selftest.h" > > +#include "gt/intel_gt.h" > + > static int intel_fw_table_check(const struct intel_forcewake_range *ranges, > unsigned int num_ranges, > bool is_watertight) > > Beneficial? Yeah, I'd like to have less gem/gt/display in i915_drv.h, and focus on the generic driver stuff. BR, Jani. > > Regards, > > Tvrtko > >>> --- >>> drivers/gpu/drm/i915/i915_drv.h | 5 ----- >>> 1 file changed, 5 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h >>> index bfcbe93bd9fe..744c8c4a50fa 100644 >>> --- a/drivers/gpu/drm/i915/i915_drv.h >>> +++ b/drivers/gpu/drm/i915/i915_drv.h >>> @@ -418,11 +418,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) >>> (engine__); \ >>> (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) >>> >>> -#define for_each_uabi_class_engine(engine__, class__, i915__) \ >>> - for ((engine__) = intel_engine_lookup_user((i915__), (class__), 0); \ >>> - (engine__) && (engine__)->uabi_class == (class__); \ >>> - (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) >>> - >>> #define INTEL_INFO(i915) ((i915)->__info) >>> #define RUNTIME_INFO(i915) (&(i915)->__runtime) >>> #define DRIVER_CAPS(i915) (&(i915)->caps) >> -- Jani Nikula, Intel ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915: Remove unused for_each_uabi_class_engine 2023-11-02 9:24 ` Jani Nikula @ 2023-11-02 9:39 ` Tvrtko Ursulin -1 siblings, 0 replies; 14+ messages in thread From: Tvrtko Ursulin @ 2023-11-02 9:39 UTC (permalink / raw) To: Jani Nikula, Intel-gfx, dri-devel; +Cc: Tvrtko Ursulin On 02/11/2023 09:24, Jani Nikula wrote: > On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: >> On 01/11/2023 10:06, Jani Nikula wrote: >>> On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: >>>> From: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >>>> >>>> Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code") >>>> removed some code. >>>> >>>> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >>> >>> \o/ >>> >>> Reviewed-by: Jani Nikula <jani.nikula@intel.com> >>> >>> Could I persuade you to move for_each_engine(), >>> for_each_engine_masked(), rb_to_uabi_engine(), and >>> for_each_uabi_engine() to a more suitable header? >> >> Former to intel_gt.h, but latter a better place is not coming to me. Like: >> >> diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pm.h b/drivers/gpu/drm/i915/gt/intel_engine_pm.h >> index d68675925b79..1d97c435a015 100644 >> --- a/drivers/gpu/drm/i915/gt/intel_engine_pm.h >> +++ b/drivers/gpu/drm/i915/gt/intel_engine_pm.h >> @@ -10,6 +10,7 @@ >> #include "i915_request.h" >> #include "intel_engine_types.h" >> #include "intel_wakeref.h" >> +#include "intel_gt.h" >> #include "intel_gt_pm.h" >> >> static inline bool >> diff --git a/drivers/gpu/drm/i915/gt/intel_gt.h b/drivers/gpu/drm/i915/gt/intel_gt.h >> index 9ffdb05e231e..b0e453e27ea8 100644 >> --- a/drivers/gpu/drm/i915/gt/intel_gt.h >> +++ b/drivers/gpu/drm/i915/gt/intel_gt.h >> @@ -171,6 +171,20 @@ void intel_gt_release_all(struct drm_i915_private *i915); >> (id__)++) \ >> for_each_if(((gt__) = (i915__)->gt[(id__)])) >> >> +/* Simple iterator over all initialised engines */ >> +#define for_each_engine(engine__, gt__, id__) \ >> + for ((id__) = 0; \ >> + (id__) < I915_NUM_ENGINES; \ >> + (id__)++) \ >> + for_each_if ((engine__) = (gt__)->engine[(id__)]) >> + >> +/* Iterator over subset of engines selected by mask */ >> +#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ >> + for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ >> + (tmp__) ? \ >> + ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ >> + 0;) >> + >> void intel_gt_info_print(const struct intel_gt_info *info, >> struct drm_printer *p); >> >> diff --git a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c >> index 8f9b874fdc9c..3aa1d014c14d 100644 >> --- a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c >> +++ b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c >> @@ -6,8 +6,8 @@ >> >> #include <drm/drm_print.h> >> >> -#include "i915_drv.h" /* for_each_engine! */ >> #include "intel_engine.h" >> +#include "intel_gt.h" >> #include "intel_gt_debugfs.h" >> #include "intel_gt_engines_debugfs.h" >> >> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h >> index 744c8c4a50fa..3feec04a2b1c 100644 >> --- a/drivers/gpu/drm/i915/i915_drv.h >> +++ b/drivers/gpu/drm/i915/i915_drv.h >> @@ -396,20 +396,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) >> return i915->gt[0]; >> } >> >> -/* Simple iterator over all initialised engines */ >> -#define for_each_engine(engine__, gt__, id__) \ >> - for ((id__) = 0; \ >> - (id__) < I915_NUM_ENGINES; \ >> - (id__)++) \ >> - for_each_if ((engine__) = (gt__)->engine[(id__)]) >> - >> -/* Iterator over subset of engines selected by mask */ >> -#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ >> - for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ >> - (tmp__) ? \ >> - ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ >> - 0;) >> - >> #define rb_to_uabi_engine(rb) \ >> rb_entry_safe(rb, struct intel_engine_cs, uabi_node) >> >> diff --git a/drivers/gpu/drm/i915/selftests/intel_uncore.c b/drivers/gpu/drm/i915/selftests/intel_uncore.c >> index 7a5f4adc1b8b..c998f15d505c 100644 >> --- a/drivers/gpu/drm/i915/selftests/intel_uncore.c >> +++ b/drivers/gpu/drm/i915/selftests/intel_uncore.c >> @@ -24,6 +24,8 @@ >> >> #include "../i915_selftest.h" >> >> +#include "gt/intel_gt.h" >> + >> static int intel_fw_table_check(const struct intel_forcewake_range *ranges, >> unsigned int num_ranges, >> bool is_watertight) >> >> Beneficial? > > Yeah, I'd like to have less gem/gt/display in i915_drv.h, and focus on > the generic driver stuff. Okay, sent. For for_each_uabi_engine&co problem is how do we define what is what. Historically we weren't saying that everything not display is GEM, and uabi engines are not per GT. Even though engines themselves are, just that historically we were putting stuff into GT which operates on a GT. Perhaps with factoring out the display goal the requirements change a bit and old boundaries/placement rules need tweaking. Or the sore point will go away as/when display code is better isolated (less hacks, more interfaces) from both i915 and xe. Anyway, for now I don't see a nice and easy place to move them to, which wouldn't be wrong from some aspect. Regards, Tvrtko ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] drm/i915: Remove unused for_each_uabi_class_engine @ 2023-11-02 9:39 ` Tvrtko Ursulin 0 siblings, 0 replies; 14+ messages in thread From: Tvrtko Ursulin @ 2023-11-02 9:39 UTC (permalink / raw) To: Jani Nikula, Intel-gfx, dri-devel; +Cc: Tvrtko Ursulin On 02/11/2023 09:24, Jani Nikula wrote: > On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: >> On 01/11/2023 10:06, Jani Nikula wrote: >>> On Wed, 01 Nov 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: >>>> From: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >>>> >>>> Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code") >>>> removed some code. >>>> >>>> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >>> >>> \o/ >>> >>> Reviewed-by: Jani Nikula <jani.nikula@intel.com> >>> >>> Could I persuade you to move for_each_engine(), >>> for_each_engine_masked(), rb_to_uabi_engine(), and >>> for_each_uabi_engine() to a more suitable header? >> >> Former to intel_gt.h, but latter a better place is not coming to me. Like: >> >> diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pm.h b/drivers/gpu/drm/i915/gt/intel_engine_pm.h >> index d68675925b79..1d97c435a015 100644 >> --- a/drivers/gpu/drm/i915/gt/intel_engine_pm.h >> +++ b/drivers/gpu/drm/i915/gt/intel_engine_pm.h >> @@ -10,6 +10,7 @@ >> #include "i915_request.h" >> #include "intel_engine_types.h" >> #include "intel_wakeref.h" >> +#include "intel_gt.h" >> #include "intel_gt_pm.h" >> >> static inline bool >> diff --git a/drivers/gpu/drm/i915/gt/intel_gt.h b/drivers/gpu/drm/i915/gt/intel_gt.h >> index 9ffdb05e231e..b0e453e27ea8 100644 >> --- a/drivers/gpu/drm/i915/gt/intel_gt.h >> +++ b/drivers/gpu/drm/i915/gt/intel_gt.h >> @@ -171,6 +171,20 @@ void intel_gt_release_all(struct drm_i915_private *i915); >> (id__)++) \ >> for_each_if(((gt__) = (i915__)->gt[(id__)])) >> >> +/* Simple iterator over all initialised engines */ >> +#define for_each_engine(engine__, gt__, id__) \ >> + for ((id__) = 0; \ >> + (id__) < I915_NUM_ENGINES; \ >> + (id__)++) \ >> + for_each_if ((engine__) = (gt__)->engine[(id__)]) >> + >> +/* Iterator over subset of engines selected by mask */ >> +#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ >> + for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ >> + (tmp__) ? \ >> + ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ >> + 0;) >> + >> void intel_gt_info_print(const struct intel_gt_info *info, >> struct drm_printer *p); >> >> diff --git a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c >> index 8f9b874fdc9c..3aa1d014c14d 100644 >> --- a/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c >> +++ b/drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.c >> @@ -6,8 +6,8 @@ >> >> #include <drm/drm_print.h> >> >> -#include "i915_drv.h" /* for_each_engine! */ >> #include "intel_engine.h" >> +#include "intel_gt.h" >> #include "intel_gt_debugfs.h" >> #include "intel_gt_engines_debugfs.h" >> >> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h >> index 744c8c4a50fa..3feec04a2b1c 100644 >> --- a/drivers/gpu/drm/i915/i915_drv.h >> +++ b/drivers/gpu/drm/i915/i915_drv.h >> @@ -396,20 +396,6 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915) >> return i915->gt[0]; >> } >> >> -/* Simple iterator over all initialised engines */ >> -#define for_each_engine(engine__, gt__, id__) \ >> - for ((id__) = 0; \ >> - (id__) < I915_NUM_ENGINES; \ >> - (id__)++) \ >> - for_each_if ((engine__) = (gt__)->engine[(id__)]) >> - >> -/* Iterator over subset of engines selected by mask */ >> -#define for_each_engine_masked(engine__, gt__, mask__, tmp__) \ >> - for ((tmp__) = (mask__) & (gt__)->info.engine_mask; \ >> - (tmp__) ? \ >> - ((engine__) = (gt__)->engine[__mask_next_bit(tmp__)]), 1 : \ >> - 0;) >> - >> #define rb_to_uabi_engine(rb) \ >> rb_entry_safe(rb, struct intel_engine_cs, uabi_node) >> >> diff --git a/drivers/gpu/drm/i915/selftests/intel_uncore.c b/drivers/gpu/drm/i915/selftests/intel_uncore.c >> index 7a5f4adc1b8b..c998f15d505c 100644 >> --- a/drivers/gpu/drm/i915/selftests/intel_uncore.c >> +++ b/drivers/gpu/drm/i915/selftests/intel_uncore.c >> @@ -24,6 +24,8 @@ >> >> #include "../i915_selftest.h" >> >> +#include "gt/intel_gt.h" >> + >> static int intel_fw_table_check(const struct intel_forcewake_range *ranges, >> unsigned int num_ranges, >> bool is_watertight) >> >> Beneficial? > > Yeah, I'd like to have less gem/gt/display in i915_drv.h, and focus on > the generic driver stuff. Okay, sent. For for_each_uabi_engine&co problem is how do we define what is what. Historically we weren't saying that everything not display is GEM, and uabi engines are not per GT. Even though engines themselves are, just that historically we were putting stuff into GT which operates on a GT. Perhaps with factoring out the display goal the requirements change a bit and old boundaries/placement rules need tweaking. Or the sore point will go away as/when display code is better isolated (less hacks, more interfaces) from both i915 and xe. Anyway, for now I don't see a nice and easy place to move them to, which wouldn't be wrong from some aspect. Regards, Tvrtko ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Remove unused for_each_uabi_class_engine 2023-11-01 10:01 ` Tvrtko Ursulin (?) (?) @ 2023-11-01 10:53 ` Patchwork -1 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2023-11-01 10:53 UTC (permalink / raw) To: Tvrtko Ursulin; +Cc: intel-gfx == Series Details == Series: drm/i915: Remove unused for_each_uabi_class_engine URL : https://patchwork.freedesktop.org/series/125846/ State : warning == Summary == Error: dim checkpatch failed 04f930dd6fea drm/i915: Remove unused for_each_uabi_class_engine -:6: WARNING:COMMIT_LOG_LONG_LINE: Prefer a maximum 75 chars per line (possible unwrapped commit description?) #6: Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code") -:6: ERROR:GIT_COMMIT_ID: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'commit 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code")' #6: Unused macro after 99919be74aa3 ("drm/i915/gem: Zap the i915_gem_object_blt code") total: 1 errors, 1 warnings, 0 checks, 11 lines checked ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: Remove unused for_each_uabi_class_engine 2023-11-01 10:01 ` Tvrtko Ursulin ` (2 preceding siblings ...) (?) @ 2023-11-01 10:53 ` Patchwork -1 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2023-11-01 10:53 UTC (permalink / raw) To: Tvrtko Ursulin; +Cc: intel-gfx == Series Details == Series: drm/i915: Remove unused for_each_uabi_class_engine URL : https://patchwork.freedesktop.org/series/125846/ State : warning == Summary == Error: dim sparse failed Sparse version: v0.6.2 Fast mode used, each commit won't be checked separately. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Remove unused for_each_uabi_class_engine 2023-11-01 10:01 ` Tvrtko Ursulin ` (3 preceding siblings ...) (?) @ 2023-11-01 11:06 ` Patchwork -1 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2023-11-01 11:06 UTC (permalink / raw) To: Tvrtko Ursulin; +Cc: intel-gfx [-- Attachment #1: Type: text/plain, Size: 13804 bytes --] == Series Details == Series: drm/i915: Remove unused for_each_uabi_class_engine URL : https://patchwork.freedesktop.org/series/125846/ State : success == Summary == CI Bug Log - changes from CI_DRM_13824 -> Patchwork_125846v1 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/index.html Participating hosts (37 -> 35) ------------------------------ Additional (3): fi-kbl-soraka bat-dg2-8 bat-mtlp-8 Missing (5): bat-dg1-5 bat-dg2-9 fi-snb-2520m fi-hsw-4770 bat-atsm-1 Known issues ------------ Here are the changes found in Patchwork_125846v1 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@debugfs_test@basic-hwmon: - bat-mtlp-8: NOTRUN -> [SKIP][1] ([i915#9318]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@debugfs_test@basic-hwmon.html * igt@gem_huc_copy@huc-copy: - fi-kbl-soraka: NOTRUN -> [SKIP][2] ([fdo#109271] / [i915#2190]) [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/fi-kbl-soraka/igt@gem_huc_copy@huc-copy.html * igt@gem_lmem_swapping@basic: - fi-kbl-soraka: NOTRUN -> [SKIP][3] ([fdo#109271] / [i915#4613]) +3 other tests skip [3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/fi-kbl-soraka/igt@gem_lmem_swapping@basic.html * igt@gem_lmem_swapping@verify-random: - bat-mtlp-8: NOTRUN -> [SKIP][4] ([i915#4613]) +3 other tests skip [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@gem_lmem_swapping@verify-random.html * igt@gem_mmap@basic: - bat-mtlp-8: NOTRUN -> [SKIP][5] ([i915#4083]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@gem_mmap@basic.html - bat-dg2-8: NOTRUN -> [SKIP][6] ([i915#4083]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@gem_mmap@basic.html * igt@gem_mmap_gtt@basic: - bat-mtlp-8: NOTRUN -> [SKIP][7] ([i915#4077]) +3 other tests skip [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@gem_mmap_gtt@basic.html - bat-dg2-8: NOTRUN -> [SKIP][8] ([i915#4077]) +2 other tests skip [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@gem_mmap_gtt@basic.html * igt@gem_render_tiled_blits@basic: - bat-mtlp-8: NOTRUN -> [SKIP][9] ([i915#4079]) +1 other test skip [9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@gem_render_tiled_blits@basic.html * igt@gem_tiled_pread_basic: - bat-dg2-8: NOTRUN -> [SKIP][10] ([i915#4079]) +1 other test skip [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@gem_tiled_pread_basic.html * igt@i915_pm_rps@basic-api: - bat-mtlp-8: NOTRUN -> [SKIP][11] ([i915#6621]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@i915_pm_rps@basic-api.html - bat-dg2-8: NOTRUN -> [SKIP][12] ([i915#6621]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@i915_pm_rps@basic-api.html * igt@i915_selftest@live@gt_pm: - fi-kbl-soraka: NOTRUN -> [DMESG-FAIL][13] ([i915#1886]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/fi-kbl-soraka/igt@i915_selftest@live@gt_pm.html * igt@i915_suspend@basic-s3-without-i915: - bat-mtlp-8: NOTRUN -> [SKIP][14] ([i915#6645]) [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@i915_suspend@basic-s3-without-i915.html - bat-dg2-8: NOTRUN -> [SKIP][15] ([i915#6645]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@i915_suspend@basic-s3-without-i915.html * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy: - bat-mtlp-8: NOTRUN -> [SKIP][16] ([i915#5190]) [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html - bat-dg2-8: NOTRUN -> [SKIP][17] ([i915#5190]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html * igt@kms_addfb_basic@basic-y-tiled-legacy: - bat-mtlp-8: NOTRUN -> [SKIP][18] ([i915#4212]) +8 other tests skip [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@kms_addfb_basic@basic-y-tiled-legacy.html - bat-dg2-8: NOTRUN -> [SKIP][19] ([i915#4215] / [i915#5190]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@kms_addfb_basic@basic-y-tiled-legacy.html * igt@kms_addfb_basic@framebuffer-vs-set-tiling: - bat-dg2-8: NOTRUN -> [SKIP][20] ([i915#4212]) +6 other tests skip [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@kms_addfb_basic@framebuffer-vs-set-tiling.html * igt@kms_addfb_basic@tile-pitch-mismatch: - bat-dg2-8: NOTRUN -> [SKIP][21] ([i915#4212] / [i915#5608]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@kms_addfb_basic@tile-pitch-mismatch.html * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy: - bat-mtlp-8: NOTRUN -> [SKIP][22] ([i915#4213]) +1 other test skip [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html - bat-dg2-8: NOTRUN -> [SKIP][23] ([i915#4103] / [i915#4213] / [i915#5608]) +1 other test skip [23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html * igt@kms_dsc@dsc-basic: - fi-kbl-soraka: NOTRUN -> [SKIP][24] ([fdo#109271]) +9 other tests skip [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/fi-kbl-soraka/igt@kms_dsc@dsc-basic.html - bat-mtlp-8: NOTRUN -> [SKIP][25] ([i915#3555] / [i915#3840] / [i915#9159]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@kms_dsc@dsc-basic.html * igt@kms_flip@basic-flip-vs-modeset@d-dp5: - bat-adlp-11: [PASS][26] -> [DMESG-WARN][27] ([i915#6868]) [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13824/bat-adlp-11/igt@kms_flip@basic-flip-vs-modeset@d-dp5.html [27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-adlp-11/igt@kms_flip@basic-flip-vs-modeset@d-dp5.html * igt@kms_force_connector_basic@force-load-detect: - bat-mtlp-8: NOTRUN -> [SKIP][28] ([fdo#109285]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@kms_force_connector_basic@force-load-detect.html - bat-dg2-8: NOTRUN -> [SKIP][29] ([fdo#109285]) [29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@kms_force_connector_basic@force-load-detect.html * igt@kms_force_connector_basic@prune-stale-modes: - bat-mtlp-8: NOTRUN -> [SKIP][30] ([i915#5274]) [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@kms_force_connector_basic@prune-stale-modes.html - bat-dg2-8: NOTRUN -> [SKIP][31] ([i915#5274]) [31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@kms_force_connector_basic@prune-stale-modes.html * igt@kms_psr@cursor_plane_move: - bat-dg2-8: NOTRUN -> [SKIP][32] ([i915#1072]) +3 other tests skip [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@kms_psr@cursor_plane_move.html * igt@kms_setmode@basic-clone-single-crtc: - bat-mtlp-8: NOTRUN -> [SKIP][33] ([i915#3555] / [i915#8809]) [33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@kms_setmode@basic-clone-single-crtc.html - bat-dg2-8: NOTRUN -> [SKIP][34] ([i915#3555] / [i915#4098]) [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@kms_setmode@basic-clone-single-crtc.html * igt@prime_vgem@basic-fence-flip: - bat-dg2-8: NOTRUN -> [SKIP][35] ([i915#3708]) [35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@prime_vgem@basic-fence-flip.html * igt@prime_vgem@basic-fence-mmap: - bat-dg2-8: NOTRUN -> [SKIP][36] ([i915#3708] / [i915#4077]) +1 other test skip [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@prime_vgem@basic-fence-mmap.html - bat-mtlp-8: NOTRUN -> [SKIP][37] ([i915#3708] / [i915#4077]) +1 other test skip [37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@prime_vgem@basic-fence-mmap.html * igt@prime_vgem@basic-fence-read: - bat-mtlp-8: NOTRUN -> [SKIP][38] ([i915#3708]) +2 other tests skip [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-mtlp-8/igt@prime_vgem@basic-fence-read.html * igt@prime_vgem@basic-write: - bat-dg2-8: NOTRUN -> [SKIP][39] ([i915#3291] / [i915#3708]) +2 other tests skip [39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-dg2-8/igt@prime_vgem@basic-write.html #### Possible fixes #### * igt@kms_flip@basic-flip-vs-wf_vblank@d-dp5: - bat-adlp-11: [DMESG-WARN][40] ([i915#6868]) -> [PASS][41] [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13824/bat-adlp-11/igt@kms_flip@basic-flip-vs-wf_vblank@d-dp5.html [41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-adlp-11/igt@kms_flip@basic-flip-vs-wf_vblank@d-dp5.html * igt@kms_pipe_crc_basic@hang-read-crc@pipe-c-dp-5: - bat-adlp-11: [DMESG-FAIL][42] ([i915#6868]) -> [PASS][43] [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13824/bat-adlp-11/igt@kms_pipe_crc_basic@hang-read-crc@pipe-c-dp-5.html [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-adlp-11/igt@kms_pipe_crc_basic@hang-read-crc@pipe-c-dp-5.html * igt@kms_pipe_crc_basic@hang-read-crc@pipe-d-dp-5: - bat-adlp-11: [FAIL][44] ([i915#9047]) -> [PASS][45] [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13824/bat-adlp-11/igt@kms_pipe_crc_basic@hang-read-crc@pipe-d-dp-5.html [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-adlp-11/igt@kms_pipe_crc_basic@hang-read-crc@pipe-d-dp-5.html * igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-a-dp-5: - bat-adlp-11: [ABORT][46] ([i915#8668]) -> [PASS][47] [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13824/bat-adlp-11/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-a-dp-5.html [47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/bat-adlp-11/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-a-dp-5.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285 [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072 [i915#1886]: https://gitlab.freedesktop.org/drm/intel/issues/1886 [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190 [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291 [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546 [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555 [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708 [i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840 [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077 [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079 [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083 [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098 [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103 [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212 [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213 [i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215 [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613 [i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190 [i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274 [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354 [i915#5608]: https://gitlab.freedesktop.org/drm/intel/issues/5608 [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621 [i915#6645]: https://gitlab.freedesktop.org/drm/intel/issues/6645 [i915#6868]: https://gitlab.freedesktop.org/drm/intel/issues/6868 [i915#8668]: https://gitlab.freedesktop.org/drm/intel/issues/8668 [i915#8809]: https://gitlab.freedesktop.org/drm/intel/issues/8809 [i915#9047]: https://gitlab.freedesktop.org/drm/intel/issues/9047 [i915#9159]: https://gitlab.freedesktop.org/drm/intel/issues/9159 [i915#9318]: https://gitlab.freedesktop.org/drm/intel/issues/9318 Build changes ------------- * Linux: CI_DRM_13824 -> Patchwork_125846v1 CI-20190529: 20190529 CI_DRM_13824: 4e566d1e4ccb2f7caeb51f5d6cdaa647e641fb45 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_7568: 9e3c3791e7e0297f277211b19a3388a1ee87f3d0 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git Patchwork_125846v1: 4e566d1e4ccb2f7caeb51f5d6cdaa647e641fb45 @ git://anongit.freedesktop.org/gfx-ci/linux ### Linux commits e9dafb47192d drm/i915: Remove unused for_each_uabi_class_engine == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_125846v1/index.html [-- Attachment #2: Type: text/html, Size: 17022 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Intel-gfx] ✗ Fi.CI.BUILD: failure for drm/i915: Remove unused for_each_uabi_class_engine (rev2) 2023-11-01 10:01 ` Tvrtko Ursulin ` (4 preceding siblings ...) (?) @ 2023-11-01 15:54 ` Patchwork -1 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2023-11-01 15:54 UTC (permalink / raw) To: Tvrtko Ursulin; +Cc: intel-gfx == Series Details == Series: drm/i915: Remove unused for_each_uabi_class_engine (rev2) URL : https://patchwork.freedesktop.org/series/125846/ State : failure == Summary == Error: patch https://patchwork.freedesktop.org/api/1.0/series/125846/revisions/2/mbox/ not applied Applying: drm/i915: Remove unused for_each_uabi_class_engine error: sha1 information is lacking or useless (drivers/gpu/drm/i915/i915_drv.h). error: could not build fake ancestor hint: Use 'git am --show-current-patch=diff' to see the failed patch Patch failed at 0001 drm/i915: Remove unused for_each_uabi_class_engine When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort". Build failed, no error log produced ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2023-11-02 9:39 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-11-01 10:01 [Intel-gfx] [PATCH] drm/i915: Remove unused for_each_uabi_class_engine Tvrtko Ursulin 2023-11-01 10:01 ` Tvrtko Ursulin 2023-11-01 10:06 ` [Intel-gfx] " Jani Nikula 2023-11-01 10:06 ` Jani Nikula 2023-11-01 14:23 ` [Intel-gfx] " Tvrtko Ursulin 2023-11-01 14:23 ` Tvrtko Ursulin 2023-11-02 9:24 ` [Intel-gfx] " Jani Nikula 2023-11-02 9:24 ` Jani Nikula 2023-11-02 9:39 ` [Intel-gfx] " Tvrtko Ursulin 2023-11-02 9:39 ` Tvrtko Ursulin 2023-11-01 10:53 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for " Patchwork 2023-11-01 10:53 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork 2023-11-01 11:06 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork 2023-11-01 15:54 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for drm/i915: Remove unused for_each_uabi_class_engine (rev2) Patchwork
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.