Re: EDK2 RedfishPkg problems with using it by third party modules


Wang, Nickle (Server BIOS) <nickle.wang@...>
 

Add Abner from AMD.com

Thanks,
Nickle

From: Igor Kulchytskyy <igork@...>
Sent: Friday, July 29, 2022 3:16 AM
To: Chang, Abner (HPS SW/FW Technologist) <abner.chang@...>; discuss@edk2.groups.io
Cc: Felix Polyudov <Felixp@...>; Wang, Nickle (Server BIOS) <nickle.wang@...>
Subject: RE: [EXTERNAL] Re: Re: EDK2 RedfishPkg problems with using it by third party modules

Hi Abner,
As I can see in the Redfish group activities you are back with that work on supporting RedfishPkg.
It is nice to have you back.
I have the solutions for issues #1, 4, 6, 7.
And I'm planning to send the patches to you for the review.

Issues #2 and #3 could be solved by the external Redfish modules themselves.

Could we please discuss the issue #5?

Issue #5. Multiple Network Interfaces
Ans: Please allow me to figure out the implementation of code. It has been a while.
Let me remind what this issue about.
Problem Statement:
System may have more than one network interface. For example, the system may use Lan over USB to connect to BMC and a regular network card to connect to the out of band services. Such configurations are not supported by the current implementation
Details:
According to EDK2 Redfish architecture all external modules in order to use Redfish functionality should implement EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL protocol with two functions Init and Stop.
But there is a problem with calling those functions by RedfishPkg modules. RedfishDiscoverDxe module installs EfiRedfishDiscoverProtocol for Lan over USB interface and after that callback function in RedfishConfigHandlerDriver called which leads to the call of Init function. But if system also has regular NIC, then ReinstallProtocol called. And because of that Stop function called for Lan over USB, but after that no Init function called since DiscoverProtocol cannot match MAC address of regular network interface with the MAC address of virtual network interface.
And because of that the whole connection to BMC stopped.

Have you had a chance to look at it?
Do you need more details from us? BIOS log file?
Thank you,
Igor


From: Chang, Abner (HPS SW/FW Technologist) <abner.chang@...<mailto:abner.chang@...>>
Sent: Monday, June 27, 2022 8:59 PM
To: Igor Kulchytskyy <igork@...<mailto:igork@...>>; discuss@edk2.groups.io<mailto:discuss@edk2.groups.io>
Cc: Felix Polyudov <Felixp@...<mailto:Felixp@...>>; Wang, Nickle (Server BIOS) <nickle.wang@...<mailto:nickle.wang@...>>
Subject: [EXTERNAL] Re: Re: EDK2 RedfishPkg problems with using it by third party modules


**CAUTION: The e-mail below is from an external source. Please exercise caution before opening attachments, clicking links, or following guidance.**
Sure. We can discuss these issues through email for now. Apologize messed up the original submitter of this message. Thanks for creating that slide.

Abner

Get Outlook for Android<https://nam12.safelinks.protection.outlook.com/?url=https://aka.ms/AAb9ysg&data=05|01|igork@ami.com|ddfe99870b044e29beda08da58a169d3|27e97857e15f486cb58e86c2b3040f93|1|0|637919747557414854|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0=|3000|||&sdata=EN9yDk6foTtUTquPSfsoWmvl/jBEGBaXaAQOdbYTzV4=&reserved=0>
________________________________
From: Igor Kulchytskyy <igork@...<mailto:igork@...>>
Sent: Tuesday, June 28, 2022 1:47:05 AM
To: Chang, Abner (HPS SW/FW Technologist) <abner.chang@...<mailto:abner.chang@...>>; discuss@edk2.groups.io<mailto:discuss@edk2.groups.io> <discuss@edk2.groups.io<mailto:discuss@edk2.groups.io>>
Cc: Felix Polyudov <Felixp@...<mailto:Felixp@...>>; Wang, Nickle (Server BIOS) <nickle.wang@...<mailto:nickle.wang@...>>
Subject: RE: [EXTERNAL] Re: EDK2 RedfishPkg problems with using it by third party modules


Hi Abner,

Thank you for the answers. I need a time to analyze them.

Let me check that RedfishClientPkg and come back to you.

I think it is a good way of discussion we have right now though email thread.

Best regards,

Igor





