[AMD Official Use Only - General] Ah sorry, I missed that one.
Reviewed-by: Abner Chang <abner.ch...@amd.com> > -----Original Message----- > From: Nickle Wang <nick...@nvidia.com> > Sent: Thursday, December 7, 2023 7:46 AM > To: Chang, Abner <abner.ch...@amd.com>; devel@edk2.groups.io > Cc: Igor Kulchytskyy <ig...@ami.com>; Nick Ramirez <nrami...@nvidia.com> > Subject: RE: [edk2-redfish-client][PATCH] > RedfishClientPkg/RedfishFeatureCoreDxe: fix Redfish event issue. > > [AMD Official Use Only - General] > > Caution: This message originated from an External Source. Use proper caution > when opening attachments, clicking links, or responding. > > > Hi Abner, > > > If we use PCD here, then we have to also update CreateEventEx in the > RedfishFeatureCoreEntryPoint. Create the event using > REDFISH_FEATURE_CORE_TPL. > > Yes, I also modify RedfishFeatureCoreEntryPoint in below together. > > > } > > > > /** > > @@ -670,7 +682,7 @@ RedfishFeatureCoreEntryPoint ( > > > > Status = gBS->CreateEventEx ( > > EVT_NOTIFY_SIGNAL, > > - TPL_CALLBACK, > > + REDFISH_FEATURE_CORE_TPL, > > RedfishFeatureDriverStartup, > > (CONST VOID *)&mFeatureDriverStartupContext, > > EventGuid, > > Regards, > Nickle > > > -----Original Message----- > > From: Chang, Abner <abner.ch...@amd.com> > > Sent: Wednesday, December 6, 2023 8:08 PM > > To: Nickle Wang <nick...@nvidia.com>; devel@edk2.groups.io > > Cc: Igor Kulchytskyy <ig...@ami.com>; Nick Ramirez > <nrami...@nvidia.com> > > Subject: RE: [edk2-redfish-client][PATCH] > > RedfishClientPkg/RedfishFeatureCoreDxe: fix Redfish event issue. > > > > External email: Use caution opening links or attachments > > > > > > [AMD Official Use Only - General] > > > > Hi Nickle, one comment below. > > > > > -----Original Message----- > > > From: Nickle Wang <nick...@nvidia.com> > > > Sent: Wednesday, December 6, 2023 4:57 PM > > > To: devel@edk2.groups.io > > > Cc: Chang, Abner <abner.ch...@amd.com>; Igor Kulchytskyy > > > <ig...@ami.com>; Nick Ramirez <nrami...@nvidia.com> > > > Subject: [edk2-redfish-client][PATCH] > > > RedfishClientPkg/RedfishFeatureCoreDxe: fix Redfish event issue. > > > > > > Caution: This message originated from an External Source. Use proper > > > caution when opening attachments, clicking links, or responding. > > > > > > > > > RedfishFeatureDriverStartup is callback function at TPL_CALLBACK > > > level. In this function, Redfish events are signaled. However, Redfish > > > events are created in TPL_CALLBACK level too. As the result, Redfish > > > events cannot be invoked in desired sequence. Decrease the TPL to > > > TPL_APPLICATION level inside RedfishFeatureDriverStartup and restore > > > it to TPL_CALLBACK level before leaving this function. Now, Redfish > > > events are called in correct sequence. > > > > > > Signed-off-by: Nickle Wang <nick...@nvidia.com> > > > Cc: Abner Chang <abner.ch...@amd.com> > > > Cc: Igor Kulchytskyy <ig...@ami.com> > > > Cc: Nick Ramirez <nrami...@nvidia.com> > > > --- > > > .../RedfishFeatureCoreDxe/RedfishFeatureCoreDxe.h | 1 + > > > .../RedfishFeatureCoreDxe/RedfishFeatureCoreDxe.c | 14 > +++++++++++++- > > > 2 files changed, 14 insertions(+), 1 deletion(-) > > > > > > diff --git > > > a/RedfishClientPkg/RedfishFeatureCoreDxe/RedfishFeatureCoreDxe.h > > > b/RedfishClientPkg/RedfishFeatureCoreDxe/RedfishFeatureCoreDxe.h > > > index acefa41b..de08d79d 100644 > > > --- a/RedfishClientPkg/RedfishFeatureCoreDxe/RedfishFeatureCoreDxe.h > > > +++ b/RedfishClientPkg/RedfishFeatureCoreDxe/RedfishFeatureCoreDxe.h > > > @@ -33,6 +33,7 @@ > > > #define NodeIsCollectionLeftBracket L'{' > > > #define NodeIsCollectionRightBracket L'}' > > > #define NodeIsCollectionSymbol L"/{}" > > > +#define REDFISH_FEATURE_CORE_TPL TPL_CALLBACK > > > > > > typedef struct _REDFISH_FEATURE_INTERNAL_DATA > > > REDFISH_FEATURE_INTERNAL_DATA; struct > > _REDFISH_FEATURE_INTERNAL_DATA > > > { diff --git > > > a/RedfishClientPkg/RedfishFeatureCoreDxe/RedfishFeatureCoreDxe.c > > > b/RedfishClientPkg/RedfishFeatureCoreDxe/RedfishFeatureCoreDxe.c > > > index f3188ddf..c0c3ec47 100644 > > > --- a/RedfishClientPkg/RedfishFeatureCoreDxe/RedfishFeatureCoreDxe.c > > > +++ b/RedfishClientPkg/RedfishFeatureCoreDxe/RedfishFeatureCoreDxe.c > > > @@ -272,6 +272,13 @@ RedfishFeatureDriverStartup ( > > > return; > > > } > > > > > > + // > > > + // Lower the TPL to TPL_APPLICATION so that // Redfish event and > > > + report status code can be // triggered // gBS->RestoreTPL > > > + (TPL_APPLICATION); > > > + > > > // > > > // Reset PcdRedfishSystemRebootRequired flag > > > // > > > @@ -321,6 +328,11 @@ RedfishFeatureDriverStartup ( > > > gRT->ResetSystem (EfiResetCold, EFI_SUCCESS, 0, NULL); > > > CpuDeadLoop (); > > > } > > > + > > > + // > > > + // Restore to the TPL where this callback handler is called. > > > + // > > > + gBS->RaiseTPL (REDFISH_FEATURE_CORE_TPL); > > If we use PCD here, then we have to also update CreateEventEx in the > > RedfishFeatureCoreEntryPoint. Create the event using > > REDFISH_FEATURE_CORE_TPL. > > > > Abner > > > > > > > } > > > > > > /** > > > @@ -670,7 +682,7 @@ RedfishFeatureCoreEntryPoint ( > > > > > > Status = gBS->CreateEventEx ( > > > EVT_NOTIFY_SIGNAL, > > > - TPL_CALLBACK, > > > + REDFISH_FEATURE_CORE_TPL, > > > RedfishFeatureDriverStartup, > > > (CONST VOID *)&mFeatureDriverStartupContext, > > > EventGuid, > > > -- > > > 2.17.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#112151): https://edk2.groups.io/g/devel/message/112151 Mute This Topic: https://groups.io/mt/103009658/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-