Re: [PATCH] tracing: fprobe: Remove __packed from generic __fprobe_header

From: Google

Date: Mon Jun 22 2026 - 00:57:10 EST


On Wed, 10 Jun 2026 11:20:24 +0200
"Markus Schneider-Pargmann" <msp@xxxxxxxxxxxx> wrote:

> Hi Masami,
>
> On Wed Jun 10, 2026 at 10:17 AM CEST, Masami Hiramatsu wrote:
> > Hi Markus,
> >
> > Thanks for ping me.
> >
> > On Tue, 28 Apr 2026 10:30:29 +0200
> > "Markus Schneider-Pargmann (The Capable Hub)" <msp@xxxxxxxxxxxx> wrote:
> >
> >> fp pointer and unsigned long have the same size on all relevant
> >> architectures that build Linux. Furthermore this struct is only used in
> >> architectures that do not set ARCH_DEFINE_ENCODE_FPROBE_HEADER which is
> >> set only for 64bit architectures (apart from LoongArch).
> >>
> >> Both fields are aligned on these architectures so the struct with
> >> __packed and without it are the same.
> >>
> >> Remove the __packed as it is unnecessary.
> >>
> >> Fixes: 4346ba160409 ("fprobe: Rewrite fprobe on function-graph tracer")
> >
> > NOTE: This is not a Fix, but just cleanup or minor update. Or, you have
> > any problem with this __packed attribute?
>
> Thanks, yes it is not fixing a bug, I can remove this.
>
> >
> > Unless there is no problem (or any concern), I would like to keep this
> > as it is.
>
> There is currently no problem with __packed in the upstream kernel. I
> just thought this would be a good cleanup to remove the unnecessary
> attribute. I am working on CHERI architectures where pointers have
> capabilities. __packed breaks these capability tags and therefore
> doesn't work on CHERI. When looking into why this struct has a __packed
> attribute I didn't see a reason, so I thought this would be a good patch
> for upstream as well even though CHERI is not yet relevant for upstream
> linux.

Hi Markus,

Ah, OK. CHERI makes pointers to non-long value. Are you sure
removing __packed makes fprobe working with CHERI? If so,
please describe it. Then I can pick it.

Thanks!


--
Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>