From: Chang, Abner (HPS SW/FW Technologist) <abner.chang@...<mailto:abner.chang@...>>
Sent: Sunday, June 26, 2022 1:29 PM
To: discuss@edk2.groups.io<mailto:discuss@edk2.groups.io>; Igor Kulchytskyy <igork@...<mailto:igork@...>>
Cc: Felix Polyudov <Felixp@...<mailto:Felixp@...>>; Wang, Nickle (Server BIOS) <nickle.wang@...<mailto:nickle.wang@...>>
Subject: [EXTERNAL] Re: EDK2 RedfishPkg problems with using it by third party modules





**CAUTION: The e-mail below is from an external source. Please exercise caution before opening attachments, clicking links, or following guidance.**

Loop in Nickle Wang to the thread. Who is the owner of RedfishClientPkg.

Abner



Get Outlook for Android<https://nam12.safelinks.protection.outlook.com/?url=https://aka.ms/AAb9ysg&data=05|01|igork@ami.com|ddfe99870b044e29beda08da58a169d3|27e97857e15f486cb58e86c2b3040f93|1|0|637919747557414854|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0=|3000|||&sdata=EN9yDk6foTtUTquPSfsoWmvl/jBEGBaXaAQOdbYTzV4=&reserved=0>

________________________________

From: Chang, Abner (HPS SW/FW Technologist)
Sent: Monday, June 27, 2022 1:03:15 AM
To: discuss@edk2.groups.io<mailto:discuss@edk2.groups.io> <discuss@edk2.groups.io<mailto:discuss@edk2.groups.io>>; igork@...<mailto:igork@...> <igork@...<mailto:igork@...>>
Cc: Felix Polyudov <Felixp@...<mailto:Felixp@...>>
Subject: RE: EDK2 RedfishPkg problems with using it by third party modules



Issue #1. Lan over USB support
Ans: Yes, we can support that in RedfishDiscoverDxe.

Issue #2. Host Interface MAC Address
Ans: Ok, I understand the concern. However, RedfishHostInterfaceDxe is a DXE driver which doesn't require any hardware initialization. Having it to publish SMBIOS record when the BDS driver connection seems to me not quite make sense.
We can design a mechanism to have RedfishHostInterfaceDxe listen to the SNP protocol. Introduce the Redfish Host Interface update notification to let RedfsihDiscovryDxe updates the Redfish Host interface record.

Issue #3. Service UUID of the Host Interface
Ans: Not quite understand the issue. Service UUID is defined in the SMBIOS type42 Redfish over IP protocol. Platform firmware is responsible to provide the SMBIOS type 42 record and the service UUID should be known to the platform firmware. It says service UUID can be hardcoded and returned in SMBIOS type 42. Or I misunderstanding the description of this issue.

Issue #4. RedfishPkg as SDK
Ans: In the entire Redfish edk2 solution, we want to reduce the implementation effort. RedfishClinetPkg is introduce to incorporate with RedfishPkg to manipulate the Redfish properties. We think developers has not need to touch those low level functions.
Please refer to below link for the RedfishclientPackage.
https://github.com/tianocore/edk2-staging/tree/edk2-redfish-client/RedfishClientPkg<https://nam12.safelinks.protection.outlook.com/?url=https://github.com/tianocore/edk2-staging/tree/edk2-redfish-client/RedfishClientPkg&data=05|01|igork@ami.com|ddfe99870b044e29beda08da58a169d3|27e97857e15f486cb58e86c2b3040f93|1|0|637919747557414854|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0=|3000|||&sdata=+VH/ZgjmvkurWmogU97tZ+gvznHG5eHYgZZ/LWmAYsg=&reserved=0>
Of course, we can make The RedfishLib public if there is a demand for platform firmware to implement the proprietary feature.

Issue #5. Multiple Network Interfaces
Ans: Please allow me to figure out the implementation of code. It has been a while.

Issue #6. POST request with ContentType other than "application/json"
Ans: The open source edk2 Redfish solution is simply follow the Redfish service standard, the content type of the Redfish properties is JSON. Other type of contents must be supported by BMC and which is not in the scope of standard Redfish support on edk2.
We ever thought about other content type to support other payload format such as PLDM or XML format that is adopted by OpenBMC. However, those solutions are depends on the BMC implementation. BMC Redfish service can accept the HTTP/JSON request from out of band. Use JSON content type on edk2 firmware doesn't introduce the burden to BMC. We will have to abstract the payload generation to flexibly support different content types. However, does it worth?

