Re: [PATCH v3] drm/imagination: Align rogue_fwif_hwrtdata to 64 bytes
From: Michal Wilczynski
Date: Thu Oct 29 2026 - 04:09:16 EST
On 10/28/26 15:43, Alessio Belle wrote:
> Hi Michal,
>
> On Mon, 2026-08-10 at 12:20 +0200, Michal Wilczynski wrote:
>> The build fails on RISC-V using GCC because `SIZE_CHECK(struct
>> rogue_fwif_hwrtdata, 384)` expects 384 bytes, but the compiler generates
>> a 336-byte structure.
>>
>> This is due to an alignment conflict: the inner member `cleanup_state`
>> requires 64-byte alignment, but the outer struct is explicitly marked
>> `__aligned(8)`.
>>
>> While GCC on ARM64 implicitly pads the size to a multiple of 64, GCC on
>> RISC-V strictly respects the 8-byte outer alignment, resulting in a size
>> mismatch.
>>
>> Fix this by aligning the entire structure to 64 bytes, which resolves
>> the contradiction and forces the correct 384 byte size on all
>> architectures.
>>
>> Fixes: a26f067feac1 ("drm/imagination: Add FWIF headers")
>> Reported-by: kernel test robot <lkp@xxxxxxxxx>
>> Closes: https://lore.kernel.org/oe-kbuild-all/202512131851.1WNXk3BC-lkp@xxxxxxxxx/
>> Reviewed-by: Luigi Santivetti <luigi.santivetti@xxxxxxxxxx>
>> Signed-off-by: Michal Wilczynski <m.wilczynski@xxxxxxxxxxx>
>> ---
>> Changes in v3:
>> - Cleaned up the changelog section by removing the accidental b4
>> "EDITME" template from v2.
>> - No changes to the code or commit message.
>> - Rebased patch on latest master.
>>
>> Changes in v2:
>> - Expanded the commit message to properly explain the root cause of the
>> GCC alignment conflict on RISC-V vs ARM64, based on v1 feedback.
>
> Sorry to bother again on this. All versions have the same commit message as the
> original. Do you still have the updated message that I think was meant to be
> sent in v2? Or are you fine with me making these changes to the commit message
> (+ rewrap) before applying this?
>
> - "The build fails on RISC-V using GCC" -> "Sparse (W=1) builds fail"
> - "While GCC on ARM64" -> "While a non-sparse build"
> - "GCC on RISC-V strictly respects" -> "a sparse build strictly respects"
> - "on all architectures" -> "on all builds"
>
> Thanks,
> Alessio
>
Hmm I was sure the commit text was changed last time, anyway will fix
and resend thanks !
Best regards,
--
Michal Wilczynski <m.wilczynski@xxxxxxxxxxx>