* DxeCapsuleLib returns Status Issue @ 2016-08-24 10:22 Ankit_Singh3 0 siblings, 0 replies; 8+ messages in thread From: Ankit_Singh3 @ 2016-08-24 10:22 UTC (permalink / raw) To: edk2-devel; +Cc: Sumanth_Vidyadhara, Dileesh_Onniyil, Mark_Shutt Dell - Internal Use - Confidential Hi EDK2 Developers, We are incorporating DxeCapsuleLib for FMP Capsule Update into our UEFI product, but we are hitting few issues as described below. In case of Capsule Update "SetImage" is randomly done for all the FMP Handles in case Image Type Id GUID and Image Index matches (this is expected as there might be multiple similar hardware), but looks like the returns of each FMP update is not handled. For example if there are 5 FMP handles (can be for different-different devices) and assume that any particular device handle is at 3rd index, therefore the update goes through successfully on the 3rd attempt but since HandleCount value is 5 it tries further with 4th and 5th Handle. This 4th & 5th Handle attempt can fail for any of the calls within the FMP Handle "for loop" (HandleProtocol/GetImageInfo) and hence the final status is returned as FAILURE to application layer. Below is the code-snippet from DxeCapsuleLib.c , in case of HandleProtocol & GetImageInfo failure, "for" loop for Handle count is continued and the previous Status value is over-written with this new return (return from HandleProtocol & GetImageInfo) and finally returned to application. [cid:image001.jpg@01D1FE1F.828C9E70] Proposed Solution:- Can ProcessFmpCapsuleImage() have an extra OUT parameter which gives the list of all successful FMP Handles along with the updated GUID values, so that any application can make the judgment of Update SUCCESS/FAILURE based on FMP Handle and proceed accordingly at application layer. Regards, Ankit Singh ^ permalink raw reply [flat|nested] 8+ messages in thread
* DxeCapsuleLib returns Status Issue @ 2016-08-29 7:51 Ankit_Singh3 2016-08-29 7:58 ` Yao, Jiewen [not found] ` <4A89E2EF3DFEDB4C8BFDE51014F606A14B3D62F7@SHSMSX104.ccr.corp.intel.com> 0 siblings, 2 replies; 8+ messages in thread From: Ankit_Singh3 @ 2016-08-29 7:51 UTC (permalink / raw) To: edk2-devel Dell - Internal Use - Confidential Hi EDK2 Developers, We are incorporating DxeCapsuleLib for FMP Capsule Update into our UEFI product, but we are hitting few issues as described below. In case of Capsule Update "SetImage" is randomly done for all the FMP Handles in case Image Type Id GUID and Image Index matches (this is expected as there might be multiple similar hardware), but looks like the returns of each FMP update is not handled. For example if there are 5 FMP handles (can be for different-different devices) and assume that any particular device handle is at 3rd index, therefore the update goes through successfully on the 3rd attempt but since HandleCount value is 5 it tries further with 4th and 5th Handle. This 4th & 5th Handle attempt can fail for any of the calls within the FMP Handle "for loop" (HandleProtocol/GetImageInfo) and hence the final status is returned as FAILURE to application layer. Below is the code-snippet from DxeCapsuleLib.c , in case of HandleProtocol & GetImageInfo failure, "for" loop for Handle count is continued and the previous Status value is over-written with this new return (return from HandleProtocol & GetImageInfo) and finally returned to application. [cid:image001.jpg@01D201F8.38564220] Proposed Solution:- Can ProcessFmpCapsuleImage() have an extra OUT parameter which gives the list of all successful FMP Handles along with the updated GUID values, so that any application can make the judgment of Update SUCCESS/FAILURE based on FMP Handle and proceed accordingly at application layer. Regards, Ankit Singh ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: DxeCapsuleLib returns Status Issue 2016-08-29 7:51 Ankit_Singh3 @ 2016-08-29 7:58 ` Yao, Jiewen [not found] ` <F99FFC4B77F8B14CBD8ED39478A5FA211D4BA333AE@BLRX7MCDC203.AMER.DELL.COM> [not found] ` <4A89E2EF3DFEDB4C8BFDE51014F606A14B3D62F7@SHSMSX104.ccr.corp.intel.com> 1 sibling, 1 reply; 8+ messages in thread From: Yao, Jiewen @ 2016-08-29 7:58 UTC (permalink / raw) To: Ankit_Singh3@Dell.com, edk2-devel@lists.01.org Hi That is good problem statement. Do you think we can use Capsule Status Variable to record such information? It is defined in UEFI spec - "7.5.6 UEFI variable reporting on the Success or any Errors encountered in processing of capsules after restart" The application can use this standard way to check status. Thank you Yao Jiewen > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Ankit_Singh3@Dell.com > Sent: Monday, August 29, 2016 3:51 PM > To: edk2-devel@lists.01.org > Subject: [edk2] [EDK2] DxeCapsuleLib returns Status Issue > > Dell - Internal Use - Confidential > Hi EDK2 Developers, > > We are incorporating DxeCapsuleLib for FMP Capsule Update into our UEFI > product, but we are hitting few issues as described below. > > In case of Capsule Update "SetImage" is randomly done for all the FMP > Handles in case Image Type Id GUID and Image Index matches (this is > expected as there might be multiple similar hardware), but looks like the > returns of each FMP update is not handled. > For example if there are 5 FMP handles (can be for different-different > devices) and assume that any particular device handle is at 3rd index, > therefore the update goes through successfully on the 3rd attempt but since > HandleCount value is 5 it tries further with 4th and 5th Handle. This 4th & 5th > Handle attempt can fail for any of the calls within the FMP Handle "for loop" > (HandleProtocol/GetImageInfo) and hence the final status is returned as > FAILURE to application layer. > > Below is the code-snippet from DxeCapsuleLib.c , in case of HandleProtocol > & GetImageInfo failure, "for" loop for Handle count is continued and the > previous Status value is over-written with this new return (return from > HandleProtocol & GetImageInfo) and finally returned to application. > [cid:image001.jpg@01D201F8.38564220] > > > Proposed Solution:- > Can ProcessFmpCapsuleImage() have an extra OUT parameter which gives > the list of all successful FMP Handles along with the updated GUID values, so > that any application can make the judgment of Update SUCCESS/FAILURE > based on FMP Handle and proceed accordingly at application layer. > > Regards, > Ankit Singh > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <F99FFC4B77F8B14CBD8ED39478A5FA211D4BA333AE@BLRX7MCDC203.AMER.DELL.COM>]
* Re: DxeCapsuleLib returns Status Issue [not found] ` <F99FFC4B77F8B14CBD8ED39478A5FA211D4BA333AE@BLRX7MCDC203.AMER.DELL.COM> @ 2016-08-31 0:54 ` Yao, Jiewen 2016-09-02 1:51 ` Yao, Jiewen 0 siblings, 1 reply; 8+ messages in thread From: Yao, Jiewen @ 2016-08-31 0:54 UTC (permalink / raw) To: Ankit_Singh3@Dell.com, edk2-devel@lists.01.org; +Cc: Yao, Jiewen Hi Ankit Singh This seems a missing feature in current EDKII. Thanks to catch that. Would you please file a bugzillar tracker, so that it can recorded? The Bugzilla is introduced @ http://www.tianocore.org/news/2016/07/22/Bugzilla.html The URL for Bugzilla is @ https://tianocore.acgmultimedia.com/ Thank you Yao Jiewen From: Ankit_Singh3@Dell.com [mailto:Ankit_Singh3@Dell.com] Sent: Tuesday, August 30, 2016 12:05 AM To: Yao, Jiewen <jiewen.yao@intel.com> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Dell - Internal Use - Confidential Hi Jiewen, Thanks for pointing me to Capsule Status Variable (UEFI spec - Section 7.5.6), looks like it exactly what I was expecting. But I looked into latest EDK2 code and could not find it being populated and stored/saved anywhere. Regards, Ankit Singh -----Original Message----- From: Yao, Jiewen [mailto:jiewen.yao@intel.com] Sent: Monday, August 29, 2016 1:29 PM To: Singh3, Ankit ; edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Hi That is good problem statement. Do you think we can use Capsule Status Variable to record such information? It is defined in UEFI spec - "7.5.6 UEFI variable reporting on the Success or any Errors encountered in processing of capsules after restart" The application can use this standard way to check status. Thank you Yao Jiewen > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com> > Sent: Monday, August 29, 2016 3:51 PM > To: edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> > Subject: [edk2] [EDK2] DxeCapsuleLib returns Status Issue > > Dell - Internal Use - Confidential > Hi EDK2 Developers, > > We are incorporating DxeCapsuleLib for FMP Capsule Update into our > UEFI product, but we are hitting few issues as described below. > > In case of Capsule Update "SetImage" is randomly done for all the FMP > Handles in case Image Type Id GUID and Image Index matches (this is > expected as there might be multiple similar hardware), but looks like > the returns of each FMP update is not handled. > For example if there are 5 FMP handles (can be for different-different > devices) and assume that any particular device handle is at 3rd index, > therefore the update goes through successfully on the 3rd attempt but > since HandleCount value is 5 it tries further with 4th and 5th Handle. > This 4th & 5th Handle attempt can fail for any of the calls within the FMP Handle "for loop" > (HandleProtocol/GetImageInfo) and hence the final status is returned > as FAILURE to application layer. > > Below is the code-snippet from DxeCapsuleLib.c , in case of > HandleProtocol & GetImageInfo failure, "for" loop for Handle count is > continued and the previous Status value is over-written with this new > return (return from HandleProtocol & GetImageInfo) and finally returned to application. > [cid:image001.jpg@01D201F8.38564220] > > > Proposed Solution:- > Can ProcessFmpCapsuleImage() have an extra OUT parameter which gives > the list of all successful FMP Handles along with the updated GUID > values, so that any application can make the judgment of Update > SUCCESS/FAILURE based on FMP Handle and proceed accordingly at application layer. > > Regards, > Ankit Singh > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> > https://lists.01.org/mailman/listinfo/edk2-devel ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: DxeCapsuleLib returns Status Issue 2016-08-31 0:54 ` Yao, Jiewen @ 2016-09-02 1:51 ` Yao, Jiewen 2016-09-02 3:24 ` Ankit_Singh3 0 siblings, 1 reply; 8+ messages in thread From: Yao, Jiewen @ 2016-09-02 1:51 UTC (permalink / raw) To: Ankit_Singh3@Dell.com, edk2-devel@lists.01.org Hi Ankit Singh A reminder: We haven't seen you filing a Bugzilla yet. At same time, we reviewed UEFI spec and raised an open to USWG. (For your information only) Thank you Yao Jiewen From: Yao, Jiewen Sent: Wednesday, August 31, 2016 8:55 AM To: Ankit_Singh3@Dell.com; edk2-devel@lists.01.org Cc: Yao, Jiewen <jiewen.yao@intel.com> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Hi Ankit Singh This seems a missing feature in current EDKII. Thanks to catch that. Would you please file a bugzillar tracker, so that it can recorded? The Bugzilla is introduced @ http://www.tianocore.org/news/2016/07/22/Bugzilla.html The URL for Bugzilla is @ https://tianocore.acgmultimedia.com/ Thank you Yao Jiewen From: Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com> [mailto:Ankit_Singh3@Dell.com] Sent: Tuesday, August 30, 2016 12:05 AM To: Yao, Jiewen <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Dell - Internal Use - Confidential Hi Jiewen, Thanks for pointing me to Capsule Status Variable (UEFI spec - Section 7.5.6), looks like it exactly what I was expecting. But I looked into latest EDK2 code and could not find it being populated and stored/saved anywhere. Regards, Ankit Singh -----Original Message----- From: Yao, Jiewen [mailto:jiewen.yao@intel.com] Sent: Monday, August 29, 2016 1:29 PM To: Singh3, Ankit ; edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Hi That is good problem statement. Do you think we can use Capsule Status Variable to record such information? It is defined in UEFI spec - "7.5.6 UEFI variable reporting on the Success or any Errors encountered in processing of capsules after restart" The application can use this standard way to check status. Thank you Yao Jiewen > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com> > Sent: Monday, August 29, 2016 3:51 PM > To: edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> > Subject: [edk2] [EDK2] DxeCapsuleLib returns Status Issue > > Dell - Internal Use - Confidential > Hi EDK2 Developers, > > We are incorporating DxeCapsuleLib for FMP Capsule Update into our > UEFI product, but we are hitting few issues as described below. > > In case of Capsule Update "SetImage" is randomly done for all the FMP > Handles in case Image Type Id GUID and Image Index matches (this is > expected as there might be multiple similar hardware), but looks like > the returns of each FMP update is not handled. > For example if there are 5 FMP handles (can be for different-different > devices) and assume that any particular device handle is at 3rd index, > therefore the update goes through successfully on the 3rd attempt but > since HandleCount value is 5 it tries further with 4th and 5th Handle. > This 4th & 5th Handle attempt can fail for any of the calls within the FMP Handle "for loop" > (HandleProtocol/GetImageInfo) and hence the final status is returned > as FAILURE to application layer. > > Below is the code-snippet from DxeCapsuleLib.c , in case of > HandleProtocol & GetImageInfo failure, "for" loop for Handle count is > continued and the previous Status value is over-written with this new > return (return from HandleProtocol & GetImageInfo) and finally returned to application. > [cid:image001.jpg@01D201F8.38564220] > > > Proposed Solution:- > Can ProcessFmpCapsuleImage() have an extra OUT parameter which gives > the list of all successful FMP Handles along with the updated GUID > values, so that any application can make the judgment of Update > SUCCESS/FAILURE based on FMP Handle and proceed accordingly at application layer. > > Regards, > Ankit Singh > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> > https://lists.01.org/mailman/listinfo/edk2-devel ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: DxeCapsuleLib returns Status Issue 2016-09-02 1:51 ` Yao, Jiewen @ 2016-09-02 3:24 ` Ankit_Singh3 2016-09-02 3:30 ` Yao, Jiewen 0 siblings, 1 reply; 8+ messages in thread From: Ankit_Singh3 @ 2016-09-02 3:24 UTC (permalink / raw) To: jiewen.yao, edk2-devel; +Cc: Sumanth_Vidyadhara, Dileesh_Onniyil Hi Jiewen, Already logged defect for Capsule Status Variable on bugzillar tracker (EDK II) on 31th August. https://tianocore.acgmultimedia.com/show_bug.cgi?id=108 Regards, Ankit Singh From: Yao, Jiewen [mailto:jiewen.yao@intel.com] Sent: Friday, September 02, 2016 7:21 AM To: Singh3, Ankit <Ankit_Singh3@Dell.com>; edk2-devel@lists.01.org Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Hi Ankit Singh A reminder: We haven't seen you filing a Bugzilla yet. At same time, we reviewed UEFI spec and raised an open to USWG. (For your information only) Thank you Yao Jiewen From: Yao, Jiewen Sent: Wednesday, August 31, 2016 8:55 AM To: Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com>; edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> Cc: Yao, Jiewen <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Hi Ankit Singh This seems a missing feature in current EDKII. Thanks to catch that. Would you please file a bugzillar tracker, so that it can recorded? The Bugzilla is introduced @ http://www.tianocore.org/news/2016/07/22/Bugzilla.html The URL for Bugzilla is @ https://tianocore.acgmultimedia.com/ Thank you Yao Jiewen From: Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com> [mailto:Ankit_Singh3@Dell.com] Sent: Tuesday, August 30, 2016 12:05 AM To: Yao, Jiewen <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Dell - Internal Use - Confidential Hi Jiewen, Thanks for pointing me to Capsule Status Variable (UEFI spec - Section 7.5.6), looks like it exactly what I was expecting. But I looked into latest EDK2 code and could not find it being populated and stored/saved anywhere. Regards, Ankit Singh -----Original Message----- From: Yao, Jiewen [mailto:jiewen.yao@intel.com] Sent: Monday, August 29, 2016 1:29 PM To: Singh3, Ankit ; edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Hi That is good problem statement. Do you think we can use Capsule Status Variable to record such information? It is defined in UEFI spec - "7.5.6 UEFI variable reporting on the Success or any Errors encountered in processing of capsules after restart" The application can use this standard way to check status. Thank you Yao Jiewen > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com> > Sent: Monday, August 29, 2016 3:51 PM > To: edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> > Subject: [edk2] [EDK2] DxeCapsuleLib returns Status Issue > > Dell - Internal Use - Confidential > Hi EDK2 Developers, > > We are incorporating DxeCapsuleLib for FMP Capsule Update into our > UEFI product, but we are hitting few issues as described below. > > In case of Capsule Update "SetImage" is randomly done for all the FMP > Handles in case Image Type Id GUID and Image Index matches (this is > expected as there might be multiple similar hardware), but looks like > the returns of each FMP update is not handled. > For example if there are 5 FMP handles (can be for different-different > devices) and assume that any particular device handle is at 3rd index, > therefore the update goes through successfully on the 3rd attempt but > since HandleCount value is 5 it tries further with 4th and 5th Handle. > This 4th & 5th Handle attempt can fail for any of the calls within the FMP Handle "for loop" > (HandleProtocol/GetImageInfo) and hence the final status is returned > as FAILURE to application layer. > > Below is the code-snippet from DxeCapsuleLib.c , in case of > HandleProtocol & GetImageInfo failure, "for" loop for Handle count is > continued and the previous Status value is over-written with this new > return (return from HandleProtocol & GetImageInfo) and finally returned to application. > [cid:image001.jpg@01D201F8.38564220] > > > Proposed Solution:- > Can ProcessFmpCapsuleImage() have an extra OUT parameter which gives > the list of all successful FMP Handles along with the updated GUID > values, so that any application can make the judgment of Update > SUCCESS/FAILURE based on FMP Handle and proceed accordingly at application layer. > > Regards, > Ankit Singh > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> > https://lists.01.org/mailman/listinfo/edk2-devel ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: DxeCapsuleLib returns Status Issue 2016-09-02 3:24 ` Ankit_Singh3 @ 2016-09-02 3:30 ` Yao, Jiewen 0 siblings, 0 replies; 8+ messages in thread From: Yao, Jiewen @ 2016-09-02 3:30 UTC (permalink / raw) To: Ankit_Singh3@Dell.com, edk2-devel@lists.01.org Cc: Dileesh_Onniyil@Dell.com, Sumanth_Vidyadhara@Dell.com Thanks. We reviewed bug till 107 last time, unfortunately. That is why I did not find it. It will be reviewed next time. Thank you Yao Jiewen From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Ankit_Singh3@Dell.com Sent: Friday, September 2, 2016 11:25 AM To: Yao, Jiewen <jiewen.yao@intel.com>; edk2-devel@lists.01.org Cc: Dileesh_Onniyil@Dell.com; Sumanth_Vidyadhara@Dell.com Subject: Re: [edk2] [EDK2] DxeCapsuleLib returns Status Issue Hi Jiewen, Already logged defect for Capsule Status Variable on bugzillar tracker (EDK II) on 31th August. https://tianocore.acgmultimedia.com/show_bug.cgi?id=108 Regards, Ankit Singh From: Yao, Jiewen [mailto:jiewen.yao@intel.com] Sent: Friday, September 02, 2016 7:21 AM To: Singh3, Ankit <Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com>>; edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Hi Ankit Singh A reminder: We haven't seen you filing a Bugzilla yet. At same time, we reviewed UEFI spec and raised an open to USWG. (For your information only) Thank you Yao Jiewen From: Yao, Jiewen Sent: Wednesday, August 31, 2016 8:55 AM To: Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com%3cmailto:Ankit_Singh3@Dell.com>>; edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org%3cmailto:edk2-devel@lists.01.org>> Cc: Yao, Jiewen <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com<mailto:jiewen.yao@intel.com%3cmailto:jiewen.yao@intel.com>>> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Hi Ankit Singh This seems a missing feature in current EDKII. Thanks to catch that. Would you please file a bugzillar tracker, so that it can recorded? The Bugzilla is introduced @ http://www.tianocore.org/news/2016/07/22/Bugzilla.html The URL for Bugzilla is @ https://tianocore.acgmultimedia.com/ Thank you Yao Jiewen From: Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com%3cmailto:Ankit_Singh3@Dell.com>> [mailto:Ankit_Singh3@Dell.com] Sent: Tuesday, August 30, 2016 12:05 AM To: Yao, Jiewen <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com<mailto:jiewen.yao@intel.com%3cmailto:jiewen.yao@intel.com>>> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Dell - Internal Use - Confidential Hi Jiewen, Thanks for pointing me to Capsule Status Variable (UEFI spec - Section 7.5.6), looks like it exactly what I was expecting. But I looked into latest EDK2 code and could not find it being populated and stored/saved anywhere. Regards, Ankit Singh -----Original Message----- From: Yao, Jiewen [mailto:jiewen.yao@intel.com] Sent: Monday, August 29, 2016 1:29 PM To: Singh3, Ankit ; edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org%3cmailto:edk2-devel@lists.01.org>> Subject: RE: [EDK2] DxeCapsuleLib returns Status Issue Hi That is good problem statement. Do you think we can use Capsule Status Variable to record such information? It is defined in UEFI spec - "7.5.6 UEFI variable reporting on the Success or any Errors encountered in processing of capsules after restart" The application can use this standard way to check status. Thank you Yao Jiewen > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com<mailto:Ankit_Singh3@Dell.com%3cmailto:Ankit_Singh3@Dell.com>> > Sent: Monday, August 29, 2016 3:51 PM > To: edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org%3cmailto:edk2-devel@lists.01.org>> > Subject: [edk2] [EDK2] DxeCapsuleLib returns Status Issue > > Dell - Internal Use - Confidential > Hi EDK2 Developers, > > We are incorporating DxeCapsuleLib for FMP Capsule Update into our > UEFI product, but we are hitting few issues as described below. > > In case of Capsule Update "SetImage" is randomly done for all the FMP > Handles in case Image Type Id GUID and Image Index matches (this is > expected as there might be multiple similar hardware), but looks like > the returns of each FMP update is not handled. > For example if there are 5 FMP handles (can be for different-different > devices) and assume that any particular device handle is at 3rd index, > therefore the update goes through successfully on the 3rd attempt but > since HandleCount value is 5 it tries further with 4th and 5th Handle. > This 4th & 5th Handle attempt can fail for any of the calls within the FMP Handle "for loop" > (HandleProtocol/GetImageInfo) and hence the final status is returned > as FAILURE to application layer. > > Below is the code-snippet from DxeCapsuleLib.c , in case of > HandleProtocol & GetImageInfo failure, "for" loop for Handle count is > continued and the previous Status value is over-written with this new > return (return from HandleProtocol & GetImageInfo) and finally returned to application. > [cid:image001.jpg@01D201F8.38564220] > > > Proposed Solution:- > Can ProcessFmpCapsuleImage() have an extra OUT parameter which gives > the list of all successful FMP Handles along with the updated GUID > values, so that any application can make the judgment of Update > SUCCESS/FAILURE based on FMP Handle and proceed accordingly at application layer. > > Regards, > Ankit Singh > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org%3cmailto:edk2-devel@lists.01.org>> > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> https://lists.01.org/mailman/listinfo/edk2-devel ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <4A89E2EF3DFEDB4C8BFDE51014F606A14B3D62F7@SHSMSX104.ccr.corp.intel.com>]
* Re: DxeCapsuleLib returns Status Issue [not found] ` <4A89E2EF3DFEDB4C8BFDE51014F606A14B3D62F7@SHSMSX104.ccr.corp.intel.com> @ 2016-08-29 15:24 ` Zhang, Chao B 0 siblings, 0 replies; 8+ messages in thread From: Zhang, Chao B @ 2016-08-29 15:24 UTC (permalink / raw) To: Ankit_Singh3@Dell.com; +Cc: edk2-devel@lists.01.org, Gao, Liming Ankit: It is good to record and return the SetImage status(either success or fail) for all the FMP instances matching FMP capsule payload. But how it is returned to application layer is still a platform choice Thanks & Best regards Chao Zhang -----Original Message----- From: Gao, Liming Sent: Monday, August 29, 2016 4:13 PM To: Zhang, Chao B Subject: FW: [EDK2] DxeCapsuleLib returns Status Issue -----Original Message----- From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Ankit_Singh3@Dell.com Sent: Monday, August 29, 2016 3:51 PM To: edk2-devel@lists.01.org Subject: [edk2] [EDK2] DxeCapsuleLib returns Status Issue Dell - Internal Use - Confidential Hi EDK2 Developers, We are incorporating DxeCapsuleLib for FMP Capsule Update into our UEFI product, but we are hitting few issues as described below. In case of Capsule Update "SetImage" is randomly done for all the FMP Handles in case Image Type Id GUID and Image Index matches (this is expected as there might be multiple similar hardware), but looks like the returns of each FMP update is not handled. For example if there are 5 FMP handles (can be for different-different devices) and assume that any particular device handle is at 3rd index, therefore the update goes through successfully on the 3rd attempt but since HandleCount value is 5 it tries further with 4th and 5th Handle. This 4th & 5th Handle attempt can fail for any of the calls within the FMP Handle "for loop" (HandleProtocol/GetImageInfo) and hence the final status is returned as FAILURE to application layer. Below is the code-snippet from DxeCapsuleLib.c , in case of HandleProtocol & GetImageInfo failure, "for" loop for Handle count is continued and the previous Status value is over-written with this new return (return from HandleProtocol & GetImageInfo) and finally returned to application. [cid:image001.jpg@01D201F8.38564220] Proposed Solution:- Can ProcessFmpCapsuleImage() have an extra OUT parameter which gives the list of all successful FMP Handles along with the updated GUID values, so that any application can make the judgment of Update SUCCESS/FAILURE based on FMP Handle and proceed accordingly at application layer. Regards, Ankit Singh _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2016-09-02 3:30 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-08-24 10:22 DxeCapsuleLib returns Status Issue Ankit_Singh3 -- strict thread matches above, loose matches on Subject: below -- 2016-08-29 7:51 Ankit_Singh3 2016-08-29 7:58 ` Yao, Jiewen [not found] ` <F99FFC4B77F8B14CBD8ED39478A5FA211D4BA333AE@BLRX7MCDC203.AMER.DELL.COM> 2016-08-31 0:54 ` Yao, Jiewen 2016-09-02 1:51 ` Yao, Jiewen 2016-09-02 3:24 ` Ankit_Singh3 2016-09-02 3:30 ` Yao, Jiewen [not found] ` <4A89E2EF3DFEDB4C8BFDE51014F606A14B3D62F7@SHSMSX104.ccr.corp.intel.com> 2016-08-29 15:24 ` Zhang, Chao B
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox