[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87sem9svmn.fsf@intel.com>
Date: Tue, 15 Apr 2025 10:59:28 +0300
From: Jani Nikula <jani.nikula@...ux.intel.com>
To: Chen Linxuan <chenlinxuan@...ontech.com>, Joonas Lahtinen
<joonas.lahtinen@...ux.intel.com>, Rodrigo Vivi <rodrigo.vivi@...el.com>,
Tvrtko Ursulin <tursulin@...ulin.net>, David Airlie <airlied@...il.com>,
Simona Vetter <simona@...ll.ch>, Chen Linxuan <chenlinxuan@...ontech.com>
Cc: intel-gfx@...ts.freedesktop.org, dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org, Alan Previn
<alan.previn.teres.alexis@...el.com>, Daniele Ceraolo Spurio
<daniele.ceraolospurio@...el.com>, Radhakrishna Sripada
<radhakrishna.sripada@...el.com>
Subject: Re: [RFC PATCH 4/7] drm/i915/pxp: fix undefined reference to
`intel_pxp_gsccs_is_ready_for_sessions'
On Fri, 11 Apr 2025, Chen Linxuan <chenlinxuan@...ontech.com> wrote:
> On x86_64 with gcc version 13.3.0, I compile kernel with:
>
> make defconfig
> ./scripts/kconfig/merge_config.sh .config <(
> echo CONFIG_COMPILE_TEST=y
> )
> make KCFLAGS="-fno-inline-functions -fno-inline-small-functions -fno-inline-functions-called-once"
The change looks good, but I'm guessing the real explanation is that you
have CONFIG_DRM_I915_PXP=n and that appears to be broken.
Fixes: 99afb7cc8c44 ("drm/i915/pxp: Add ARB session creation and cleanup")
Reviewed-by: Jani Nikula <jani.nikula@...el.com>
But how do you want this merged?
BR,
Jani.
>
> Then I get a linker error:
>
> ld: vmlinux.o: in function `pxp_fw_dependencies_completed':
> kintel_pxp.c:(.text+0x95728f): undefined reference to `intel_pxp_gsccs_is_ready_for_sessions'
>
> Signed-off-by: Chen Linxuan <chenlinxuan@...ontech.com>
> ---
> drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.h | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.h b/drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.h
> index 9aae779c4da3..4969d3de2bac 100644
> --- a/drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.h
> +++ b/drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.h
> @@ -23,6 +23,7 @@ int intel_pxp_gsccs_init(struct intel_pxp *pxp);
>
> int intel_pxp_gsccs_create_session(struct intel_pxp *pxp, int arb_session_id);
> void intel_pxp_gsccs_end_arb_fw_session(struct intel_pxp *pxp, u32 arb_session_id);
> +bool intel_pxp_gsccs_is_ready_for_sessions(struct intel_pxp *pxp);
>
> #else
> static inline void intel_pxp_gsccs_fini(struct intel_pxp *pxp)
> @@ -34,8 +35,11 @@ static inline int intel_pxp_gsccs_init(struct intel_pxp *pxp)
> return 0;
> }
>
> -#endif
> +static inline bool intel_pxp_gsccs_is_ready_for_sessions(struct intel_pxp *pxp)
> +{
> + return false;
> +}
>
> -bool intel_pxp_gsccs_is_ready_for_sessions(struct intel_pxp *pxp);
> +#endif
>
> #endif /*__INTEL_PXP_GSCCS_H__ */
--
Jani Nikula, Intel
Powered by blists - more mailing lists