On Mon, May 9, 2022 at 2:24 PM Stanisław Kardach <k...@semihalf.com> wrote:
>> Testing all riscv configs in test-meson-buils.sh seems too much to me.
>> Is there a real value to test both current targets?
>
> It's for sanity and compilation coverage testing. I.e. SiFive variant has a 
> specific build config which does not require extra barriers when reading time 
> and cycle registers for rte_rdtsc_precise(). I want to make sure that if 
> anyone changes some code based on configuration flags, it gets at least 
> compile-checked.
> I believe similar thing is done for Aarch64 builds.

As far as I experienced, building all those aarch64 combinations never
revealed any specific platform compilation issue.
It only consumes cpu, disk and our (maintainers) time.
I proposed to Thomas to shrink aarch64 builds list not so long ago :-).

The best would be for SiFive to provide a system for the CI to do
those checks on their variant.


>> About the new "Sponsored-by" tag, it should not raise warnings in the
>> CI if we agree on its addition.
>
> I'll modify it in V2 to be in form of:
>   Sponsored by: StarFive Technology
>   ...
>   Signed-off-by: ...
> This was suggested by Stephen Hemminger as having a precedent in Linux 
> kernel. Interestingly enough first use of this tag in kernel source was this 
> year in January.

I don't have an opinion on the spelling.

At the moment, the checks raise a warning:
http://mails.dpdk.org/archives/test-report/2022-May/278580.html

My point is that for this new tag, either checkpatch.pl in kernel
handles it (which I don't think it is the case) or we need to disable
the signature check in checkpatch.pl and something is added in dpdk
checkpatches.sh to accept all known tags.


>> In general, please avoid letting arch specific headers leak
>> internal/non rte_ prefixed helpers out of them.
>> For example, I noticed a RV64_CSRR macro that can be undefined after usage.
>
> Thanks for noticing. I'l fix this one in V2.
> There are 2 other symbols that leak but on purpose (out of a better idea): 
> vect_load_128() and vect_and(). Both are used in l3fwd_em to simulate vector 
> operations. Other platforms reference their intrinsics straight in the 
> l3fwd_em.c. As I don't have support for vector ops and I wanted to indicate 
> that xmm_t should be an isolated API, I've put both in rte_vect.h. That said 
> I'm not happy with this solution and am open to suggestions on how to solve 
> it neatly.

I'll try to have a look in the next revision.


>>
>>
>> Patch 3 is huge, not sure it is easy to split, did you consider doing so?
>
> It seems to me the nature of a new EAL implementation, I have to include all 
> symbols, otherwise DPDK won't compile.
> Alternatively I could have a huge initial patch with empty stubs that would 
> be filled in later commits. Downside of this approach is that it's hard to 
> verify each commit separately as tests will fail until all implementation is 
> there, so the division is only visual.

If you are sure there is nothing that can be separated, let's keep it whole.



-- 
David Marchand

Reply via email to