[PATCH 0/3] v3 - Paravirtualization Patch Series

Sebastian Huber sebastian.huber at embedded-brains.de
Thu Feb 22 11:42:53 UTC 2018


----- Am 22. Feb 2018 um 6:06 schrieb Chris Johns chrisj at rtems.org:

> On 22/02/2018 13:37, Sebastian Huber wrote:
>>>
>>> Architecture-specific names should use an ARCH_ or _Arch prefix and not CPU_ARCH
>>> or _CPU_Arch.
>>>
>>> This
>>>
>>> CPU_DISABLE_INLINE_ISR_DISABLE_ENABLE
>>>
>>> is an architecture-specific implementation detail which doesn't propagate to
>>> generic files, e.g. rtems/score/isrlevel.h, so it should not be introduced from
>>> my point of view.
>>>
>>> I don't think it is worth to add a rtems/score/paravirt.h for each architecture.
>>> The changes introduced by RTEMS_PARAVIRT are too small to justify this.  I am
>>> also not sure if you can encapsulate this in one header in all cases.
>> 
>> Please don't ignore this.
>> 
> 
> I felt spreading the RTEMS_PARAVIRT across the code was hiding the reason in
> some cases. When I reviewed the v2 patches I felt changes in a specific area
> needed more information to aid long term maintenance. For example look at the
> ARM thread id register. It is clear what is happening and if that change flows
> out to other parts of the system it is clear what is happening if there is a
> dependence on that register.

Yes, this is all right, but do we really need a special header file for this? We can do this in one area of cpu.h or cpuimpl.h.

One long term goal is to reduce the implementation details visible via <rtems.h> and move more and more stuff into cpuimpl.h. This paravirt.h is a step back under this point of view.


More information about the devel mailing list