Message ID | 20200516023545.3332334-1-natechancellor@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915: Mark check_shadow_context_ppgtt as maybe unused | expand |
On 2020.05.15 19:35:45 -0700, Nathan Chancellor wrote: > When CONFIG_DRM_I915_DEBUG_GEM is not set, clang warns: > > drivers/gpu/drm/i915/gvt/scheduler.c:884:1: warning: function > 'check_shadow_context_ppgtt' is not needed and will not be emitted > [-Wunneeded-internal-declaration] > check_shadow_context_ppgtt(struct execlist_ring_context *c, struct > intel_vgpu_mm *m) > ^ > 1 warning generated. > > This warning is similar to -Wunused-function but rather than warning > that the function is completely unused, it warns that it is used in some > expression within the file but that expression will be evaluated to a > constant or be optimized away in the final assembly, essentially making > it appeared used but really isn't. Usually, this happens when a function > or variable is only used in sizeof, where it will appear to be used but > will be evaluated at compile time and not be required to be emitted. > > In this case, the function is only used in GEM_BUG_ON, which is defined > as BUILD_BUG_ON_INVALID, which intentionally follows this pattern. To > fix this warning, add __maybe_unused to make it clear that this is > intentional depending on the configuration. > > Fixes: bec3df930fbd ("drm/i915/gvt: Support PPGTT table load command") > Link: https://github.com/ClangBuiltLinux/linux/issues/1027 > Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> > --- > drivers/gpu/drm/i915/gvt/scheduler.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/gvt/scheduler.c b/drivers/gpu/drm/i915/gvt/scheduler.c > index f776c92de8d7..0fb1df71c637 100644 > --- a/drivers/gpu/drm/i915/gvt/scheduler.c > +++ b/drivers/gpu/drm/i915/gvt/scheduler.c > @@ -880,7 +880,7 @@ static void update_guest_pdps(struct intel_vgpu *vgpu, > gpa + i * 8, &pdp[7 - i], 4); > } > > -static bool > +static __maybe_unused bool > check_shadow_context_ppgtt(struct execlist_ring_context *c, struct intel_vgpu_mm *m) > { > if (m->ppgtt_mm.root_entry_type == GTT_TYPE_PPGTT_ROOT_L4_ENTRY) { > > base-commit: bdecf38f228bcca73b31ada98b5b7ba1215eb9c9 Thanks for the fix! Acked-by: Zhenyu Wang <zhenyuw@linux.intel.com> I'll pick up for gvt-next-fixes pull.
diff --git a/drivers/gpu/drm/i915/gvt/scheduler.c b/drivers/gpu/drm/i915/gvt/scheduler.c index f776c92de8d7..0fb1df71c637 100644 --- a/drivers/gpu/drm/i915/gvt/scheduler.c +++ b/drivers/gpu/drm/i915/gvt/scheduler.c @@ -880,7 +880,7 @@ static void update_guest_pdps(struct intel_vgpu *vgpu, gpa + i * 8, &pdp[7 - i], 4); } -static bool +static __maybe_unused bool check_shadow_context_ppgtt(struct execlist_ring_context *c, struct intel_vgpu_mm *m) { if (m->ppgtt_mm.root_entry_type == GTT_TYPE_PPGTT_ROOT_L4_ENTRY) {
When CONFIG_DRM_I915_DEBUG_GEM is not set, clang warns: drivers/gpu/drm/i915/gvt/scheduler.c:884:1: warning: function 'check_shadow_context_ppgtt' is not needed and will not be emitted [-Wunneeded-internal-declaration] check_shadow_context_ppgtt(struct execlist_ring_context *c, struct intel_vgpu_mm *m) ^ 1 warning generated. This warning is similar to -Wunused-function but rather than warning that the function is completely unused, it warns that it is used in some expression within the file but that expression will be evaluated to a constant or be optimized away in the final assembly, essentially making it appeared used but really isn't. Usually, this happens when a function or variable is only used in sizeof, where it will appear to be used but will be evaluated at compile time and not be required to be emitted. In this case, the function is only used in GEM_BUG_ON, which is defined as BUILD_BUG_ON_INVALID, which intentionally follows this pattern. To fix this warning, add __maybe_unused to make it clear that this is intentional depending on the configuration. Fixes: bec3df930fbd ("drm/i915/gvt: Support PPGTT table load command") Link: https://github.com/ClangBuiltLinux/linux/issues/1027 Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> --- drivers/gpu/drm/i915/gvt/scheduler.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) base-commit: bdecf38f228bcca73b31ada98b5b7ba1215eb9c9