public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Zhang, Chao B" <chao.b.zhang@intel.com>
To: "Ankit_Singh3@Dell.com" <Ankit_Singh3@Dell.com>
Cc: "edk2-devel@lists.01.org" <edk2-devel@lists.01.org>,
	"Gao, Liming" <liming.gao@intel.com>
Subject: Re: DxeCapsuleLib returns Status Issue
Date: Mon, 29 Aug 2016 15:24:43 +0000	[thread overview]
Message-ID: <FF72C7E4248F3C4E9BDF19D4918E90F247224045@shsmsx102.ccr.corp.intel.com> (raw)
In-Reply-To: <4A89E2EF3DFEDB4C8BFDE51014F606A14B3D62F7@SHSMSX104.ccr.corp.intel.com>

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


  parent reply	other threads:[~2016-08-29 15:24 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-29  7:51 DxeCapsuleLib returns Status Issue 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 message]
  -- strict thread matches above, loose matches on Subject: below --
2016-08-24 10:22 Ankit_Singh3

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=FF72C7E4248F3C4E9BDF19D4918E90F247224045@shsmsx102.ccr.corp.intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox