* [RFC PATCH 0/7] kernel-hacking: introduce CONFIG_NO_AUTO_INLINE
@ 2025-04-11 10:51 Chen Linxuan
[not found] ` <20250411105459.90782-1-chenlinxuan@uniontech.com>
0 siblings, 1 reply; 5+ messages in thread
From: Chen Linxuan @ 2025-04-11 10:51 UTC (permalink / raw)
To: Masahiro Yamada, Nathan Chancellor, Nicolas Schier, Peter Huewe,
Jarkko Sakkinen, Jason Gunthorpe, Jani Nikula, Joonas Lahtinen,
Rodrigo Vivi, Tvrtko Ursulin, David Airlie, Simona Vetter,
Chengchang Tang, Junxian Huang, Leon Romanovsky, Keith Busch,
Jens Axboe, Christoph Hellwig, Sagi Grimberg, Yishai Hadas,
Shameer Kolothum, Kevin Tian, Alex Williamson, Andrew Morton,
Nick Desaulniers, Bill Wendling, Justin Stitt, Chen Linxuan
Cc: linux-kbuild, linux-kernel, linux-integrity, intel-gfx, dri-devel,
linux-rdma, linux-nvme, kvm, virtualization, linux-mm, llvm
This series introduces a new kernel configuration option NO_AUTO_INLINE,
which can be used to disable the automatic inlining of functions.
This will allow the function tracer to trace more functions
because it only traces functions that the compiler has not inlined.
Previous discussions can be found here:
Link: https://lore.kernel.org/all/20181028130945.23581-3-changbin.du@gmail.com/
Chen Linxuan (2):
drm/i915/pxp: fix undefined reference to
`intel_pxp_gsccs_is_ready_for_sessions'
RDMA/hns: initialize db in update_srq_db()
Winston Wen (5):
nvme: add __always_inline for nvme_pci_npages_prp
mm: add __always_inline for page_contains_unaccepted
vfio/virtio: add __always_inline for virtiovf_get_device_config_size
tpm: add __always_inline for tpm_is_hwrng_enabled
lib/Kconfig.debug: introduce CONFIG_NO_AUTO_INLINE
Makefile | 6 ++++++
drivers/char/tpm/tpm-chip.c | 2 +-
drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.h | 8 ++++++--
drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 2 +-
drivers/nvme/host/pci.c | 2 +-
drivers/vfio/pci/virtio/legacy_io.c | 2 +-
lib/Kconfig.debug | 15 +++++++++++++++
mm/page_alloc.c | 2 +-
8 files changed, 32 insertions(+), 7 deletions(-)
--
2.48.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [RFC PATCH 4/7] drm/i915/pxp: fix undefined reference to `intel_pxp_gsccs_is_ready_for_sessions'
[not found] ` <20250411105459.90782-1-chenlinxuan@uniontech.com>
@ 2025-04-11 10:54 ` Chen Linxuan
2025-04-15 7:59 ` Jani Nikula
0 siblings, 1 reply; 5+ messages in thread
From: Chen Linxuan @ 2025-04-11 10:54 UTC (permalink / raw)
To: Jani Nikula, Joonas Lahtinen, Rodrigo Vivi, Tvrtko Ursulin,
David Airlie, Simona Vetter, Chen Linxuan
Cc: intel-gfx, dri-devel, linux-kernel
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"
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@uniontech.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__ */
--
2.48.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [RFC PATCH 4/7] drm/i915/pxp: fix undefined reference to `intel_pxp_gsccs_is_ready_for_sessions'
2025-04-11 10:54 ` [RFC PATCH 4/7] drm/i915/pxp: fix undefined reference to `intel_pxp_gsccs_is_ready_for_sessions' Chen Linxuan
@ 2025-04-15 7:59 ` Jani Nikula
2025-04-15 8:09 ` Chen Linxuan
0 siblings, 1 reply; 5+ messages in thread
From: Jani Nikula @ 2025-04-15 7:59 UTC (permalink / raw)
To: Chen Linxuan, Joonas Lahtinen, Rodrigo Vivi, Tvrtko Ursulin,
David Airlie, Simona Vetter, Chen Linxuan
Cc: intel-gfx, dri-devel, linux-kernel, Alan Previn,
Daniele Ceraolo Spurio, Radhakrishna Sripada
On Fri, 11 Apr 2025, Chen Linxuan <chenlinxuan@uniontech.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@intel.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@uniontech.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
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [RFC PATCH 4/7] drm/i915/pxp: fix undefined reference to `intel_pxp_gsccs_is_ready_for_sessions'
2025-04-15 7:59 ` Jani Nikula
@ 2025-04-15 8:09 ` Chen Linxuan
2025-04-15 9:07 ` Jani Nikula
0 siblings, 1 reply; 5+ messages in thread
From: Chen Linxuan @ 2025-04-15 8:09 UTC (permalink / raw)
To: Jani Nikula
Cc: Chen Linxuan, Joonas Lahtinen, Rodrigo Vivi, Tvrtko Ursulin,
David Airlie, Simona Vetter, intel-gfx, dri-devel, linux-kernel,
Alan Previn, Daniele Ceraolo Spurio, Radhakrishna Sripada
Jani Nikula <jani.nikula@linux.intel.com> 于2025年4月15日周二 15:59写道:
>
> On Fri, 11 Apr 2025, Chen Linxuan <chenlinxuan@uniontech.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@intel.com>
>
> But how do you want this merged?
>
As patch 5 has been merged into rdma-next, I think it's OK to merge
this single patch into your tree.
>
> 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@uniontech.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
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [RFC PATCH 4/7] drm/i915/pxp: fix undefined reference to `intel_pxp_gsccs_is_ready_for_sessions'
2025-04-15 8:09 ` Chen Linxuan
@ 2025-04-15 9:07 ` Jani Nikula
0 siblings, 0 replies; 5+ messages in thread
From: Jani Nikula @ 2025-04-15 9:07 UTC (permalink / raw)
To: Chen Linxuan
Cc: Chen Linxuan, Joonas Lahtinen, Rodrigo Vivi, Tvrtko Ursulin,
David Airlie, Simona Vetter, intel-gfx, dri-devel, linux-kernel,
Alan Previn, Daniele Ceraolo Spurio
On Tue, 15 Apr 2025, Chen Linxuan <chenlinxuan@uniontech.com> wrote:
> Jani Nikula <jani.nikula@linux.intel.com> 于2025年4月15日周二 15:59写道:
>>
>> On Fri, 11 Apr 2025, Chen Linxuan <chenlinxuan@uniontech.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@intel.com>
>>
>> But how do you want this merged?
>>
>
> As patch 5 has been merged into rdma-next, I think it's OK to merge
> this single patch into your tree.
Thanks. I amended the commit message a little, and resent this to
intel-gfx [1], and will merge it via drm-intel-next.
BR,
Jani.
[1] https://lore.kernel.org/r/20250415090616.2649889-1-jani.nikula@intel.com
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2025-04-15 10:53 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-11 10:51 [RFC PATCH 0/7] kernel-hacking: introduce CONFIG_NO_AUTO_INLINE Chen Linxuan
[not found] ` <20250411105459.90782-1-chenlinxuan@uniontech.com>
2025-04-11 10:54 ` [RFC PATCH 4/7] drm/i915/pxp: fix undefined reference to `intel_pxp_gsccs_is_ready_for_sessions' Chen Linxuan
2025-04-15 7:59 ` Jani Nikula
2025-04-15 8:09 ` Chen Linxuan
2025-04-15 9:07 ` Jani Nikula
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).