Issue #7. DELETE request with the body
Ans: Hmm. This makes sense to me. For example if a component is remove from platform, the Redfish collection member or some resource has to be deleted. PATCH can update the collection member but we may still need to delete the properties if it is no longer needed.
RedfishLib is leverage from the LibRedfish as indicated in the below link,
https://github.com/DMTF/libredfish<https://nam12.safelinks.protection.outlook.com/?url=https://github.com/DMTF/libredfish&data=05|01|igork@ami.com|ddfe99870b044e29beda08da58a169d3|27e97857e15f486cb58e86c2b3040f93|1|0|637919747557414854|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0=|3000|||&sdata=bxsxmUHftCIciRBuzYR6wLh6eprdmP8KQpVFqou6yyk=&reserved=0>.
We can improve the functionalities in RedfishLib because libredfish is not maintained by DMTF/Redfish anymore if my memory serves me right.

Thanks again for these inputs. We can have the further discussions either through email or the TianoCore design meeting. Your team is welcome to contribute to edk2 Redfish solution as well.
Abner









-----Original Message-----
From: Chang, Abner (HPS SW/FW Technologist)
Sent: Saturday, June 25, 2022 11:07 PM
To: discuss@edk2.groups.io<mailto:discuss@edk2.groups.io>; igork@...<mailto:igork@...>
Cc: Felix Polyudov <Felixp@...<mailto:Felixp@...>>
Subject: RE: EDK2 RedfishPkg problems with using it by third party modules

Hi Felix,
Appreciate for bringing these RedfishPkg implementation/architecture issues
comprehensively. Unfortunately it was too late for me to arrange a meeting
with you on 6/24 because I saw this email on my 6/24 noon. Is the meeting you
referred the TianoCore design meeting?
I will reply to you through email before we setting up a meeting for this.

Thanks
Abner

-----Original Message-----
From: discuss@edk2.groups.io<mailto:discuss@edk2.groups.io> <discuss@edk2.groups.io<mailto:discuss@edk2.groups.io>> On Behalf Of Igor
Kulchytskyy via groups.io
Sent: Thursday, June 23, 2022 6:16 AM
To: discuss@edk2.groups.io<mailto:discuss@edk2.groups.io>
Cc: Felix Polyudov <Felixp@...<mailto:Felixp@...>>
Subject: [edk2-discuss] EDK2 RedfishPkg problems with using it by third party
modules

Hello.
I would like to discuss the issues I faced when I tried to use EDK2 RedfishPkg
modules along with AMI's Redfish modules in our project.
I uploaded the ppt document with the description of the problems:
INVALID URI REMOVED<INVALID%20URI%20REMOVED>
2/EDK2RedfishPkgProblems.pptx__;!!NpxR!mHXgLbc5z9FuGt7kERA8GMecs8L4b
jCYce_Ejcu6cuL3ySPqlioduEgwIv-m7G9HMw3EOMrmOm7hRIZuRN-G1PuT$
Could we have a meeting scheduled on 06/24/2022?
Our presentation should take about 30 min (20 min presentation itself and 10
min discussion).
Thank you,
Igor


-The information contained in this message may be confidential and
proprietary
to American Megatrends (AMI). This communication is intended to be read
only
by the individual or entity to whom it is addressed or by their designee. If the
reader of this message is not the intended recipient, you are on notice that any
distribution of this message, in any form, is strictly prohibited. Please promptly
notify the sender by reply e-mail or by telephone at 770-246-8600, and then
delete or destroy all copies of the transmission.



-The information contained in this message may be confidential and proprietary to American Megatrends (AMI). This communication is intended to be read only by the individual or entity to whom it is addressed or by their designee. If the reader of this message is not the intended recipient, you are on notice that any distribution of this message, in any form, is strictly prohibited. Please promptly notify the sender by reply e-mail or by telephone at 770-246-8600, and then delete or destroy all copies of the transmission.
-The information contained in this message may be confidential and proprietary to American Megatrends (AMI). This communication is intended to be read only by the individual or entity to whom it is addressed or by their designee. If the reader of this message is not the intended recipient, you are on notice that any distribution of this message, in any form, is strictly prohibited. Please promptly notify the sender by reply e-mail or by telephone at 770-246-8600, and then delete or destroy all copies of the transmission.

Join {discuss@edk2.groups.io to automatically receive all group messages.