On 22/01/2024 10:36, Laszlo Ersek wrote:
(1) Does LocalApicTimerDxe have any other dependencies on OvmfPkg than
the library class header?

In other words, can't we remove "OvmfPkg/OvmfPkg.dec" from this
[Packages] section, too?

I can't see anything else, so I'd suggest to remove
"OvmfPkg/OvmfPkg.dec", but I could be missing something.

Good catch, thank you. I have removed it and OvmfPkg still builds without errors, so I think it can go.

Therefore, I suggest adding "NestedInterruptTplLib.inf" to
"MdeModulePkg.dsc". AIUI, right now the library instance is x86-only
(with a proposal on-list for the AARCH64 extension). Therefore, the
section in "MdeModulePkg.dsc" to add the INF file to would be:

[Components.IA32, Components.X64]

Within that section, library instances and drivers are apparently not
listed in lexicographical order, so maybe just tack the new line to the
bottom.

For build-testing, run the command

   build \
     -a IA32 -a X64 \
     -b NOOPT \
     -p MdeModulePkg/MdeModulePkg.dsc \
     -t GCC5 \
     -m MdeModulePkg/Library/NestedInterruptTplLib/NestedInterruptTplLib.inf

Thank you very much! I have made all of the changes that you suggested (in both emails).

Following Ray's concerns about the ability to test this code, I have also added a self-test capability. This deliberately triggers a configurable number of delays within NestedInterruptRestoreTPL() to force the system to experience a nested interrupt. The code verifies that:

a) the architecture's implementation of DisableInterruptsOnIret() is behaving as specified, and

b) the platform's timer interrupt handler is correctly rearming the timer interrupt before calling NestedInterruptRestoreTPL().

I've also added AArch64 and ARM implementations for DisableInterruptsOnIret(), which I shall test shortly.

Patch series v3 to follow.

Thanks,

Michael



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#114198): https://edk2.groups.io/g/devel/message/114198
Mute This Topic: https://groups.io/mt/103852900/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to