Re: [PATCH v3] x86/pci: fix the function type for check_reserved_t

From: Sedat Dilek
Date: Fri Dec 04 2020 - 03:48:01 EST


On Wed, Dec 2, 2020 at 8:39 PM Kees Cook <keescook@xxxxxxxxxxxx> wrote:
>
> On Mon, Nov 30, 2020 at 11:39:00AM -0800, Sami Tolvanen wrote:
> > e820__mapped_all is passed as a callback to is_mmconf_reserved,
> > which expects a function of type:
> >
> > typedef bool (*check_reserved_t)(u64 start, u64 end, unsigned type);
> >
> > However, e820__mapped_all accepts enum e820_type as the last
> > argument and this type mismatch trips indirect call checking with
> > Clang's Control-Flow Integrity (CFI).
> >
> > As is_mmconf_reserved only passes enum e820_type values for the
> > type argument, change the typedef and the unused type argument in
> > is_acpi_reserved to enum e820_type to fix the type mismatch.
> >
> > Reported-by: Sedat Dilek <sedat.dilek@xxxxxxxxx>
> > Suggested-by: Borislav Petkov <bp@xxxxxxxxx>
> > Signed-off-by: Sami Tolvanen <samitolvanen@xxxxxxxxxx>
>
> Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>
>

Hi Sami,

Back from a time-out...

Please add my:

Tested-by: Sedat Dilek <sedat.dilek@xxxxxxxxx>

I have some other patches which I had reported when testing Clang-CFI
against Linux v5.9 which misses my Tested-by.
I know we did all that reporting and testing via private email, so it
is as it is.
Reported-by is half-done...

Thanks.

Regards,
- Sedat -