[PATCH v7 1/7] eal: add static per-lcore memory allocation facility
Morten Brørup
mb at smartsharesystems.com
Thu Oct 10 15:45:23 CEST 2024
> From: Mattias Rönnblom [mailto:hofors at lysator.liu.se]
> Sent: Thursday, 10 October 2024 15.40
>
> On 2024-10-10 13:47, Morten Brørup wrote:
> >> From: Mattias Rönnblom [mailto:hofors at lysator.liu.se]
> >> Sent: Thursday, 10 October 2024 12.40
> >>
> >> On 2024-10-10 00:15, Morten Brørup wrote:
> >>> From what I can read on the internet, max_align_t is missing in
> >> stddef.h in MSVC [1], so try adding this to fix the Windows CI
> >> compilation failure:
> >>>
> >>> #ifdef RTE_TOOLCHAIN_MSVC
> >>> #include <cstddef>
> >>> #endif
> >>
> >> Please excuse my MSVC ignorance, but will this work in C? Looks like
> >> C++.
> >
> > I have no clue. Just parroting what Microsoft says on the internet.
> >
> > You can try it out and see if the CI accepts it.
> >
>
> It wouldn't make sense if that worked, so I'll go for this instead:
>
> #ifdef RTE_TOOLCHAIN_MSVC
> /* MSVC <stddef.h> is missing the max_align_t typedef */
Maybe also add some reference to why "double" is the max aligned type in MSVC.
> align = alignof(double);
> #else
> align = alignof(max_align_t);
> #endif
Even better!
It's a good workaround, and not an ugly hack like the ones suggested by me.
>
> Thanks for pointing out this issue.
:-)
More information about the dev
mailing list