[PATCH v4 18/29] arm64: add POE signal support
Dave Martin
Dave.Martin at arm.com
Thu Jul 25 08:58:27 PDT 2024
On Mon, Jun 03, 2024 at 02:51:46PM +0530, Amit Daniel Kachhap wrote:
>
>
> On 5/31/24 22:09, Mark Brown wrote:
> > On Tue, May 28, 2024 at 12:26:54PM +0530, Amit Daniel Kachhap wrote:
> > > On 5/3/24 18:31, Joey Gouly wrote:
> >
> > > > +#define POE_MAGIC 0x504f4530
> > > > +struct poe_context {
> > > > + struct _aarch64_ctx head;
> > > > + __u64 por_el0;
> > > > +};
> >
> > > There is a comment section in the beginning which mentions the size
> > > of the context frame structure and subsequent reduction in the
> > > reserved range. So this new context description can be added there.
> > > Although looks like it is broken for za, zt and fpmr context.
> >
> > Could you be more specific about how you think these existing contexts
> > are broken? The above looks perfectly good and standard and the
> > existing contexts do a reasonable simulation of working. Note that the
> > ZA and ZT contexts don't generate data payload unless userspace has set
> > PSTATE.ZA.
>
> Sorry for not being clear on this as I was only referring to the
> comments in file arch/arm64/include/uapi/asm/sigcontext.h and no code
> as such is broken.
>
> * Allocation of __reserved[]:
> * (Note: records do not necessarily occur in the order shown here.)
> *
> * size description
> *
> * 0x210 fpsimd_context
> * 0x10 esr_context
> * 0x8a0 sve_context (vl <= 64) (optional)
> * 0x20 extra_context (optional)
> * 0x10 terminator (null _aarch64_ctx)
> *
> * 0x510 (reserved for future allocation)
>
> Here I think that optional context like za, zt, fpmr and poe should have
> size mentioned here to make the description consistent.As you said ZA
> and ZT context are enabled by userspace so some extra details can be
> added for them too.
Regarding this, __reserved[] is looking very full now.
I'll post a draft patch separately, since I think the update could
benefit from separate discussion, but my back-of-the-envelope
calculation suggests that (before this patch) we are down to 0x90
bytes of free space (i.e., over 96% full).
I wonder whether it is time to start pushing back on adding a new
_foo_context for every individual register, though?
Maybe we could add some kind of _misc_context for miscellaneous 64-bit
regs.
[...]
Cheers
---Dave
More information about the linux-arm-kernel
mailing list