On 2/27/24 05:49, Sivaraman Nainar wrote:
> Hi Laszlo,
> 
> We can see the issue not only with SLES, it can be seen with Ubuntu 22 also.
> 
> Do we have any channel to work with grub team to fix this issue?

No particular channel. Oliver has been participating in upstream grub2
development (CC'd), so I figure bug analysis and bugfix posting should
occur on their normal development mailing list.

Laszlo


> -----Original Message-----
> From: Sivaraman Nainar
> Sent: Monday, February 26, 2024 4:01 PM
> To: devel@edk2.groups.io; Sivaraman Nainar <sivaram...@ami.com>; Laszlo Ersek 
> <ler...@redhat.com>; Santhosh Kumar V <santhoshkum...@ami.com>; Saloni 
> Kasbekar <saloni.kasbe...@intel.com>; Zachary Clark-williams 
> <zachary.clark-willi...@intel.com>
> Cc: Raj V Akilan <ra...@ami.com>; Soundharia R <soundhar...@ami.com>
> Subject: RE: [EXTERNAL] Re: [edk2-devel] [PATCH] NetworkPkg:Resolved 
> Consecutive Pxe-Http Boot Issue
> 
> @Saloni Kasbekar, @Zachary Clark-williams,
> 
> Could you please add your feedback on the changes proposed?
> 
> Thanks
> Siva
> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Sivaraman 
> Nainar via groups.io
> Sent: Thursday, February 22, 2024 7:33 AM
> To: Laszlo Ersek <ler...@redhat.com>; devel@edk2.groups.io; Santhosh Kumar V 
> <santhoshkum...@ami.com>; Saloni Kasbekar <saloni.kasbe...@intel.com>; 
> Zachary Clark-williams <zachary.clark-willi...@intel.com>
> Cc: Raj V Akilan <ra...@ami.com>; Soundharia R <soundhar...@ami.com>
> Subject: [EXTERNAL] Re: [edk2-devel] [PATCH] NetworkPkg:Resolved Consecutive 
> Pxe-Http Boot Issue
> 
> 
> **CAUTION: The e-mail below is from an external source. Please exercise 
> caution before opening attachments, clicking links, or following guidance.**
> 
> Laszlo:
> 
> Thanks for the detailed feedback on the changes for this issue. Since we are 
> not sure if this change are valid / violate some purpose of SNP driver, it 
> mentioned as Workaround.
> 
> @Saloni Kasbekar and @Clark-williams, Zachary can add more on these changes.
> 
> As you recommended, we can have PCD which controls these changes till the 
> changes are addressed in grub.
> 
> @Santhosh Kumar V is this issue can be seen only in SLES 15 or it can be 
> found in any OS having Grub 2.x?
> 
> Thanks
> Siva
> -----Original Message-----
> From: Laszlo Ersek <ler...@redhat.com>
> Sent: Thursday, February 22, 2024 5:15 AM
> To: devel@edk2.groups.io; Santhosh Kumar V <santhoshkum...@ami.com>
> Cc: Sivaraman Nainar <sivaram...@ami.com>; Raj V Akilan <ra...@ami.com>; 
> Soundharia R <soundhar...@ami.com>; Saloni Kasbekar 
> <saloni.kasbe...@intel.com>; Zachary Clark-williams 
> <zachary.clark-willi...@intel.com>
> Subject: [EXTERNAL] Re: [edk2-devel] [PATCH] NetworkPkg:Resolved Consecutive 
> Pxe-Http Boot Issue
> 
> 
> **CAUTION: The e-mail below is from an external source. Please exercise 
> caution before opening attachments, clicking links, or following guidance.**
> 
> On 2/21/24 18:15, Santhosh Kumar V via groups.io wrote:
>> The customer has a server environment where PXE and HTTP service run in same 
>> Linux Server. In this environment a SUT trying to boot to SLES 15 OS via PXE 
>> from the Boot Menu. After PXE Boot file downloaded and grub Loaded without 
>> continuing for installation Exit is pressed and control back to Setup.
>> Now the HTTP boot to SLES 15 OS tried in the same environment and failed to 
>> download the file. If there is a reconnect -r performed before this HTTP 
>> Boot then boot file download and installation is getting success.
>> Root cause of the issue is, when Exit from grub performed, boot Loader Stops 
>> the SNP Driver and starts the same.
> 
> This sentence feels like the key one.
> 
> Are you saying that grub calls Snp->Start() just before it exits?
> 
> If so, am I right to suspect that that's a grub bug? It sounds like a 
> resource leak, after all.
> 
> Can you perhaps include a grub source code location / pointer in the commit 
> message?
> 
>> During this process SNP is in Initialized State. When HTTP boot is performed 
>> immediately after PXE Failure, the MNP configure method initiates the SNP 
>> Start again. Since the SNP already started by grub it returns 
>> EFI_ALREADY_STARTED and none of the upper Layer drivers are getting started.
>> As a work around in MNPConfigure(), if the SNP Start failed with Already 
>> Started and in Initialized state we can return success so that rest of the 
>> drivers can be loaded and HTTP boot can work.
>>
>>
>> Cc: Saloni Kasbekar <saloni.kasbe...@intel.com>
>> Cc: Zachary Clark-williams <zachary.clark-willi...@intel.com>
>>
>> Signed-off-by: SanthoshKumar <santhoshkum...@ami.com>
>> ---
>>  NetworkPkg/MnpDxe/MnpConfig.c | 4 +++-
>>  1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/NetworkPkg/MnpDxe/MnpConfig.c
>> b/NetworkPkg/MnpDxe/MnpConfig.c index 93587d53aa..0f2df28d73 100644
>> --- a/NetworkPkg/MnpDxe/MnpConfig.c
>> +++ b/NetworkPkg/MnpDxe/MnpConfig.c
>> @@ -1120,7 +1120,9 @@ MnpStartSnp (
>>    // Start the simple network.
>>
>>    //
>>
>>    Status = Snp->Start (Snp);
>>
>> -
>>
>> +  if ((Status == EFI_ALREADY_STARTED ) && (Snp->Mode->State ==
>> + EfiSimpleNetworkInitialized)) {
>>
>> +      return EFI_SUCCESS;
>>
>> +  }
>>
>>    if (!EFI_ERROR (Status)) {
>>
>>      //
>>
>>      // Initialize the simple network.
>>
> 
> The commit message does say this is a workaround, and I don't immediately any 
> see why this workaround (in the code) would be problematic in practice, but 
> it still leaves a bad taste in my mouth.
> 
> Consider: the call path is the following:
> 
> MnpConfigure()           [NetworkPkg/MnpDxe/MnpConfig.c] -- public 
> .Configure() protocol member function
>   MnpConfigureInstance() [NetworkPkg/MnpDxe/MnpConfig.c]
>     MnpStart()           [NetworkPkg/MnpDxe/MnpConfig.c]
>       // see notes!
>       MnpStartSnp()      [NetworkPkg/MnpDxe/MnpConfig.c]
> 
> Notes: the MnpStartSnp() call in MnpStart() is conditional on two 
> circumstances (at the same time):
> - "If it's not a configuration update, increase the configured children 
> number."
> - "It's the first configured child, start the simple network."
> 
> In other words, the MNP driver has just bound SNP "BY_DRIVER" (i.e., 
> exclusively), installed the MNP service binding protocol for each vlan 
> (IIUC), and one of those SB instances is now being used to create the first 
> MNP instance. I think that under these circumstances, it is reasonable for 
> the MNP driver to expect that the underlying SNP be in stopped state. :/
> 
> How long would NetworkPkg have to carry this workaround? (I.e., how long 
> before the grub issue is fixed, and the buggy version deprecated?)
> 
> I'd prefer at least a comment in the code that the return path is a 
> workaround for (I feel) an earlier SNP usage violation.
> 
> A FeaturePCD to disable the workaround could be reasonable too (but the 
> NetworkPkg maintainers could disagree about that).
> 
> 
> BTW, the commit message should be wrapped at 75 characters. These long lines 
> (in the body) will pass PatchCheck, but generate warnings. Those warnings are 
> tolerable for log quotes, URLs, etc, but for normal English text, wrapping is 
> much preferred.
> 
> 
> Another comment on the commit message: the subject line should state 
> something like
> 
>   NetworkPkg/MnpDxe: work aroung SNP state leak in grub
> 
> Laszlo
> 
> -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.
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#116033): https://edk2.groups.io/g/devel/message/116033
Mute This Topic: https://groups.io/mt/104498511/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to