Hi All, Is there any concern for this patch? I will push this patch tomorrow if don't get any objection?
Thanks, Dandan > -----Original Message----- > From: Li, Walon <walon...@hpe.com> > Sent: Wednesday, June 3, 2020 6:56 PM > To: Bi, Dandan <dandan...@intel.com>; devel@edk2.groups.io; Gao, Liming > <liming....@intel.com> > Cc: Wang, Nickle (HPS SW) <nickle.w...@hpe.com>; Chang, Abner (HPS > SW/FW Technologist) <abner.ch...@hpe.com>; Wang, Sunny (HPS SW) > <sunnyw...@hpe.com> > Subject: RE: [PATCH] MdeModulePkg/SetupBrowserDxe: Do not reconnect > driver with form-update > > May I know the schedule of pushing this change to edk2-master? Or what's > next step I should do? > > Thanks, > Walon > -----Original Message----- > From: Bi, Dandan [mailto:dandan...@intel.com] > Sent: Sunday, May 24, 2020 3:17 PM > To: Li, Walon <walon...@hpe.com>; devel@edk2.groups.io > Cc: Wang, Nickle (HPS SW) <nickle.w...@hpe.com>; Chang, Abner (HPS > SW/FW Technologist) <abner.ch...@hpe.com>; Wang, Sunny (HPS SW) > <sunnyw...@hpe.com> > Subject: RE: [PATCH] MdeModulePkg/SetupBrowserDxe: Do not reconnect > driver with form-update > > Reviewed-by: Dandan Bi <dandan...@intel.com> > > > Thanks, > Dandan > > -----Original Message----- > > From: Walon Li <walon...@hpe.com> > > Sent: Wednesday, May 20, 2020 12:25 PM > > To: devel@edk2.groups.io > > Cc: walon...@hpe.com; Bi, Dandan <dandan...@intel.com>; > > nickle.w...@hpe.com; abner.ch...@hpe.com; sunnyw...@hpe.com > > Subject: [PATCH] MdeModulePkg/SetupBrowserDxe: Do not reconnect > driver > > with form-update > > > > REF:https://urldefense.proofpoint.com/v2/url?u=https-3A__bugzilla.tian > > ocore.org_show-5Fbug.cgi-3Fid- > 3D2701&d=DwIFAg&c=C5b8zRQO1miGmBeVZ2LFWg > > > &r=nGx4G_nX3rQG_ai3uSb52w&m=j34dsoHyXFEvnpFmkT_iUSnMAF1kWbm > BFnMbHVJkJx > > U&s=V7D879dizWzD8-fTk-wXmw5sypK5jfdtjWAENVbXntQ&e= > > > > Recording to the spec, the reconnect is activated upon exiting of the > > formset or the browser. Exiting is by user but form-browser internal > > logic. That means the reconnection is only happened when user press > > ESC or _EXIT action to exit form. > > Driver callback may update HII form dynamically so form-browser needs > > to refresh its internal data. It's not exiting formset for user > > exactly and they didn't know what happened. So use a flag to record > > that and do not reconnect driver if updated by callback. > > > > Signed-off-by: Walon Li <walon...@hpe.com> > > --- > > MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c | 2 ++ > > MdeModulePkg/Universal/SetupBrowserDxe/Setup.c | 8 +++++++- > > 2 files changed, 9 insertions(+), 1 deletion(-) > > > > diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c > > b/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c > > index bafee4c612..7f85873730 100644 > > --- a/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c > > +++ b/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c > > @@ -19,6 +19,7 @@ LIST_ENTRY mRefreshEventList = > > INITIALIZE_LIST_HEAD_VARIABLE (mRefreshEv > > UINT16 mCurFakeQestId; FORM_DISPLAY_ENGINE_FORM > > gDisplayFormData; BOOLEAN mFinishRetrieveCall = FALSE;+BOOLEAN > > mDynamicFormUpdated = FALSE; /** Check whether the ConfigAccess > > protocol is available.@@ -1762,6 +1763,7 @@ FormUpdateNotify ( > > ) { mHiiPackageListUpdated = TRUE;+ mDynamicFormUpdated = TRUE; > > return EFI_SUCCESS; }diff --git > > a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c > > b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c > > index 82067b541c..f936a4b8e8 100644 > > --- a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c > > +++ b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c > > @@ -68,6 +68,7 @@ extern EFI_GUID mCurrentFormSetGuid; > > extern EFI_HII_HANDLE mCurrentHiiHandle; extern UINT16 > > mCurrentFormId; extern FORM_DISPLAY_ENGINE_FORM > > gDisplayFormData;+extern BOOLEAN mDynamicFormUpdated; /** > > Create a menu with specified formset GUID and form ID, and add it as a > > child@@ -536,6 +537,7 @@ SendForm ( > > } Selection->FormSet = FormSet; mSystemLevelFormSet = > > FormSet;+ mDynamicFormUpdated = FALSE; // // Display this > > formset@@ -547,7 +549,11 @@ SendForm ( > > gCurrentSelection = NULL; mSystemLevelFormSet = NULL; - if > > (gFlagReconnect || gCallbackReconnect) {+ //+ // If callback > > update > > form dynamically, it's not exiting of the formset for user so system do not > > reconnect driver hanlde+ // this time.+ //+ if > > (!mDynamicFormUpdated && (gFlagReconnect || gCallbackReconnect)) > > { RetVal = ReconnectController (FormSet->DriverHandle); if > (!RetVal) > > { PopupErrorMessage(BROWSER_RECONNECT_FAIL, NULL, NULL, > > NULL);-- > > 2.23.0.windows.1 > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#60851): https://edk2.groups.io/g/devel/message/60851 Mute This Topic: https://groups.io/mt/74345701/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-