[PATCH v3 0/2] arm_ffa, KVM: Fix FF-A emad offset calculations

Sudeep Holla sudeep.holla at kernel.org
Mon May 18 06:45:53 PDT 2026


On Wed, May 13, 2026 at 06:23:43PM +0100, Sudeep Holla wrote:
> On Tue, May 12, 2026 at 12:44:40PM +0000, Sebastian Ene wrote:
> > Hi all,
> > 
> > This series fixes the Endpoint Memory Access Descriptor (EMAD) offset calculations
> > and adds the necessary bounds checks for both the core FF-A driver and the pKVM
> > hypervisor.
> > 
> > Prior to FF-A version 1.1, the memory region header didn't specify an explicit offset
> > for the EMADs, leading to the assumption that they immediately follow the header.
> > However, from v1.1 onwards, the specification dictates using the `ep_mem_offset` field
> > to determine the start of the memory access array.
> > 
> > The patches in this series address this by:
> > 1. Updating the core `arm_ffa` firmware driver to correctly calculate the descriptor
> >    offset using `ep_mem_offset` rather than defaulting to `sizeof(struct ffa_mem_region)`.
> >    It also introduces bounds checking against `max_fragsize`.
> > 2. Enhancing the pKVM hypervisor validation logic to no longer strictly enforce that
> >    the descriptor strictly follows the header, aligning it with the driver behavior
> >    and the FF-A specification, while also ensuring the offset falls within the mailbox
> >    buffer bounds.
> >
> 
> Looks good apart from the minor nits, but how do you plan to route these
> changes as they are dependent for functionality but not for the build IIUC.
>

You can add (with minor nit fixed) my

Reviewed-by:  Sudeep Holla <sudeep.holla at kernel.org>

if it is routed via KVM or other tree.

-- 
Regards,
Sudeep



More information about the linux-arm-kernel mailing list